aarch64.md (stack_protect_set_<mode>): Use <w> for the register in assembly template.

2014-05-27  Andrew Pinski  <apinski@cavium.com>

	* config/aarch64/aarch64.md (stack_protect_set_<mode>):
	Use <w> for the register in assembly template.
	(stack_protect_test): Use the mode of operands[0] for the
	result.
	(stack_protect_test_<mode>): Use <w> for the register
	in assembly template.

From-SVN: r210996
This commit is contained in:
Andrew Pinski 2014-05-28 01:24:53 +00:00 committed by Andrew Pinski
parent 69c7a374a1
commit 9c6ab05f6a
2 changed files with 14 additions and 5 deletions

View File

@ -1,3 +1,12 @@
2014-05-27 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64.md (stack_protect_set_<mode>):
Use <w> for the register in assembly template.
(stack_protect_test): Use the mode of operands[0] for the
result.
(stack_protect_test_<mode>): Use <w> for the register
in assembly template.
2014-05-27 DJ Delorie <dj@redhat.com> 2014-05-27 DJ Delorie <dj@redhat.com>
* config/rx/rx.c (add_vector_labels): New. * config/rx/rx.c (add_vector_labels): New.

View File

@ -3859,7 +3859,7 @@
UNSPEC_SP_SET)) UNSPEC_SP_SET))
(set (match_scratch:PTR 2 "=&r") (const_int 0))] (set (match_scratch:PTR 2 "=&r") (const_int 0))]
"" ""
"ldr\\t%x2, %1\;str\\t%x2, %0\;mov\t%x2,0" "ldr\\t%<w>2, %1\;str\\t%<w>2, %0\;mov\t%<w>2,0"
[(set_attr "length" "12") [(set_attr "length" "12")
(set_attr "type" "multiple")]) (set_attr "type" "multiple")])
@ -3869,11 +3869,11 @@
(match_operand 2)] (match_operand 2)]
"" ""
{ {
rtx result;
rtx result = gen_reg_rtx (Pmode);
enum machine_mode mode = GET_MODE (operands[0]); enum machine_mode mode = GET_MODE (operands[0]);
result = gen_reg_rtx(mode);
emit_insn ((mode == DImode emit_insn ((mode == DImode
? gen_stack_protect_test_di ? gen_stack_protect_test_di
: gen_stack_protect_test_si) (result, : gen_stack_protect_test_si) (result,
@ -3896,7 +3896,7 @@
UNSPEC_SP_TEST)) UNSPEC_SP_TEST))
(clobber (match_scratch:PTR 3 "=&r"))] (clobber (match_scratch:PTR 3 "=&r"))]
"" ""
"ldr\t%x3, %x1\;ldr\t%x0, %x2\;eor\t%x0, %x3, %x0" "ldr\t%<w>3, %x1\;ldr\t%<w>0, %x2\;eor\t%<w>0, %<w>3, %<w>0"
[(set_attr "length" "12") [(set_attr "length" "12")
(set_attr "type" "multiple")]) (set_attr "type" "multiple")])