|
@@ -1157,7 +1157,7 @@ implementation
|
|
|
|
|
|
procedure tcg.a_load_subsetref_regs_index(list: TAsmList; subsetsize: tcgsize; loadbitsize: byte; const sref: tsubsetreference; valuereg, extra_value_reg: tregister);
|
|
procedure tcg.a_load_subsetref_regs_index(list: TAsmList; subsetsize: tcgsize; loadbitsize: byte; const sref: tsubsetreference; valuereg, extra_value_reg: tregister);
|
|
var
|
|
var
|
|
- tmpreg, maskreg: tregister;
|
|
|
|
|
|
+ tmpreg: tregister;
|
|
begin
|
|
begin
|
|
tmpreg := getintregister(list,OS_INT);
|
|
tmpreg := getintregister(list,OS_INT);
|
|
if (target_info.endian = endian_big) then
|
|
if (target_info.endian = endian_big) then
|
|
@@ -1218,10 +1218,10 @@ implementation
|
|
procedure tcg.a_load_subsetref_reg(list : TAsmList; subsetsize, tosize: tcgsize; const sref: tsubsetreference; destreg: tregister);
|
|
procedure tcg.a_load_subsetref_reg(list : TAsmList; subsetsize, tosize: tcgsize; const sref: tsubsetreference; destreg: tregister);
|
|
var
|
|
var
|
|
tmpref: treference;
|
|
tmpref: treference;
|
|
- valuereg,tmpreg,maskreg,extra_value_reg: tregister;
|
|
|
|
|
|
+ valuereg,extra_value_reg: tregister;
|
|
tosreg: tsubsetregister;
|
|
tosreg: tsubsetregister;
|
|
loadsize: tcgsize;
|
|
loadsize: tcgsize;
|
|
- loadbitsize, restbits: byte;
|
|
|
|
|
|
+ loadbitsize: byte;
|
|
extra_load: boolean;
|
|
extra_load: boolean;
|
|
begin
|
|
begin
|
|
|
|
|
|
@@ -1255,7 +1255,6 @@ implementation
|
|
internalerror(2006081510);
|
|
internalerror(2006081510);
|
|
if (target_info.endian = endian_big) then
|
|
if (target_info.endian = endian_big) then
|
|
begin
|
|
begin
|
|
- tmpreg := cg.getintregister(list,OS_INT);
|
|
|
|
a_op_reg_reg(list,OP_SHL,OS_INT,sref.bitindexreg,valuereg);
|
|
a_op_reg_reg(list,OP_SHL,OS_INT,sref.bitindexreg,valuereg);
|
|
a_op_const_reg(list,OP_SHR,OS_INT,loadbitsize-sref.bitlen,valuereg);
|
|
a_op_const_reg(list,OP_SHR,OS_INT,loadbitsize-sref.bitlen,valuereg);
|
|
end
|
|
end
|
|
@@ -1310,7 +1309,6 @@ implementation
|
|
tosreg, fromsreg: tsubsetregister;
|
|
tosreg, fromsreg: tsubsetregister;
|
|
tmpref: treference;
|
|
tmpref: treference;
|
|
loadsize: tcgsize;
|
|
loadsize: tcgsize;
|
|
- bitmask: aint;
|
|
|
|
loadbitsize: byte;
|
|
loadbitsize: byte;
|
|
extra_load: boolean;
|
|
extra_load: boolean;
|
|
begin
|
|
begin
|