Patchwork ia64-linux build broken

login
register
mail settings
Submitter Richard Henderson
Date June 27, 2011, 7:57 p.m.
Message ID <4E08E0B1.6080600@redhat.com>
Download mbox | patch
Permalink /patch/102260/
State New
Headers show

Comments

Richard Henderson - June 27, 2011, 7:57 p.m.
On 06/27/2011 12:23 PM, Richard Henderson wrote:
> On 06/27/2011 12:11 PM, Richard Henderson wrote:
>> gcc -c  -DUSE_LIBUNWIND_EXCEPTIONS  -g -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -fno-common  -DHAVE_CONFIG_H -I. -I. -I../../comb/gcc -I../../comb/gcc/. -I../../comb/gcc/../include -I../../comb/gcc/../libcpp/include  -I../../comb/gcc/../libdecnumber -I../../comb/gcc/../libdecnumber/dpd -I../libdecnumber    \
>> 	../../comb/gcc/config/ia64/ia64.c -o ia64.o
>> ../../comb/gcc/config/ia64/ia64.c: In function ‘ia64_init_builtins’:
>> ../../comb/gcc/config/ia64/ia64.c:10136:7: warning: implicit declaration of function ‘vms_patch_builtins’ [-Wimplicit-function-declaration]
> 
> And of course alpha-linux is broken for the same reason.
> You cannot call a function in config/vms.c without ifdef protection.

Fixed thus.


r~
* config/alpha/alpha.c (vms_patch_builtins): Provide dummy definition.
        * config/ia64/ia64.c (ia64_init_builtins): Call vms_patch_builtins
        inside ifdef.
Tristan Gingold - June 28, 2011, 7:22 a.m.
On Jun 27, 2011, at 9:57 PM, Richard Henderson wrote:

> On 06/27/2011 12:23 PM, Richard Henderson wrote:
>> On 06/27/2011 12:11 PM, Richard Henderson wrote:
>>> gcc -c  -DUSE_LIBUNWIND_EXCEPTIONS  -g -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -fno-common  -DHAVE_CONFIG_H -I. -I. -I../../comb/gcc -I../../comb/gcc/. -I../../comb/gcc/../include -I../../comb/gcc/../libcpp/include  -I../../comb/gcc/../libdecnumber -I../../comb/gcc/../libdecnumber/dpd -I../libdecnumber    \
>>> 	../../comb/gcc/config/ia64/ia64.c -o ia64.o
>>> ../../comb/gcc/config/ia64/ia64.c: In function ‘ia64_init_builtins’:
>>> ../../comb/gcc/config/ia64/ia64.c:10136:7: warning: implicit declaration of function ‘vms_patch_builtins’ [-Wimplicit-function-declaration]
>> 
>> And of course alpha-linux is broken for the same reason.
>> You cannot call a function in config/vms.c without ifdef protection.

Sure.

> Fixed thus.

Thank you for fixing that.

Tristan.

Patch

diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 5d656f1..962f020 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -198,6 +198,8 @@  static rtx alpha_emit_xfloating_compare (enum rtx_code *, rtx, rtx);
 #if TARGET_ABI_OPEN_VMS
 static void alpha_write_linkage (FILE *, const char *, tree);
 static bool vms_valid_pointer_mode (enum machine_mode);
+#else
+#define vms_patch_builtins()  gcc_unreachable()
 #endif
 
 #ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index b0d9dc8..c06903d 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -10131,10 +10131,9 @@  ia64_init_builtins (void)
 					       "__float128");
 
   /* Fwrite on VMS is non-standard.  */
-  if (TARGET_ABI_OPEN_VMS)
-    {
-      vms_patch_builtins ();
-    }
+#if TARGET_ABI_OPEN_VMS
+  vms_patch_builtins ();
+#endif
 
 #define def_builtin(name, type, code)					\
   add_builtin_function ((name), (type), (code), BUILT_IN_MD,	\