[lld] r229762 - PECOFF: Fix symbol aliases

Shankar Easwaran shankare at codeaurora.org
Wed Feb 18 18:06:34 PST 2015


I feel using kindLayoutBefore references would be a preferred way for 
this solution.

We could enable the LayoutPass only if Alias symbols exist. Does COFF 
need alias symbols for default operation ?

Shankar Easwaran

On 2/18/2015 5:50 PM, Rui Ueyama wrote:
> On Wed, Feb 18, 2015 at 3:47 PM, Shankar Easwaran <shankare at codeaurora.org>
> wrote:
>
>> On 2/18/2015 5:11 PM, Rui Ueyama wrote:
>>
>>> +  alias->setOrdinal(target->ordinal() - 1);
>>>
>> Wouldn't this cause a wrap around when the ordinal of the first atom is 0 ?
>>
>>>    +// getNextOrdinal returns a monotonically increasaing uint64_t number
>>> +// starting from 1. There's a large gap between two numbers returned
>>> +// from this function, so that you can put other atoms between them.
>>> +uint64_t FileCOFF::getNextOrdinal() {
>>> +  return _ordinal++ << 32;
>>> +}
>>> +
>>>
>> Do you need it this to be shifted by 32 ? Wouldnt incrementing by 2 be
>> enough ?
>
> You could define two or more aliases to a symbol so we need more room than
> for one alias. That doesn't work now, though.
>
>
>>
>> Shankar Easwaran
>>
>> --
>> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
>> by the Linux Foundation
>>
>>


-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the Linux Foundation




More information about the llvm-commits mailing list