PATCH: Support .quad for x32

H.J. Lu hjl.tools@gmail.com
Tue Mar 29 13:17:00 GMT 2011


On Tue, Mar 29, 2011 at 6:13 AM, Jan Beulich <JBeulich@novell.com> wrote:
>>>> On 29.03.11 at 15:05, "H.J. Lu" <hjl.tools@gmail.com> wrote:
>> On Tue, Mar 29, 2011 at 6:03 AM, Jan Beulich <JBeulich@novell.com> wrote:
>>>>>> On 29.03.11 at 14:51, "H.J. Lu" <hjl.tools@gmail.com> wrote:
>>>> On Tue, Mar 29, 2011 at 1:35 AM, Jan Beulich <JBeulich@novell.com> wrote:
>>>>>>>> On 29.03.11 at 00:51, "H.J. Lu" <hongjiu.lu@intel.com> wrote:
>>>>> Looks more like a compiler bug than something that needs fixing in
>>>>
>>>> Reload generates 64bit symbol address in constant pool.  I decided it
>>>> is a nice optimization for x32.  Otherwise, we have to do it like ia32. See:
>>>>
>>>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47958
>>>>
>>>>> binutils. If programming in assembly, using .quad may be intended
>>>>
>>>> handle_quad has
>>>>
>>>>   if (x86_elf_abi != X86_64_X32_ABI)
>>>>     {
>>>>       cons (nbytes);
>>>>       return;
>>>>     }
>>>>
>>>> It only applies to x32.
>>>
>>> Are you suggesting that no-one should write assembly code for x32?
>>>
>>
>> Do you have a testcase to show a problem?
>
> I don't have one at hand, but I described what I suppose wouldn't
> work in one of my previous replies. Constructing a test case from
> that shouldn't be hard...
>

x32 psABI doesn't allow R_X86_64_64 relocation and limits address
space to 32bit. I don't see any problems with my quad change for
x32.

-- 
H.J.



More information about the Binutils mailing list