gcc build problem (i386.c) -- missing declaration
Jeff Law
law@redhat.com
Thu Sep 29 18:44:00 GMT 2016
On 09/22/2016 04:52 PM, Louis Krupp wrote:
> As of revision 240383 , i386.c isn't compiling. The errors are:
>
> In file included from ../../gcc_trunk/gcc/target-def.h:106:0,
> from ../../gcc_trunk/gcc/config/i386/i386.c:81:
> ./target-hooks-def.h:92:38: error: âhook_uint_uintp_falseâ was not declared in this scope
> #define TARGET_ASM_ELF_FLAGS_NUMERIC hook_uint_uintp_false
> ^
> ./target-hooks-def.h:2205:5: note: in expansion of macro âTARGET_ASM_ELF_FLAGS_NUMERICâ
> TARGET_ASM_ELF_FLAGS_NUMERIC, \
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./target-hooks-def.h:1792:5: note: in expansion of macro âTARGET_ASM_OUTâ
> TARGET_ASM_OUT, \
> ^~~~~~~~~~~~~~
> ../../gcc_trunk/gcc/config/i386/i386.c:50811:29: note: in expansion of macro âTARGET_INITIALIZERâ
> struct gcc_target targetm = TARGET_INITIALIZER;
>
> The problem seems to be that hook_uint_uintp_false() was added to hooks.c but not to hooks.h. I have things working on my copy with this change:
>
> --- hooks.h (revision 240383)
> +++ hooks.h (working copy)
> @@ -95,6 +95,7 @@ extern tree hook_tree_tree_int_treep_bool_null (tr
>
> extern unsigned hook_uint_void_0 (void);
> extern unsigned int hook_uint_mode_0 (machine_mode);
> +extern bool hook_uint_uintp_false (unsigned int, unsigned int *);
>
> extern bool default_can_output_mi_thunk_no_vcall (const_tree, HOST_WIDE_INT,
> HOST_WIDE_INT, const_tree);
>
> If I'm not missing something, and if this is a genuine build problem, and if this change looks good, I can commit it unless someone else is in the process of doing that. I just need someone's approval. (I should add that I'm on the Fortran commit-after-approval list, but I'm not on a general gcc list as far as I know.)
>
Unfortunately you didn't indicate the target you used. Just saying
"i386.c" isn't helpful as significant amounts of code in i386.c are
conditionalized based on the target triplet (ie something like
x86_64-pc-linux-gnu or i686-pc-kfreebsd-gnu.
What specific target were you trying to build?
Jeff
More information about the Gcc-patches
mailing list