This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: PR target/49860: [x32] Error: cannot represent relocation type BFD_RELOC_64 in x32 mode


On Wed, Jul 27, 2011 at 6:09 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> On Wed, Jul 27, 2011 at 3:00 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>
>>> Pmode is still in DImode and DImode addresses are *valid* addresses.
>>> For the testcase from PR,
>>> expand generates SImode symbol that is later extended to DImode and
>>> handled through movabs.
>>>
>>> Your patch just papers over this fact. Please see how
>>> *movdi_internal_rex64 handles immediates.
>>>
>>
>> For the testcase in:
>>
>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49860
>>
>> my goal is ?to make TARGET_X32 to generate code very similar to
>> TARGET_32BIT, except for r8-r15. ?How can we achieve that?
>
> Unless you can prevent DImode symbols in ix86_legitimate_constant_p, we can't.
>

This

subq    $outbuf-4294967295, %rdx

comes from loop unrolling on ptr_mode and works in x32.


-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]