small problem in jump.c
Herman ten Brugge
Haj.Ten.Brugge@net.HCC.nl
Mon Aug 16 13:35:00 GMT 1999
Hello,
I am currently working on using bounds-checking on gcc itself. I found
a small problem in jump.c. The code in delete_barrier_successors fails
when a insn like:
(jump_insn 44 43 38 (return) 380 {return_internal}
(insn_list/c:REG_DEP_ANTI 43 (nil)) (nil))
is encountered. The comment above this statement is correct. The code
is not matching this comment.
1999-08-16 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
* jump.c (delete_barrier_successors) Match (set (pc) (pc)) insn
exactly.
--- jump.c.org Mon Aug 16 22:22:14 1999
+++ jump.c Mon Aug 16 22:21:51 1999
@@ -2147,6 +2147,7 @@ delete_barrier_successors (f)
gcse. We eliminate such insns now to avoid having them
cause problems later. */
else if (GET_CODE (insn) == JUMP_INSN
+ && GET_CODE (PATTERN (insn)) == SET
&& SET_SRC (PATTERN (insn)) == pc_rtx
&& SET_DEST (PATTERN (insn)) == pc_rtx)
insn = delete_insn (insn);
More information about the Gcc-patches
mailing list