summaryrefslogtreecommitdiff
path: root/gcc/basic-block.h
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2002-07-29 18:40:45 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2002-07-29 18:40:45 +0000
commit6c208acd84403e4b98b780e8a6e8ed46bf765e46 (patch)
treee199ba3c591b9f03a67f3f435503afb1315dbc13 /gcc/basic-block.h
parent624f0d6033f211962065a7a7d5561603326d0d3e (diff)
downloadgcc-6c208acd84403e4b98b780e8a6e8ed46bf765e46.tar.gz
profile.c: Add file comment describing the overall algorithm and structures.
* profile.c: Add file comment describing the overall algorithm and structures. (struct edge_info): Add comments. (struct bb_info): Add comments. * basic-block.h (EDGE_*): Add comments. * doc/gcov.texi (Gcov Data Files): Document bit flags. From-SVN: r55842
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r--gcc/basic-block.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index ad7f1f65dd6..507fac04313 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -135,13 +135,16 @@ typedef struct edge_def {
in profile.c */
} *edge;
-#define EDGE_FALLTHRU 1
-#define EDGE_ABNORMAL 2
-#define EDGE_ABNORMAL_CALL 4
-#define EDGE_EH 8
-#define EDGE_FAKE 16
-#define EDGE_DFS_BACK 32
-#define EDGE_CAN_FALLTHRU 64
+#define EDGE_FALLTHRU 1 /* 'Straight line' flow */
+#define EDGE_ABNORMAL 2 /* Strange flow, like computed
+ label, or eh */
+#define EDGE_ABNORMAL_CALL 4 /* Call with abnormal exit
+ like an exception, or sibcall */
+#define EDGE_EH 8 /* Exception throw */
+#define EDGE_FAKE 16 /* Not a real edge (profile.c) */
+#define EDGE_DFS_BACK 32 /* A backwards edge */
+#define EDGE_CAN_FALLTHRU 64 /* Candidate for straight line
+ flow. */
#define EDGE_COMPLEX (EDGE_ABNORMAL | EDGE_ABNORMAL_CALL | EDGE_EH)