Commit d77f7b19 by Nick Clifton Committed by Nick Clifton

msp430.md (umulsidi): Fix typo.

	* config/msp430/msp430.md (umulsidi): Fix typo.
	(mulhisi3): Enable even inside interrupt handlers.
	* config/msp430/msp430.c (msp430_print_operand): %O: Allow for the
	bigger return address pushed in large mode.

From-SVN: r209898
parent 3d9684ae
...@@ -10,6 +10,13 @@ ...@@ -10,6 +10,13 @@
2014-04-29 Nick Clifton <nickc@redhat.com> 2014-04-29 Nick Clifton <nickc@redhat.com>
* config/msp430/msp430.md (umulsidi): Fix typo.
(mulhisi3): Enable even inside interrupt handlers.
* config/msp430/msp430.c (msp430_print_operand): %O: Allow for the
bigger return address pushed in large mode.
2014-04-29 Nick Clifton <nickc@redhat.com>
* config/arc/arc.c (arc_select_cc_mode): Fix parentheses. * config/arc/arc.c (arc_select_cc_mode): Fix parentheses.
(arc_init_reg_tables): Use a machine_mode enum to iterate over (arc_init_reg_tables): Use a machine_mode enum to iterate over
available modes. available modes.
......
...@@ -2162,7 +2162,7 @@ msp430_print_operand (FILE * file, rtx op, int letter) ...@@ -2162,7 +2162,7 @@ msp430_print_operand (FILE * file, rtx op, int letter)
because builtins are expanded before the frame layout is determined. */ because builtins are expanded before the frame layout is determined. */
fprintf (file, "%d", fprintf (file, "%d",
msp430_initial_elimination_offset (ARG_POINTER_REGNUM, STACK_POINTER_REGNUM) msp430_initial_elimination_offset (ARG_POINTER_REGNUM, STACK_POINTER_REGNUM)
- 2); - (TARGET_LARGE ? 4 : 2));
return; return;
case 'J': case 'J':
......
...@@ -1321,7 +1321,7 @@ ...@@ -1321,7 +1321,7 @@
[(set (match_operand:SI 0 "register_operand" "=r") [(set (match_operand:SI 0 "register_operand" "=r")
(mult:SI (sign_extend:SI (match_operand:HI 1 "register_operand" "%0")) (mult:SI (sign_extend:SI (match_operand:HI 1 "register_operand" "%0"))
(sign_extend:SI (match_operand:HI 2 "register_operand" "r"))))] (sign_extend:SI (match_operand:HI 2 "register_operand" "r"))))]
"optimize > 2 && msp430_hwmult_type != NONE && ! msp430_is_interrupt_func ()" "optimize > 2 && msp430_hwmult_type != NONE"
"* "*
if (msp430_use_f5_series_hwmult ()) if (msp430_use_f5_series_hwmult ())
return \"PUSH.W sr { DINT { MOV.W %1, &0x04C2 { MOV.W %2, &0x04C8 { MOV.W &0x04CA, %L0 { MOV.W &0x04CC, %H0 { POP.W sr\"; return \"PUSH.W sr { DINT { MOV.W %1, &0x04C2 { MOV.W %2, &0x04C8 { MOV.W &0x04CA, %L0 { MOV.W &0x04CC, %H0 { POP.W sr\";
...@@ -1365,6 +1365,6 @@ ...@@ -1365,6 +1365,6 @@
if (msp430_use_f5_series_hwmult ()) if (msp430_use_f5_series_hwmult ())
return \"PUSH.W sr { DINT { MOV.W %L1, &0x04D0 { MOV.W %H1, &0x04D2 { MOV.W %L2, &0x04E0 { MOV.W %H2, &0x04E2 { MOV.W &0x04E4, %A0 { MOV.W &0x04E6, %B0 { MOV.W &0x04E8, %C0 { MOV.W &0x04EA, %D0 { POP.W sr\"; return \"PUSH.W sr { DINT { MOV.W %L1, &0x04D0 { MOV.W %H1, &0x04D2 { MOV.W %L2, &0x04E0 { MOV.W %H2, &0x04E2 { MOV.W &0x04E4, %A0 { MOV.W &0x04E6, %B0 { MOV.W &0x04E8, %C0 { MOV.W &0x04EA, %D0 { POP.W sr\";
else else
return \"PUSH.W sr { DINT { MOV.W %L1, &0x0140 { MOV.W %H1, &0x0141 { MOV.W %L2, &0x0150 { MOV.W %H2, &0x0152 { MOV.W &0x0154, %A0 { MOV.W &0x0156, %B0 { MOV.W &0x0158, %C0 { MOV.W &0x015A, %D0 { POP.W sr\"; return \"PUSH.W sr { DINT { MOV.W %L1, &0x0140 { MOV.W %H1, &0x0142 { MOV.W %L2, &0x0150 { MOV.W %H2, &0x0152 { MOV.W &0x0154, %A0 { MOV.W &0x0156, %B0 { MOV.W &0x0158, %C0 { MOV.W &0x015A, %D0 { POP.W sr\";
" "
) )
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment