Skip to content
Snippets Groups Projects
Commit 5af6d8d8 authored by bernds's avatar bernds
Browse files

* config/bfin/bfin.c (print_operand): New modifier 'N' for constants.

	* config/bfin/bfin.md (ssashiftv2hi3, ssashifthi3, lshiftv2hi3,
	lshifthi3): Use it, and fix the order of alternatives.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119616 138bc75d-0d04-0410-961f-82ee72b054a4
parent 7c6733e8
No related branches found
No related tags found
No related merge requests found
2006-12-07 Bernd Schmidt <bernd.schmidt@analog.com>
* config/bfin/bfin.c (print_operand): New modifier 'N' for constants.
* config/bfin/bfin.md (ssashiftv2hi3, ssashifthi3, lshiftv2hi3,
lshifthi3): Use it, and fix the order of alternatives.
2006-12-07 Nick Clifton <nickc@redhat.com> 2006-12-07 Nick Clifton <nickc@redhat.com>
   
* common.opt (record-gcc-switches): New command line switch. * common.opt (record-gcc-switches): New command line switch.
......
...@@ -1381,6 +1381,8 @@ print_operand (FILE *file, rtx x, char code) ...@@ -1381,6 +1381,8 @@ print_operand (FILE *file, rtx x, char code)
x = GEN_INT ((INTVAL (x) >> 16) & 0xffff); x = GEN_INT ((INTVAL (x) >> 16) & 0xffff);
else if (code == 'h') else if (code == 'h')
x = GEN_INT (INTVAL (x) & 0xffff); x = GEN_INT (INTVAL (x) & 0xffff);
else if (code == 'N')
x = GEN_INT (-INTVAL (x));
else if (code == 'X') else if (code == 'X')
x = GEN_INT (exact_log2 (0xffffffff & INTVAL (x))); x = GEN_INT (exact_log2 (0xffffffff & INTVAL (x)));
else if (code == 'Y') else if (code == 'Y')
......
...@@ -3312,8 +3312,8 @@ ...@@ -3312,8 +3312,8 @@
"" ""
"@ "@
%0 = ASHIFT %1 BY %2 (V, S)%! %0 = ASHIFT %1 BY %2 (V, S)%!
%0 = %1 >>> %2 (V,S)%! %0 = %1 << %2 (V,S)%!
%0 = %1 << %2 (V,S)%!" %0 = %1 >>> %N2 (V,S)%!"
[(set_attr "type" "dsp32")]) [(set_attr "type" "dsp32")])
(define_insn "ssashifthi3" (define_insn "ssashifthi3"
...@@ -3326,8 +3326,8 @@ ...@@ -3326,8 +3326,8 @@
"" ""
"@ "@
%0 = ASHIFT %1 BY %2 (V, S)%! %0 = ASHIFT %1 BY %2 (V, S)%!
%0 = %1 >>> %2 (V,S)%! %0 = %1 << %2 (V,S)%!
%0 = %1 << %2 (V,S)%!" %0 = %1 >>> %N2 (V,S)%!"
[(set_attr "type" "dsp32")]) [(set_attr "type" "dsp32")])
(define_insn "lshiftv2hi3" (define_insn "lshiftv2hi3"
...@@ -3340,8 +3340,8 @@ ...@@ -3340,8 +3340,8 @@
"" ""
"@ "@
%0 = LSHIFT %1 BY %2 (V)%! %0 = LSHIFT %1 BY %2 (V)%!
%0 = %1 >> %2 (V)%! %0 = %1 << %2 (V)%!
%0 = %1 << %2 (V)%!" %0 = %1 >> %N2 (V)%!"
[(set_attr "type" "dsp32")]) [(set_attr "type" "dsp32")])
(define_insn "lshifthi3" (define_insn "lshifthi3"
...@@ -3354,7 +3354,7 @@ ...@@ -3354,7 +3354,7 @@
"" ""
"@ "@
%0 = LSHIFT %1 BY %2 (V)%! %0 = LSHIFT %1 BY %2 (V)%!
%0 = %1 >> %2 (V)%! %0 = %1 << %2 (V)%!
%0 = %1 << %2 (V)%!" %0 = %1 >> %N2 (V)%!"
[(set_attr "type" "dsp32")]) [(set_attr "type" "dsp32")])
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment