summaryrefslogtreecommitdiff
path: root/gcc/config/c4x/c4x.md
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2002-02-21 21:11:08 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2002-02-21 21:11:08 +0000
commit6de9716cc86b899d324a5ba53a2788a34f6f7d44 (patch)
tree53af922ab93c931646d1f9c027ff95539927bd5e /gcc/config/c4x/c4x.md
parent47ed174f8c9f542fbe9fc20f5f2031059724ff8c (diff)
downloadgcc-6de9716cc86b899d324a5ba53a2788a34f6f7d44.tar.gz
PR c++/4574
* expr.h (expand_and): Add mode argument. * expmed.c (expand_and): Add mode argument. (expand_mult_highpart_adjust, emit_store_flag): Adjust callers. * expr.c (store_field, expand_expr, do_store_flag): Likewise. * except.c (expand_builtin_extract_return_addr): Likewise. * config/alpha/alpha.c (alpha_initialize_trampoline): Likewise. * config/sparc/sparc.c (sparc_initialize_trampoline): Likewise. * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Likewise. Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x). * config/c4x/c4x.md: Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x). * gcc.dg/20020220-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49938 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/c4x/c4x.md')
-rw-r--r--gcc/config/c4x/c4x.md28
1 files changed, 13 insertions, 15 deletions
diff --git a/gcc/config/c4x/c4x.md b/gcc/config/c4x/c4x.md
index c365489aa9d..242ed154cfe 100644
--- a/gcc/config/c4x/c4x.md
+++ b/gcc/config/c4x/c4x.md
@@ -984,8 +984,8 @@
(set (match_dup 0) (ior:QI (match_dup 0) (match_dup 3)))]
"
{
- operands[2] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & ~0xffff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & 0xffff);
+ operands[2] = GEN_INT (INTVAL (operands[1]) & ~0xffff);
+ operands[3] = GEN_INT (INTVAL (operands[1]) & 0xffff);
}")
(define_split
@@ -1000,8 +1000,8 @@
(set (match_dup 0) (ior:QI (match_dup 0) (match_dup 3)))]
"
{
- operands[2] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & ~0xffff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & 0xffff);
+ operands[2] = GEN_INT (INTVAL (operands[1]) & ~0xffff);
+ operands[3] = GEN_INT (INTVAL (operands[1]) & 0xffff);
}")
(define_split
@@ -1022,8 +1022,8 @@
operands[2] = gen_rtx (CONST_INT, VOIDmode,
(((INTVAL (operands[1]) >> 16) & 0xffff)
- 0x8000) ^ ~0x7fff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & 0xffff);
- operands[4] = gen_rtx (CONST_INT, VOIDmode, 16);
+ operands[3] = GEN_INT (INTVAL (operands[1]) & 0xffff);
+ operands[4] = GEN_INT (16);
}")
(define_split
@@ -1043,8 +1043,8 @@
operands[2] = gen_rtx (CONST_INT, VOIDmode,
(((INTVAL (operands[1]) >> 16) & 0xffff)
- 0x8000) ^ ~0x7fff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, INTVAL (operands[1]) & 0xffff);
- operands[4] = gen_rtx (CONST_INT, VOIDmode, 16);
+ operands[3] = GEN_INT (INTVAL (operands[1]) & 0xffff);
+ operands[4] = GEN_INT (16);
}")
(define_split
@@ -1063,10 +1063,9 @@
/* Generate two's complement value of MSBs. */
int shift = c4x_shiftable_constant (operands[1]);
- operands[2] = gen_rtx (CONST_INT, VOIDmode,
- (((INTVAL (operands[1]) >> shift) & 0xffff)
+ operands[2] = GEN_INT ((((INTVAL (operands[1]) >> shift) & 0xffff)
- 0x8000) ^ ~0x7fff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, shift);
+ operands[3] = GEN_INT (shift);
}")
(define_split
@@ -1084,10 +1083,9 @@
/* Generate two's complement value of MSBs. */
int shift = c4x_shiftable_constant (operands[1]);
- operands[2] = gen_rtx (CONST_INT, VOIDmode,
- (((INTVAL (operands[1]) >> shift) & 0xffff)
- - 0x8000) ^ ~0x7fff);
- operands[3] = gen_rtx (CONST_INT, VOIDmode, shift);
+ operands[2] = GEN_INT ((((INTVAL (operands[1]) >> shift) & 0xffff)
+ - 0x8000) ^ ~0x7fff);
+ operands[3] = GEN_INT (shift);
}")
(define_split