From c55d3fa54434276d8db9e5f980a906f3b6ec14df Mon Sep 17 00:00:00 2001 From: dmalcolm Date: Wed, 10 Sep 2014 14:42:05 +0000 Subject: [PATCH] error_for_asm and warning_for_asm take const rtx_insn * gcc/ChangeLog: 2014-09-10 David Malcolm * final.c (this_is_asm_operands): Strengthen this variable from rtx to const rtx_insn *. * output.h (this_is_asm_operands): Likewise. * rtl-error.c (location_for_asm): Strengthen param "insn" from const_rtx to const rtx_insn *. (diagnostic_for_asm): Likewise. * rtl-error.h (error_for_asm): Likewise. (warning_for_asm): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215133 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 11 +++++++++++ gcc/final.c | 2 +- gcc/output.h | 2 +- gcc/rtl-error.c | 13 +++++++------ gcc/rtl-error.h | 6 ++++-- 5 files changed, 24 insertions(+), 10 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 39e5de65ad9..3aaeb0d3f3c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,16 @@ 2014-09-10 David Malcolm + * final.c (this_is_asm_operands): Strengthen this variable from + rtx to const rtx_insn *. + * output.h (this_is_asm_operands): Likewise. + * rtl-error.c (location_for_asm): Strengthen param "insn" from + const_rtx to const rtx_insn *. + (diagnostic_for_asm): Likewise. + * rtl-error.h (error_for_asm): Likewise. + (warning_for_asm): Likewise. + +2014-09-10 David Malcolm + * genextract.c (print_header): When writing out insn_extract to insn-extract.c, strengthen the param "insn" from rtx to rtx_insn *. * recog.h (insn_extract): Strengthen the param from rtx to diff --git a/gcc/final.c b/gcc/final.c index 52791e8d7fa..9275a487bd8 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -151,7 +151,7 @@ extern const int length_unit_log; /* This is defined in insn-attrtab.c. */ /* Nonzero while outputting an `asm' with operands. This means that inconsistencies are the user's fault, so don't die. The precise value is the insn being output, to pass to error_for_asm. */ -rtx this_is_asm_operands; +const rtx_insn *this_is_asm_operands; /* Number of operands of this insn, for an `asm' with operands. */ static unsigned int insn_noperands; diff --git a/gcc/output.h b/gcc/output.h index fd36f8b1989..8c043a13da7 100644 --- a/gcc/output.h +++ b/gcc/output.h @@ -328,7 +328,7 @@ extern rtx_insn *current_output_insn; /* Nonzero while outputting an `asm' with operands. This means that inconsistencies are the user's fault, so don't die. The precise value is the insn being output, to pass to error_for_asm. */ -extern rtx this_is_asm_operands; +extern const rtx_insn *this_is_asm_operands; /* Carry information from ASM_DECLARE_OBJECT_NAME to ASM_FINISH_DECLARE_OBJECT. */ diff --git a/gcc/rtl-error.c b/gcc/rtl-error.c index d8d9363654f..e8766099d2a 100644 --- a/gcc/rtl-error.c +++ b/gcc/rtl-error.c @@ -29,12 +29,13 @@ along with GCC; see the file COPYING3. If not see #include "intl.h" #include "diagnostic.h" -static location_t location_for_asm (const_rtx); -static void diagnostic_for_asm (const_rtx, const char *, va_list *, diagnostic_t) ATTRIBUTE_GCC_DIAG(2,0); +static location_t location_for_asm (const rtx_insn *); +static void diagnostic_for_asm (const rtx_insn *, const char *, va_list *, + diagnostic_t) ATTRIBUTE_GCC_DIAG(2,0); /* Figure the location of the given INSN. */ static location_t -location_for_asm (const_rtx insn) +location_for_asm (const rtx_insn *insn) { rtx body = PATTERN (insn); rtx asmop; @@ -65,7 +66,7 @@ location_for_asm (const_rtx insn) of the insn INSN. This is used only when INSN is an `asm' with operands, and each ASM_OPERANDS records its own source file and line. */ static void -diagnostic_for_asm (const_rtx insn, const char *msg, va_list *args_ptr, +diagnostic_for_asm (const rtx_insn *insn, const char *msg, va_list *args_ptr, diagnostic_t kind) { diagnostic_info diagnostic; @@ -76,7 +77,7 @@ diagnostic_for_asm (const_rtx insn, const char *msg, va_list *args_ptr, } void -error_for_asm (const_rtx insn, const char *gmsgid, ...) +error_for_asm (const rtx_insn *insn, const char *gmsgid, ...) { va_list ap; @@ -86,7 +87,7 @@ error_for_asm (const_rtx insn, const char *gmsgid, ...) } void -warning_for_asm (const_rtx insn, const char *gmsgid, ...) +warning_for_asm (const rtx_insn *insn, const char *gmsgid, ...) { va_list ap; diff --git a/gcc/rtl-error.h b/gcc/rtl-error.h index 366498f5856..479e2e5b835 100644 --- a/gcc/rtl-error.h +++ b/gcc/rtl-error.h @@ -20,5 +20,7 @@ along with GCC; see the file COPYING3. If not see #include "rtl.h" #include "diagnostic-core.h" -extern void error_for_asm (const_rtx, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); -extern void warning_for_asm (const_rtx, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); +extern void error_for_asm (const rtx_insn *, const char *, + ...) ATTRIBUTE_GCC_DIAG(2,3); +extern void warning_for_asm (const rtx_insn *, const char *, + ...) ATTRIBUTE_GCC_DIAG(2,3); -- 2.11.4.GIT