Displaying 7 results from an estimated 7 matches for "globalpointer".
2016 Oct 24
3
RFC: Absolute or "fixed address" symbols as immediate operands
...epresentation: here is an alternative
> representation based on a suggestion from Eli.
>
> Introduce a new type of GlobalValue called GlobalConstant.
> GlobalConstant would fit into the GlobalValue hierarchy like this:
>
> * GlobalValue
> o GlobalConstant
> o GlobalPointer
> + GlobalIndirectSymbol
> # GlobalAlias
> # GlobalIFunc
> + GlobalObject
> # Function
> # GlobalVariable
>
> GlobalValue would no longer be assumed to be of pointer type. The
> getType() overloa...
2016 Oct 25
4
RFC: Absolute or "fixed address" symbols as immediate operands
...>
> Going back to IR-level representation: here is an alternative representation based on a suggestion from Eli.
>
> Introduce a new type of GlobalValue called GlobalConstant. GlobalConstant would fit into the GlobalValue hierarchy like this:
> GlobalValue
> GlobalConstant
> GlobalPointer
> GlobalIndirectSymbol
> GlobalAlias
> GlobalIFunc
> GlobalObject
> Function
> GlobalVariable
> GlobalValue would no longer be assumed to be of pointer type. The getType() overload that takes a PointerType, as well as getValueType() would be moved down to GlobalPointer. (A nice...
2016 Oct 25
3
RFC: Absolute or "fixed address" symbols as immediate operands
...ck to IR-level representation: here is an alternative representation based on a suggestion from Eli.
>>
>> Introduce a new type of GlobalValue called GlobalConstant. GlobalConstant would fit into the GlobalValue hierarchy like this:
>> GlobalValue
>> GlobalConstant
>> GlobalPointer
>> GlobalIndirectSymbol
>> GlobalAlias
>> GlobalIFunc
>> GlobalObject
>> Function
>> GlobalVariable
>> GlobalValue would no longer be assumed to be of pointer type. The getType() overload that takes a PointerType, as well as getValueType() would be moved do...
2016 Oct 11
5
RFC: Absolute or "fixed address" symbols as immediate operands
Hi all,
I wanted to summarise some discussion on llvm-commits [0,1] as an RFC, as I
felt it demanded wider circulation.
Our support for references to absolute symbols is not very good. The symbol
will be resolved accurately in non-PIC code, but suboptimally: the symbol
reference cannot currently appear as the immediate operand of an
instruction, and the code generator cannot make any assumptions
2016 Oct 25
2
RFC: Absolute or "fixed address" symbols as immediate operands
...is an alternative
>> representation based on a suggestion from Eli.
>>
>> Introduce a new type of GlobalValue called GlobalConstant. GlobalConstant
>> would fit into the GlobalValue hierarchy like this:
>>
>> GlobalValue
>>
>> GlobalConstant
>> GlobalPointer
>>
>> GlobalIndirectSymbol
>>
>> GlobalAlias
>> GlobalIFunc
>>
>> GlobalObject
>>
>> Function
>> GlobalVariable
>>
>> GlobalValue would no longer be assumed to be of pointer type. The
>> getType() overload that takes a Po...
2016 Oct 26
0
RFC: Absolute or "fixed address" symbols as immediate operands
...minating cases where “is a pointer” appears to be true,
> but isn’t actually true in all cases.
>
We'd still be able to have an "is a pointer" invariant, but on a specific
subset of globals. In practice I'd expect that a frontend that chooses to
make that assumption can use GlobalPointer in place of GlobalValue.
> I’m not an expert on CFI or how widely it will ultimately impact the
> compiler hacker consciousness, but I’m pretty sure that the current model
> for globals and functions will remain more prominent. If you choose to
> break this invariant, you’ll be conti...
2016 Oct 26
7
RFC: Absolute or "fixed address" symbols as immediate operands
Responding to both of your emails in one, sorry for the delay:
> On Oct 25, 2016, at 11:20 AM, Peter Collingbourne <peter at pcc.me.uk> wrote:
> I think there are a couple of additional considerations we should make here:
> What are we trying to model? To me it's clear that GlobalConstant is for modelling integers, not pointers. That alone may not necessarily be enough to