This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH [7/n] X32: Handle address output and calls patterns
On Wed, Jul 20, 2011 at 4:09 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
Hello!
>> +(define_insn "*tablejump_1_x32"
>> + ?[(set (pc) (match_operand:SI 0 "register_operand" "r"))
>> + ? (use (label_ref (match_operand 1 "" "")))]
>> + ?"TARGET_X32"
>> + ?"jmp\t%A0"
>> + ?[(set_attr "type" "ibr")
>> + ? (set_attr "length_immediate" "0")])
>>
>> This pattern should include zero_extend from operand 0. Please fix the
>> tablejump expander to generate correct pattern.
>>
>> Also, indirect jump needs to generate zero_extend from SImode register for x32.
>>
>
> I am testing this patch on top of the last one. We don't need to zero-extend
> indirect jump since it takes operand 0 in Pmode, which is DImode.
Looks good to me, but please wait for rth's approval.
Thanks,
Uros.