[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #13 from pinskia at gcc dot gnu dot org 2007-08-20 06:53 --- Fixed. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #14 from pinskia at gcc dot gnu dot org 2007-08-20 06:53 --- Subject: Bug 32522 Author: pinskia Date: Mon Aug 20 06:53:05 2007 New Revision: 127637 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=127637 Log: 2007-08-19 Andrew Pinski [EMAIL PROTECTED] Serge Belyshev [EMAIL PROTECTED] PR target/32522 * config/alpha/alpha.c (va_list_skip_additions): Check for POINTER_PLUS_EXPR in addition to PLUS_EXPR. (alpha_stdarg_optimize_hook): Look for POINTER_PLUS_EXPR instead of PLUS_EXPR when checking ap.__base. (alpha_va_start): Create POINTER_PLUS_EXPR instead of PLUS_EXPR when doing addition on pointer types. Use size_int instead of build_int_cst. (alpha_gimplify_va_arg_1): Likewise, but use sizetype instead of ptr_type in the second operand. Modified: trunk/gcc/ChangeLog trunk/gcc/config/alpha/alpha.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #12 from pinskia at gcc dot gnu dot org 2007-07-29 02:00 --- *** Bug 32930 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||mckelvey at maskull dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #11 from patchapp at dberlin dot org 2007-07-27 06:22 --- Subject: Bug number PR32522 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01962.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #10 from belyshev at depni dot sinp dot msu dot ru 2007-07-27 06:18 --- (In reply to comment #9) Patch posted. -- belyshev at depni dot sinp dot msu dot ru changed: What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2007- ||07/msg01962.html Keywords||patch http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #8 from belyshev at depni dot sinp dot msu dot ru 2007-07-26 19:48 --- Bug 32747 fixed, so I successfully bootstrapped r126943 (all languages minus java) with patch from comment #6 on alphaev56-unknown-linux-gnu. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #9 from falk at debian dot org 2007-07-26 22:49 --- (In reply to comment #8) Bug 32747 fixed, so I successfully bootstrapped r126943 (all languages minus java) with patch from comment #6 on alphaev56-unknown-linux-gnu. So, are you going to post the patch to gcc-patches? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #7 from ro at techfak dot uni-bielefeld dot de 2007-07-17 11:28 --- Subject: Re: [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes belyshev at depni dot sinp dot msu dot ru writes: You need the following patch to fix this bug (but bootstrap on alpha is still broken for other reasons, see bug 32747): Thanks. A C-only bootstrap (alpha-dec-osf5.1b and alpha-dec-osf4.0f) completes with this patch, but if I build with all languages, cc1 segfaults in malloc building the stage 2 libdecnumber: $ source='/vol/gcc/src/gcc-dist/libdecnumber/decNumber.c' object='decNumber.o' libtool=no /vol/gccsrc/obj/gcc-4.3.0-20070712/4.0f-gcc/./prev-gcc/xgcc -B/vol/gccsrc/obj/gcc-4.3.0-20070712/4.0f-gcc/./prev-gcc/ -B/vol/gcc/alpha-dec-osf4.0f/bin/ -I/vol/gcc/src/gcc-dist/libdecnumber -I. -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wmissing-format-attribute -Wcast-qual -pedantic -Wno-long-long -Werror -I/vol/gcc/src/gcc-dist/libdecnumber -I. -c /vol/gcc/src/gcc-dist/libdecnumber/decNumber.c /vol/gcc/src/gcc-dist/libdecnumber/decNumber.c: In function 'decNumberPower': /vol/gcc/src/gcc-dist/libdecnumber/decNumber.c:1242: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. I cannot get a proper stack trace, though. The file compiles at -O. Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #5 from ro at gcc dot gnu dot org 2007-07-16 16:41 --- I've just tried bootstrapping alpha-dec-osf5.1b (C only): all is fine before the ptrplus patch (r125754), but after the patch (r125755) building libgcc fails in stage 1. With Andrew's patch, I get into stage 2, but building the stage 2 libgcc fails again as Falk described. Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #6 from belyshev at depni dot sinp dot msu dot ru 2007-07-16 17:30 --- (In reply to comment #5) You need the following patch to fix this bug (but bootstrap on alpha is still broken for other reasons, see bug 32747): --- gcc/config/alpha/alpha.c | 13 +++-- 1 file changed, 7 insertions(+), 6 deletions(-) Index: gcc43/gcc/config/alpha/alpha.c === --- gcc43.orig/gcc/config/alpha/alpha.c +++ gcc43/gcc/config/alpha/alpha.c @@ -5835,7 +5835,8 @@ va_list_skip_additions (tree lhs) if ((TREE_CODE (rhs) != NOP_EXPR TREE_CODE (rhs) != CONVERT_EXPR - (TREE_CODE (rhs) != PLUS_EXPR + ((TREE_CODE (rhs) != PLUS_EXPR +TREE_CODE (rhs) != POINTER_PLUS_EXPR) || TREE_CODE (TREE_OPERAND (rhs, 1)) != INTEGER_CST || !host_integerp (TREE_OPERAND (rhs, 1), 1))) || TREE_CODE (TREE_OPERAND (rhs, 0)) != SSA_NAME) @@ -5877,7 +5878,7 @@ alpha_stdarg_optimize_hook (struct stdar lhs = va_list_skip_additions (TREE_OPERAND (rhs, 0)); if (lhs == NULL_TREE - || TREE_CODE (lhs) != PLUS_EXPR) + || TREE_CODE (lhs) != POINTER_PLUS_EXPR) return false; base = TREE_OPERAND (lhs, 0); @@ -6111,8 +6112,8 @@ alpha_va_start (tree valist, rtx nextarg valist, offset_field, NULL_TREE); t = make_tree (ptr_type_node, virtual_incoming_args_rtx); - t = build2 (PLUS_EXPR, ptr_type_node, t, - build_int_cst (NULL_TREE, offset)); + t = build2 (POINTER_PLUS_EXPR, ptr_type_node, t, + size_int (offset)); t = build2 (GIMPLE_MODIFY_STMT, TREE_TYPE (base_field), base_field, t); TREE_SIDE_EFFECTS (t) = 1; expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL); @@ -6172,8 +6173,8 @@ alpha_gimplify_va_arg_1 (tree type, tree } /* Build the final address and force that value into a temporary. */ - addr = build2 (PLUS_EXPR, ptr_type, fold_convert (ptr_type, base), -fold_convert (ptr_type, addend)); + addr = build2 (POINTER_PLUS_EXPR, ptr_type, fold_convert (ptr_type, base), +fold_convert (sizetype, addend)); internal_post = NULL; gimplify_expr (addr, pre_p, internal_post, is_gimple_val, fb_rvalue); append_to_statement_list (internal_post, pre_p); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #4 from pinskia at gcc dot gnu dot org 2007-07-12 21:01 --- *** Bug 32744 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||ro at techfak dot uni- ||bielefeld dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #2 from falk at debian dot org 2007-07-05 13:01 --- I tried this patch from Andrew Pinski: Index: gcc/config/alpha/alpha.c === --- gcc/config/alpha/alpha.c(revision 126053) +++ gcc/config/alpha/alpha.c(working copy) @@ -6111,8 +6111,8 @@ valist, offset_field, NULL_TREE); t = make_tree (ptr_type_node, virtual_incoming_args_rtx); - t = build2 (PLUS_EXPR, ptr_type_node, t, - build_int_cst (NULL_TREE, offset)); + t = build2 (POINTER_PLUS_EXPR, ptr_type_node, t, + size_int (offset)); t = build2 (GIMPLE_MODIFY_STMT, TREE_TYPE (base_field), base_field, t); TREE_SIDE_EFFECTS (t) = 1; expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL); @@ -6172,8 +6173,8 @@ } /* Build the final address and force that value into a temporary. */ - addr = build2 (PLUS_EXPR, ptr_type, fold_convert (ptr_type, base), -fold_convert (ptr_type, addend)); + addr = build2 (POINTER_PLUS_EXPR, ptr_type, fold_convert (ptr_type, base), +fold_convert (sizetype, addend)); internal_post = NULL; gimplify_expr (addr, pre_p, internal_post, is_gimple_val, fb_rvalue); append_to_statement_list (internal_post, pre_p); which allows bootstrap to continue, but it still fails: checking for alphaev68-unknown-linux-gnu-gcc... /src/gcc-2007.07.05/build/./gcc/xgcc -B/src/gcc-2007.07.05/build/./gcc/ -B/usr/local/alphaev68-unknown-linux-gnu/bin/ -B/usr/local/alphaev68-unknown-linux-gnu/lib/ -isystem /usr/local/alphaev68-unknown-linux-gnu/include -isystem /usr/local/alphaev68-unknown-linux-gnu/sys-include checking for suffix of object files... configure: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. make[2]: *** [configure-stage2-target-libgcc] Error 1 make[2]: Leaving directory `/src/gcc-2007.07.05/build' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/src/gcc-2007.07.05/build' make: *** [all] Error 2 libgcc/config.log says: configure:2566: checking for suffix of object files configure:2587: /src/gcc-2007.07.05/build/./gcc/xgcc -B/src/gcc-2007.07.05/build/./gcc/ -B/usr/local/alphaev68-unknown-linux-gnu/bin/ -B/usr/loc al/alphaev68-unknown-linux-gnu/lib/ -isystem /usr/local/alphaev68-unknown-linux-gnu/include -isystem /usr/local/alphaev68-unknown-linux-gnu/sys- include -c -g -O2 conftest.c 5 built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) built-in:0: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. configure:2590: $? = 1 configure: failed program was: | /* confdefs.h. */ | | #define PACKAGE_NAME GNU C Runtime Library | #define PACKAGE_TARNAME libgcc | #define PACKAGE_VERSION 1.0 | #define PACKAGE_STRING GNU C Runtime Library 1.0 | #define PACKAGE_BUGREPORT | /* end confdefs.h. */ | | int | main () | { | | ; | return 0; | } configure:2604: error: cannot compute suffix of object files: cannot compile -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #3 from pinskia at gcc dot gnu dot org 2007-07-05 18:48 --- built-in:0: error: nonnull argument references non-pointer operand (argument 1, operand 1) That means we are miscompiling some part of cc1 somewhere. Which I doubt is a pointer plus issue because I have gotten no bug reports of wrong code yet. It might be a df issue. Can roll back, right before pointer plus and try bootstrapping there? -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||build, wrong-code Last reconfirmed|-00-00 00:00:00 |2007-07-05 18:48:49 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
-- mmitchel at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522
[Bug target/32522] [4.3 Regression] Bootstrap failure on Alpha due to pointer-plus changes
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-06-27 22:57 --- I already gave Falk a patch to try. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|bootstrap |target Keywords||ice-on-valid-code Summary|Bootstrap failure on Alpha |[4.3 Regression] Bootstrap |due to pointer-plus changes |failure on Alpha due to ||pointer-plus changes Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32522