On Wed, Jul 20, 2011 at 4:09 PM, H.J. Lu <hjl.to...@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.