diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2014-06-06 07:32:25 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2014-06-06 07:32:25 +0000 |
commit | ffa4602f4d54c80b978b3f6c8c376fbf75b72277 (patch) | |
tree | fc8f51ea70b82f892ac226dafb7defa86a52c93b /gcc/final.c | |
parent | 28a4a292fc1717544e68ed2f6107b3f0cbe10aed (diff) | |
download | gcc-ffa4602f4d54c80b978b3f6c8c376fbf75b72277.zip gcc-ffa4602f4d54c80b978b3f6c8c376fbf75b72277.tar.gz gcc-ffa4602f4d54c80b978b3f6c8c376fbf75b72277.tar.bz2 |
rtl.h (insn_location): Declare.
* rtl.h (insn_location): Declare.
* cfgcleanup.c (try_forward_edges): Compare the locus of locations
with UNKNOWN_LOCATION.
* emit-rtl.c (insn_location): New function.
* final.c (notice_source_line): Check that the instruction has a
location before retrieving it and use insn_location.
* modulo-sched.c (loop_single_full_bb_p): Likewise.
* print-rtl.c (print_rtx): Likewise.
From-SVN: r211305
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/final.c b/gcc/final.c index c32e177..4f08073 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -3019,10 +3019,16 @@ notice_source_line (rtx insn, bool *is_stmt) filename = override_filename; linenum = override_linenum; } + else if (INSN_HAS_LOCATION (insn)) + { + expanded_location xloc = insn_location (insn); + filename = xloc.file; + linenum = xloc.line; + } else { - filename = insn_file (insn); - linenum = insn_line (insn); + filename = NULL; + linenum = 0; } if (filename == NULL) |