search for: mo_hi

Displaying 3 results from an estimated 3 matches for "mo_hi".

Did you mean: joshi
2019 Jul 11
2
Manipulating global address inside GlobalAddress SDNode in (RISCV) LLVM backend
...ill add custom load/store which will generate the address using values from two registers. We thought LUI and ADDI pair will be good to store the values in a i32 register. If we could transform GlobalAddress<0xHighLow> directly to GlobalAddress<0xLow>, we could use the present RISCVII::MO_HI and MO_LO as they only exact the 32 high bits. What do you think? Many thanks for your reply :) On Tue, Jul 9, 2019 at 9:41 PM Tim Northover <t.p.northover at gmail.com> wrote: > On Tue, 9 Jul 2019 at 14:49, Reshabh Sharma via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >...
2019 Jul 11
2
Manipulating global address inside GlobalAddress SDNode in (RISCV) LLVM backend
...DI pair will be good to store the values in a i32 > register. > > With you so far, I think. To be explicit, to materialize a full 64-bit > pointer you'd need 4 instructions: > > lui rLO32, addr:MO_LO32_LO > addi rLO32, rLO32, addr:MO_LO32_HI > lui rHI32, addr:MO_HI32_LO > addi rHI32, rLO32, addr:MO_LO32_HI > > or some variation for PIC etc. > > > If we could transform GlobalAddress<0xHighLow> directly to > GlobalAddress<0xLow>, we could use the present RISCVII::MO_HI and MO_LO as > they only exact the 32 high bits. Wha...
2019 Jul 09
2
Manipulating global address inside GlobalAddress SDNode in (RISCV) LLVM backend
Hello, Brief background: We are trying to support 64 bit pointers in RISCV 32 bit backend http://lists.llvm.org/pipermail/llvm-dev/2019-June/132805.html To pass the legalizer we plan to break the 64 bit GlobalAddress into 32 bit GlobalAddress having the other 32 bit glued to the node. We could not find a direct way to convert the 64 bit GlobalAddress Node into a 32 bit node. For a GlobalAddress