Displaying 3 results from an estimated 3 matches for "reg16508".
Did you mean:
reg16506
2011 May 20
1
[LLVMdev] subregisters, def-kill
...s it is believed it is not a local live-range.
SimpleRegisterCoalescing:
This ends up as overlapping live-ranges, where the value numbers did not become one, and Interference is reported.
This must then be considered bad code in LLVM.
But if I write
%reg16507<def> = COPY %reg16445;
%reg16508<def> = COPY %reg16468;
%reg16506<def> = REG_SEQUENCE %reg16507, hi16, %reg16508, lo16;
%reg16509<def> = st_2_1_postMod %reg16506, %reg16441, %reg16454, pred:20, pred:%CCReg;
then, there is not an erroneous live-range that interferes, so it coalesces.
I suppose this means t...
2011 May 19
0
[LLVMdev] subregisters, def-kill
On May 19, 2011, at 7:47 AM, Jonas Paulsson wrote:
> Hi,
>
> I am combining 16-bit registers to a 32 bit register in order to make a wide store, as per below:
>
> 732 %reg16506:hi16<def,dead> = COPY %reg16445<kill>;
> 740 %reg16506:lo16<def> = COPY %reg16468<kill>;
> 748 %r3<def,dead> = store %reg16506<kill>, %r3,
>
> As you can
2011 May 19
3
[LLVMdev] subregisters, def-kill
Hi,
I am combining 16-bit registers to a 32 bit register in order to make a wide store, as per below:
732 %reg16506:hi16<def,dead> = COPY %reg16445<kill>;
740 %reg16506:lo16<def> = COPY %reg16468<kill>;
748 %r3<def,dead> = store %reg16506<kill>, %r3,
As you can see, LiveVariables has marked the high part dead, even though the super-register is used at