summaryrefslogtreecommitdiff
path: root/gnu/egcs
diff options
context:
space:
mode:
authorFederico G. Schwindt <fgsch@cvs.openbsd.org>2002-03-07 09:44:08 +0000
committerFederico G. Schwindt <fgsch@cvs.openbsd.org>2002-03-07 09:44:08 +0000
commitac4e86585428efb96399370183ae8c75f91c3d56 (patch)
treeefea8552c4510e0960460a9b6a7672d852ad82ad /gnu/egcs
parent4dc31b76967b7cb8d51dd7c0d244bb6ea785085a (diff)
From NetBSD: Fix evil bitfield bug; hugh@ ok
Diffstat (limited to 'gnu/egcs')
-rw-r--r--gnu/egcs/gcc/config/vax/vax.md13
1 files changed, 1 insertions, 12 deletions
diff --git a/gnu/egcs/gcc/config/vax/vax.md b/gnu/egcs/gcc/config/vax/vax.md
index f18df5e722a..f49b643dd19 100644
--- a/gnu/egcs/gcc/config/vax/vax.md
+++ b/gnu/egcs/gcc/config/vax/vax.md
@@ -1524,18 +1524,7 @@
""
"*
{
- if (GET_CODE (operands[0]) != REG || GET_CODE (operands[2]) != CONST_INT
- || GET_CODE (operands[3]) != CONST_INT
- || INTVAL (operands[2]) + INTVAL (operands[3]) > 32
- || side_effects_p (operands[1])
- || (GET_CODE (operands[1]) == MEM
- && mode_dependent_address_p (XEXP (operands[1], 0))))
- return \"extzv %3,%2,%1,%0\";
- if (INTVAL (operands[2]) == 8)
- return \"rotl %R3,%1,%0\;movzbl %0,%0\";
- if (INTVAL (operands[2]) == 16)
- return \"rotl %R3,%1,%0\;movzwl %0,%0\";
- return \"rotl %R3,%1,%0\;bicl2 %M2,%0\";
+ return \"extzv %3,%2,%1,%0\";
}")
(define_expand "insv"