summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoredlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-10 18:19:01 +0000
committeredlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-10 18:19:01 +0000
commitc36804c0ddc3b360e1cd338f45c3bff41e4aa961 (patch)
tree263ae58025f3ef32705aa60e81faeec9d6d3466b
parent36706943f09724df04805d13092fadbb1444359a (diff)
downloadppe42-gcc-c36804c0ddc3b360e1cd338f45c3bff41e4aa961.tar.gz
ppe42-gcc-c36804c0ddc3b360e1cd338f45c3bff41e4aa961.zip
2014-02-10 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR middle-end/60080 * cfgexpand.c (expand_asm_operands): Attach source location to ASM_INPUT rtx objects. * print-rtl.c (print_rtx): Check for UNKNOWN_LOCATION. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207668 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/cfgexpand.c7
-rw-r--r--gcc/print-rtl.c14
3 files changed, 20 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 40af8d49a27..a5ad4facea7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2014-02-10 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ PR middle-end/60080
+ * cfgexpand.c (expand_asm_operands): Attach source location to
+ ASM_INPUT rtx objects.
+ * print-rtl.c (print_rtx): Check for UNKNOWN_LOCATION.
+
2014-02-10 Nick Clifton <nickc@redhat.com>
* config/mn10300/mn10300.c (popcount): New function.
@@ -489,7 +496,7 @@
2014-02-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
- * gcc/config/host-linux.c (linux_gt_pch_use_address): Don't
+ * config/host-linux.c (linux_gt_pch_use_address): Don't
use SSIZE_MAX because it is not always defined.
2014-02-04 Vladimir Makarov <vmakarov@redhat.com>
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index c0cbeb3c022..06d494c3d92 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2678,8 +2678,9 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
ASM_OPERANDS_INPUT (body, i) = op;
ASM_OPERANDS_INPUT_CONSTRAINT_EXP (body, i)
- = gen_rtx_ASM_INPUT (TYPE_MODE (type),
- ggc_strdup (constraints[i + noutputs]));
+ = gen_rtx_ASM_INPUT_loc (TYPE_MODE (type),
+ ggc_strdup (constraints[i + noutputs]),
+ locus);
if (tree_conflicts_with_clobbers_p (val, &clobbered_regs))
clobber_conflict_found = 1;
@@ -2701,7 +2702,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
sprintf (buffer, "%d", j);
ASM_OPERANDS_INPUT_CONSTRAINT_EXP (body, ninputs - ninout + i)
- = gen_rtx_ASM_INPUT (inout_mode[i], ggc_strdup (buffer));
+ = gen_rtx_ASM_INPUT_loc (inout_mode[i], ggc_strdup (buffer), locus);
}
/* Copy labels to the vector. */
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index 5f2a4454a0f..09ac387d18b 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -417,17 +417,19 @@ print_rtx (const_rtx in_rtx)
else if (i == 6 && GET_CODE (in_rtx) == ASM_OPERANDS)
{
#ifndef GENERATOR_FILE
- fprintf (outfile, " %s:%i",
- LOCATION_FILE (ASM_OPERANDS_SOURCE_LOCATION (in_rtx)),
- LOCATION_LINE (ASM_OPERANDS_SOURCE_LOCATION (in_rtx)));
+ if (ASM_OPERANDS_SOURCE_LOCATION (in_rtx) != UNKNOWN_LOCATION)
+ fprintf (outfile, " %s:%i",
+ LOCATION_FILE (ASM_OPERANDS_SOURCE_LOCATION (in_rtx)),
+ LOCATION_LINE (ASM_OPERANDS_SOURCE_LOCATION (in_rtx)));
#endif
}
else if (i == 1 && GET_CODE (in_rtx) == ASM_INPUT)
{
#ifndef GENERATOR_FILE
- fprintf (outfile, " %s:%i",
- LOCATION_FILE (ASM_INPUT_SOURCE_LOCATION (in_rtx)),
- LOCATION_LINE (ASM_INPUT_SOURCE_LOCATION (in_rtx)));
+ if (ASM_INPUT_SOURCE_LOCATION (in_rtx) != UNKNOWN_LOCATION)
+ fprintf (outfile, " %s:%i",
+ LOCATION_FILE (ASM_INPUT_SOURCE_LOCATION (in_rtx)),
+ LOCATION_LINE (ASM_INPUT_SOURCE_LOCATION (in_rtx)));
#endif
}
else if (i == 6 && NOTE_P (in_rtx))
OpenPOWER on IntegriCloud