summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-14 23:35:28 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-14 23:35:28 +0000
commit345b3c981c3bd7e46d571e28c5619346ca90741d (patch)
tree7e45cceaf675443bf9507012de0b1af19305035a /gcc/config
parent8edb68d40f484a1be1054072e91ceabde131e42b (diff)
downloadgcc-345b3c981c3bd7e46d571e28c5619346ca90741d.tar.gz
* config/i386/i386.md (prefetch): Tidy.
(prefetch_3dnow): Fix locality operand. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48856 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.md11
1 files changed, 4 insertions, 7 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index c892fc183ce..f43860801cc 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -19607,6 +19607,7 @@
{
int rw = INTVAL (operands[1]);
int locality = INTVAL (operands[2]);
+
if (rw != 0 && rw != 1)
abort ();
if (locality < 0 || locality > 3)
@@ -19617,13 +19618,9 @@
(K6 machines). Otherwise use SSE prefetch as it allows specifying
of locality. */
if (TARGET_3DNOW && (!TARGET_PREFETCH_SSE || rw))
- {
- operands[2] = GEN_INT (3);
- }
+ operands[2] = GEN_INT (3);
else
- {
- operands[1] = const0_rtx;
- }
+ operands[1] = const0_rtx;
})
(define_insn "*prefetch_sse"
@@ -19647,7 +19644,7 @@
(define_insn "*prefetch_3dnow"
[(prefetch (match_operand:SI 0 "address_operand" "p")
(match_operand:SI 1 "const_int_operand" "n")
- (const_int 0))]
+ (const_int 3))]
"TARGET_3DNOW"
{
if (INTVAL (operands[1]) == 0)