aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-11-19 18:38:27 +0000
committerJeff Law <law@gcc.gnu.org>1998-11-19 11:38:27 -0700
commit90aec2cfb6f33944dee77cdaf0aa3fa53acfe348 (patch)
treec6c7a57a8556500860401ed76f3ae2eed428aeb3
parent233ce013956c03a5edd75851cd314fdb7a255e21 (diff)
downloadgcc-90aec2cfb6f33944dee77cdaf0aa3fa53acfe348.zip
gcc-90aec2cfb6f33944dee77cdaf0aa3fa53acfe348.tar.gz
gcc-90aec2cfb6f33944dee77cdaf0aa3fa53acfe348.tar.bz2
i386.md (jump): Explicitly set "memory" attribute.
* i386.md (jump): Explicitly set "memory" attribute. (indirect_jump, prologue_set_stack_ptr): Likewise. (prologue_get_pc_and_set_got, pop): Likewise. (allocate_stack_worder, blockage, return_internal): Likewise. (return_pop_internal, nop): Likewise. (epilogue_set_stack_ptr, leave): Likewise. From-SVN: r23718
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/i386/i386.md39
2 files changed, 35 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 54d6a32..3e7f3d9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+Thu Nov 19 19:34:13 1998 Jeffrey A Law (law@cygnus.com)
+
+ * i386.md (jump): Explicitly set "memory" attribute.
+ (indirect_jump, prologue_set_stack_ptr): Likewise.
+ (prologue_get_pc_and_set_got, pop): Likewise.
+ (allocate_stack_worder, blockage, return_internal): Likewise.
+ (return_pop_internal, nop): Likewise.
+ (epilogue_set_stack_ptr, leave): Likewise.
+
Thu Nov 19 15:42:54 1998 Nick Clifton <nickc@cygnus.com>
* config/arm/coff.h: Set USER_LABEL_PREFIX to "_".
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 57195df..70d585d 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -5789,7 +5789,8 @@ byte_xor_operation:
[(set (pc)
(label_ref (match_operand 0 "" "")))]
""
- "jmp %l0")
+ "jmp %l0"
+ [(set_attr "memory" "none")])
(define_insn "indirect_jump"
[(set (pc) (match_operand:SI 0 "nonimmediate_operand" "rm"))]
@@ -5799,7 +5800,8 @@ byte_xor_operation:
CC_STATUS_INIT;
return AS1 (jmp,%*%0);
-}")
+}"
+ [(set_attr "memory" "none")])
;; ??? could transform while(--i > 0) S; to if (--i > 0) do S; while(--i);
;; if S does not change i
@@ -6354,7 +6356,8 @@ byte_xor_operation:
(define_insn "blockage"
[(unspec_volatile [(const_int 0)] 0)]
""
- "")
+ ""
+ [(set_attr "memory" "none")])
;; Insn emitted into the body of a function to return from a function.
;; This is only done if the function's epilogue is known to be simple.
@@ -6368,18 +6371,21 @@ byte_xor_operation:
(define_insn "return_internal"
[(return)]
"reload_completed"
- "ret")
+ "ret"
+ [(set_attr "memory" "none")])
(define_insn "return_pop_internal"
[(return)
(use (match_operand:SI 0 "const_int_operand" ""))]
"reload_completed"
- "ret %0")
+ "ret %0"
+ [(set_attr "memory" "none")])
(define_insn "nop"
[(const_int 0)]
""
- "nop")
+ "nop"
+ [(set_attr "memory" "none")])
(define_expand "prologue"
[(const_int 1)]
@@ -6406,7 +6412,8 @@ byte_xor_operation:
xops[1] = stack_pointer_rtx;
output_asm_insn (AS2 (sub%L1,%0,%1), xops);
RET;
-}")
+}"
+ [(set_attr "memory" "none")])
(define_insn "prologue_set_got"
[(set (match_operand:SI 0 "" "")
@@ -6446,7 +6453,8 @@ byte_xor_operation:
ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"L\", CODE_LABEL_NUMBER (operands[1]));
}
RET;
-}")
+}"
+ [(set_attr "memory" "none")])
(define_insn "prologue_get_pc_and_set_got"
[(unspec_volatile [(match_operand:SI 0 "" "")] 3)]
@@ -6460,7 +6468,8 @@ byte_xor_operation:
output_asm_insn (AS1 (pop%L0,%0), operands);
output_asm_insn (\"addl $_GLOBAL_OFFSET_TABLE_+[.-%X1],%0\", operands);
RET;
-}")
+}"
+ [(set_attr "memory" "none")])
(define_expand "epilogue"
[(const_int 1)]
@@ -6483,14 +6492,16 @@ byte_xor_operation:
xops[1] = stack_pointer_rtx;
output_asm_insn (AS2 (mov%L0,%0,%1), xops);
RET;
-}")
+}"
+ [(set_attr "memory" "none")])
(define_insn "leave"
[(const_int 2)
(clobber (reg:SI 6))
(clobber (reg:SI 7))]
""
- "leave")
+ "leave"
+ [(set_attr "memory" "none")])
(define_insn "pop"
[(set (match_operand:SI 0 "register_operand" "r")
@@ -6501,7 +6512,8 @@ byte_xor_operation:
{
output_asm_insn (AS1 (pop%L0,%P0), operands);
RET;
-}")
+}"
+ [(set_attr "memory" "load")])
(define_expand "movstrsi"
[(parallel [(set (match_operand:BLK 0 "memory_operand" "")
@@ -7688,7 +7700,8 @@ byte_xor_operation:
(set (reg:SI 7) (minus:SI (reg:SI 7) (match_dup 0)))
(clobber (match_dup 0))]
"TARGET_STACK_PROBE"
- "* return AS1(call,__alloca);")
+ "* return AS1(call,__alloca);"
+ [(set_attr "memory" "none")])
(define_expand "allocate_stack"
[(set (match_operand:SI 0 "register_operand" "=r")