diff mbox

[002/236] JUMP_LABEL is not always a LABEL

Message ID 1407345815-14551-3-git-send-email-dmalcolm@redhat.com
State New
Headers show

Commit Message

David Malcolm Aug. 6, 2014, 5:19 p.m. UTC
gcc/
	* rtl.h (JUMP_LABEL): Add a note that this isn't always a LABEL.
---
 gcc/rtl.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Jeff Law Aug. 12, 2014, 8:52 p.m. UTC | #1
On 08/06/14 11:19, David Malcolm wrote:
> gcc/
> 	* rtl.h (JUMP_LABEL): Add a note that this isn't always a LABEL.
Egad.  I would assert that both combine & shrink-wrap shouldn't be doing 
that (without looking at either to see why they're doing what they're 
doing).

Approved.  Again, this probably should have gone forward independently 
of the rtx class work.


jeff
diff mbox

Patch

diff --git a/gcc/rtl.h b/gcc/rtl.h
index 51cfae5..b9b069a 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -1194,7 +1194,11 @@  enum label_kind
 
 /* In jump.c, each JUMP_INSN can point to a label that it can jump to,
    so that if the JUMP_INSN is deleted, the label's LABEL_NUSES can
-   be decremented and possibly the label can be deleted.  */
+   be decremented and possibly the label can be deleted.
+
+   This is not always a LABEL; for example in combine.c, this field
+   does double duty for storing notes, and in shrink-wrap.c it can
+   be set to simple_return_rtx, a SIMPLE_RETURN.  */
 #define JUMP_LABEL(INSN)   XCEXP (INSN, 7, JUMP_INSN)
 
 /* Once basic blocks are found, each CODE_LABEL starts a chain that