search for: constantisland

Displaying 9 results from an estimated 9 matches for "constantisland".

Did you mean: constantislands
2013 Feb 21
0
[LLVMdev] constants in text section for mips 16
...get a label for where it has been stored. I think putting them in the text section is reasonably simple, though doesn't have a generic "pleasePutConstantsAfterFunctions()" call in LLVM. A good place to start would be the reverse of my recent patch to AArch64 which removed the entire ConstantIslands thing. It looks like the key points are creating a "CONSTPOOL_ENTRY" "instruction" which is emitted in the AsmPrinter. A relatively simple pass should be able to convert constpool entries as LLVM sees them into such instructions (see "doInitialPlacement"). Most of th...
2015 Jun 30
2
[LLVMdev] Hwo to guess PC-relative offset
> DeĀ : Joerg Sonnenberger [mailto:joerg at britannica.bec.de] > > Well, MCFixup is what a relocation is represented as internally. They get > resolved to a fixed value and replaced, if evaluateAsAbsolute is true. > Hi Joerg, Actually it fails to get resolved to a fixed value. When I compile to .o then objdump it I can see that a symbol holding the constant value was created in
2013 Feb 21
2
[LLVMdev] constants in text section for mips 16
I am working towards a more complete solution for large constants in mips 16 (ala Arm constant islands and such). That is part of why I'm busy expanding all macros being emitted in the mips 16 compiler (almost done). I'm wondering if there is a poor mans approach for large constants that can be done very simply that I can add just for now. Gcc mips 16 places them after the function
2015 Jul 13
2
[LLVMdev] ARM Jump table pcrelative relaxation in clang / llc
...to introduce space between > the > > beginning of the code and the jump table. > > It does look like the value in @llvm.arm.space is interpreted > incorrectly if it's bigger than INT_MAX, but that's well outside its > intended range and could inevitably be used to break ConstantIslands > (the longest ARM immediate branch is 26-bits; no indivisible entity in > .text can be bigger than that). It's probably an unrelated issue. > > Also, I know I said the backend should accept any size code, but 2GB > is definitely going to trigger more edge cases than average. &g...
2015 Jul 07
2
[LLVMdev] ARM Jump table pcrelative relaxation in clang / llc
...clang 3.7 and it fails with the >> same >> > error. >> > Where should I look at in the ARM backend to understand what happens? >> > Where the jump table instruction is generated and supposed to be >> relaxed? >> >> Have a look at lib/Target/ARM/ARMConstantIslandPass.cpp, especially >> where Tim's patch touches: >> >> http://llvm.org/viewvc/llvm-project?view=revision&revision=238680 >> >> Instruction relaxation rules should be in the TableGen files, I think, >> but that means it could be in a number of places. &gt...
2014 Nov 17
2
[LLVMdev] LLVM Weekly - #46, Nov 17th 2014
...1737). * `vec_vsx_ld` and `vec_vsx_st` intrinsics have been added for PowerPC. [r221767](http://reviews.llvm.org/rL221767). * PowerPC gained support for small-model PIC. [r221791](http://reviews.llvm.org/rL221791). * The llvm.arm.space intrinsic was added to make it easier to write tests for ARM ConstantIslands. [r221903](http://reviews.llvm.org/rL221903). ## Clang commits * The constant trickle of OpenMP patches continues. Codegen for threadprivate variables has been added. [r221663](http://reviews.llvm.org/rL221663). * Support for `__has_cpp_attribute` is now present. [r221991](http://reviews.llvm....
2013 Dec 04
0
[LLVMdev] Recent Commits by Tim Northover
Hi Gary, On 3 December 2013 22:01, Gary Fuehrer <gfuehrer at defiant-tech.com> wrote: > The subject of two of his commits dealt with substituting MOVW/MOVT pairs > for an LDR and a lit-pool. Isn't this what MachineConstantPool and > ARMConstantIslandPass was all about? Both are essential components to using lit-pools: the MachineConstantPool is just LLVM's underlying machinery and ARMConstantIslands is for fixing up out of range loads and so on so they can actually be used. My recent changes have been to fix Darwin CodeGen so that they...
2013 Feb 25
1
[LLVMdev] constants in text section for mips 16
...stored. > > I think putting them in the text section is reasonably simple, though > doesn't have a generic "pleasePutConstantsAfterFunctions()" call in > LLVM. > > A good place to start would be the reverse of my recent patch to > AArch64 which removed the entire ConstantIslands thing. It looks like > the key points are creating a "CONSTPOOL_ENTRY" "instruction" which is > emitted in the AsmPrinter. A relatively simple pass should be able to > convert constpool entries as LLVM sees them into such instructions > (see "doInitialPlacement...
2013 Dec 03
6
[LLVMdev] Recent Commits by Tim Northover
...orrectness or architectural elegance or formatting comment white-space, I mean). Is he alone or are there others working toward such improvements? The subject of two of his commits dealt with substituting MOVW/MOVT pairs for an LDR and a lit-pool. Isn't this what MachineConstantPool and ARMConstantIslandPass was all about? I vaguely recall a while back that it was disabled by some Darwin snob who thought no useful target benefited from it. What about enabling it again? Perhaps you've noticed in the last two months that someone's been porting it to the MIPS target, suggesting to me that...