This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hello Richard, 2008/7/4 Richard Guenther <richard.guenther@gmail.com>: > On Fri, Jul 4, 2008 at 3:36 PM, Kai Tietz <Kai.Tietz@onevision.com> wrote: >> Diego, >> >> I missed two )'s in the prior patch file. >> I tested it by adding an assert for canonical_va_list_type in builtins.c: >> stabilize_va_list() and regression tested it via linux64 cross and for >> w64. > > Doesn't work. > > /space/rguenther/obj/./gcc/xgcc -B/space/rguenther/obj/./gcc/ > -B/usr/local/x86_64-unknown-linux-gnu/bin/ > -B/usr/local/x86_64-unknown-linux-gnu/lib/ -isystem > /usr/local/x86_64-unknown-linux-gnu/include -isystem > /usr/local/x86_64-unknown-linux-gnu/sys-include -g -O2 -O2 -g -O2 > -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes > -Wmissing-prototypes -Wcast-qual -Wc++-compat -Wold-style-definition > -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 > -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../.././gcc > -I../../../trunk/libgcc -I../../../trunk/libgcc/. > -I../../../trunk/libgcc/../gcc -I../../../trunk/libgcc/../include > -I../../../trunk/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT > -DHAVE_CC_TLS -DUSE_TLS -o _gcov_execl.o -MT _gcov_execl.o -MD -MP -MF > _gcov_execl.dep -DL_gcov_execl -c > ../../../trunk/libgcc/../gcc/libgcov.c > ../../../trunk/libgcc/../gcc/libgcov.c: In function '__gcov_execl': > ../../../trunk/libgcc/../gcc/libgcov.c:843: warning: cast discards > qualifiers from pointer target type > ../../../trunk/libgcc/../gcc/libgcov.c:838: error: first argument to > 'va_arg' not of type 'va_list' > ../../../trunk/libgcc/../gcc/libgcov.c:845: error: first argument to > 'va_arg' not of type 'va_list' > make[3]: *** [_gcov_execl.o] Error 1 > I found the problem. It is related to the fact, that the native va_list type for x86_64 is a structure. In earlier patches the type was generated twice by the helper function x86_build_builtin_va_list_abi. This lead to the problem, that there are two record types use, which brings the gimple to fail. Additionally the canonical_va_list_type method needs to handle va_list_type_node, too. Additionally it has to dereference pointers to va_list types. So here is the new version of this patch. I bootstraped it on linux64 and tested the new callabi testcases. Is this patch ok to apply? Cheers, Kai -- | (\_/) This is Bunny. Copy and paste | (='.'=) Bunny into your signature to help | (")_(") him gain world domination
Attachment:
callabi.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |