Displaying 3 results from an estimated 3 matches for "const32".
Did you mean:
const2
2013 Apr 12
1
[LLVMdev] Problem with Store of i8 in a global address
...backend.
My architecture has a store instruction with direct address mode. It
accepts two arguments: source register and address (immediate). This
instruction is not available in Mips, but it is in Hexagon, so I copied
from Hexagon the following, adapting it to my registers:
- In ISelLowering.h: CONST32 and CONST32_GP
- In ISelLowering.cpp: LowerGlobalAddress
- In TargetObjectFile.cpp: isGlobalInSmallSection
- In InstrInfo.td:
def SDTmyCONST32 : SDTypeProfile<1, 1, [
SDTCisVT<0, i32>,
SDTCisVT<1, i...
2016 Nov 08
2
[MC] Target-Independent Small Data Section Handling
Oh, one thing I forgot to mention:
ReadOnly objects are also counted as small data globals on PPC (on top of BSS, Data, Common). That's what the r2 base is for (.sdata2, defined to be constant data). 32-bit immediate loads take 2 ops minimum on PPC, so even constant loading benefits from small data.
It'd be handy to add a third argument containing what kind would normally be returned:
2012 Apr 19
0
[LLVMdev] Target Dependent Hexagon Packetizer patch
...>>
>> let hasSideEffects = 1 in
>> -def BARRIER : STInst<(outs), (ins),
>> +def BARRIER : STInst2<(outs), (ins),
>> "barrier",
>> [(HexagonBARRIER)]>;
>>
>> @@ -2324,35 +2324,35 @@ def CONST32 : LDInst<(outs IntRegs:$dst), (ins globaladdress:$global),
>> (load (HexagonCONST32 tglobaltlsaddr:$global)))]>;
>>
>> let isReMaterializable = 1, isMoveImm = 1 in
>> -def CONST32_set : LDInst<(outs IntRegs:$dst), (ins globaladdress:$global),
>&...