On Tue, Jul 26, 2011 at 7:50 PM, H.J. Lu <hjl.to...@gmail.com> wrote:

>>>>> This patch fixes PIC with external symbol and updates
>>>>> x86_64_immediate_operand/x86_64_zext_immediate_operand/x86_64_movabs_operand
>>>>> for x32.
>>>>
>>>>> 2011-07-26  H.J. Lu  <hongjiu...@intel.com>
>>>>>
>>>>>        PR target/49853
>>>>>        * config/i386/i386.c (ix86_expand_move): Call convert_to_mode
>>>>>        on legitimize_tls_address return if needed.  Allow ptr_mode for
>>>>>        symbolic operand with PIC.
>>>>
>>>> Eh... half of your patch is just an unnecessary rename of a temporary
>>>> variable. See attached patch for a cleaned-up version.
>>>
>>> It looks good to me.  Can you check it in?
>>
>> Please, can you test it on x32 first? I will commit it after
>> bootstrap/regtest finish.
>>
>
> It may need other changes for TLS support.  I can update it
> after your change is checked in.

Committed with following ChangeLog:

2011-07-26  Uros Bizjak  <ubiz...@gmail.com>
            H.J. Lu  <hongjiu...@intel.com>

        PR target/47369
        PR target/49853
        * config/i386/i386.c (ix86_expand_move): Call convert_to_mode
        if legitimize_tls_address returned operand in wrong mode. Allow
        SImode and DImode symbolic operand for PIC.  Call convert_to_mode
        if legitimize_pic_address returned operand in wrong mode.

Tested on x86_64-pc-linux-gnu {,-m32}.

Uros.

Reply via email to