aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-06-08 21:35:54 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-06-08 19:35:54 +0000
commit0435312e3890ead4503ac3d1c83afc556b39dc39 (patch)
tree852a6d09fbb544c05a647e6acf28fdbf9741a19d /gcc/rtl.h
parent5d39821d113805e918072e3bb6c91a28a6f66188 (diff)
downloadgcc-0435312e3890ead4503ac3d1c83afc556b39dc39.zip
gcc-0435312e3890ead4503ac3d1c83afc556b39dc39.tar.gz
gcc-0435312e3890ead4503ac3d1c83afc556b39dc39.tar.bz2
cfglayout.c (insn_scope): New static function
* cfglayout.c (insn_scope): New static function (block_locators_*, line_locators*, file_locators*): New static varrays. (scope_to_insns_initialize): Use them. (insn_line, insn_file): New functions. (scope_to_insns_finalize): Use insn_scope. (prologue_locator, epilogue_locator): New global variables. * emit-rt.c (try_split, make_insn_raw, make_jump_insn_raw, make_call_insn_raw, emit_copy_of_insn_after): Use locators. (emit_insn_after_scope, emit_insn_before_scope emit_jump_insn_after_scope, emit_jump_insn_before_scope emit_call_insn_after_scope, emit_call_insn_before_scope): Rename to... (emit_insn_after_setloc, emit_insn_before_setloc emit_jump_insn_after_setloc, emit_jump_insn_before_setloc emit_call_insn_after_setloc, emit_call_insn_before_setloc): ... these; use locators. * final.c (notice_source_line): Use locators. (final_start_function): Set initial source file and line. (final_scan_insn): Use locators. * ifcvt.c (noce_try_store_flag, noce_try_store_flag_constants, noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove, noce_try_cmove_arith, noce_try_minmax, noce_try_abs, noce_process_if_block, find_cond_trap): Likewise. * integrate.c (copy_insn_list): Likewise. * jump.c (duplicate_loop_exit_test): LIkewise. * print-rtl.c (print_rtx): Print locators. * recog.c (peephole2_optimize): Likewise. * rtl.h (INSN_SCOPE): Remove. (emit_insn_after_scope, emit_insn_before_scope emit_jump_insn_after_scope, emit_jump_insn_before_scope emit_call_insn_after_scope, emit_call_insn_before_scope): Rename to... (emit_insn_after_setloc, emit_insn_before_setloc emit_jump_insn_after_setloc, emit_jump_insn_before_setloc emit_call_insn_after_setloc, emit_call_insn_before_setloc): ... these; (insn_file, insn_line, prologue_locator, epilogue_locator): Declare. * unroll.c (copy_loop_body): Use locators. * function.c (set_insn_locators): New function. (thread_prologue_and_epilogue_insns): Set the locators accordingly. From-SVN: r67637
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index 3e4a1c0..8b2ae09 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -538,7 +538,7 @@ do { \
#define NEXT_INSN(INSN) XEXP (INSN, 2)
#define BLOCK_FOR_INSN(INSN) XBBDEF (INSN, 3)
-#define INSN_SCOPE(INSN) XTREE (INSN, 4)
+#define INSN_LOCATOR(INSN) XINT (INSN, 4)
/* The body of an insn. */
#define PATTERN(INSN) XEXP (INSN, 5)
@@ -1513,20 +1513,20 @@ extern rtx assign_stack_temp_for_type PARAMS ((enum machine_mode,
extern rtx assign_temp PARAMS ((tree, int, int, int));
/* In emit-rtl.c */
extern rtx emit_insn_before PARAMS ((rtx, rtx));
-extern rtx emit_insn_before_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_insn_before_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_jump_insn_before PARAMS ((rtx, rtx));
-extern rtx emit_jump_insn_before_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_jump_insn_before_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_call_insn_before PARAMS ((rtx, rtx));
-extern rtx emit_call_insn_before_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_call_insn_before_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_barrier_before PARAMS ((rtx));
extern rtx emit_label_before PARAMS ((rtx, rtx));
extern rtx emit_note_before PARAMS ((int, rtx));
extern rtx emit_insn_after PARAMS ((rtx, rtx));
-extern rtx emit_insn_after_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_insn_after_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_jump_insn_after PARAMS ((rtx, rtx));
-extern rtx emit_jump_insn_after_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_jump_insn_after_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_call_insn_after PARAMS ((rtx, rtx));
-extern rtx emit_call_insn_after_scope PARAMS ((rtx, rtx, tree));
+extern rtx emit_call_insn_after_setloc PARAMS ((rtx, rtx, int));
extern rtx emit_barrier_after PARAMS ((rtx));
extern rtx emit_label_after PARAMS ((rtx, rtx));
extern rtx emit_note_after PARAMS ((int, rtx));
@@ -1558,6 +1558,9 @@ extern rtx prev_cc0_setter PARAMS ((rtx));
/* In cfglayout.c */
extern tree choose_inner_scope PARAMS ((tree, tree));
+extern int insn_line PARAMS ((rtx));
+extern const char * insn_file PARAMS ((rtx));
+extern int prologue_locator, epilogue_locator;
/* In jump.c */
extern rtx next_nondeleted_insn PARAMS ((rtx));