Hi,
with the attached patch dwarf2out tries to print the name of the
unspec together with the numeric value in case the back end uses
define_c_enum for the unspec constants.
Ok for mainline?
Bye,
-Andreas-
2011-03-21 Andreas Krebbel
* dwarf2out.c (const_ok_for_output_1): Print the unspec enum name
if possible.
Index: gcc/dwarf2out.c
===
*** gcc/dwarf2out.c.orig
--- gcc/dwarf2out.c
*** const_ok_for_output_1 (rtx *rtlp, void *
*** 13612,13620
--- 13612,13627
inform (current_function_decl
? DECL_SOURCE_LOCATION (current_function_decl)
: UNKNOWN_LOCATION,
+ #if NUM_UNSPEC_VALUES > 0
+ "non-delegitimized UNSPEC %s (%d) found in variable location",
+ (XINT (rtl, 1) >= 0 && XINT (rtl, 1) < NUM_UNSPEC_VALUES)
+ ? unspec_strings[XINT (rtl, 1)] : "unkown",
+ XINT (rtl, 1));
+ #else
"non-delegitimized UNSPEC %d found in variable location",
XINT (rtl, 1));
#endif
+ #endif
expansion_failed (NULL_TREE, rtl,
"UNSPEC hasn't been delegitimized.\n");
return 1;