From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9695 invoked by alias); 7 Sep 2004 13:59:03 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 9687 invoked from network); 7 Sep 2004 13:59:02 -0000 Received: from unknown (HELO vlsi1.ultra.nyu.edu) (128.122.140.213) by sourceware.org with SMTP; 7 Sep 2004 13:59:02 -0000 Received: by vlsi1.ultra.nyu.edu (4.1/1.34) id AA25285; Tue, 7 Sep 04 10:02:02 EDT Date: Tue, 07 Sep 2004 13:59:00 -0000 From: kenner@vlsi1.ultra.nyu.edu (Richard Kenner) Message-Id: <10409071402.AA25285@vlsi1.ultra.nyu.edu> To: amacleod@redhat.com Subject: Re: Problem with operand handling Cc: gcc@gcc.gnu.org X-SW-Source: 2004-09/txt/msg00292.txt.bz2 what is 'decorator_traceback'? I've got to run and will be back on this afternoon, but I'll put the .t18.ssa file below. It's small enough. Did you call mark_call_clobbered() on decorator_traceback? If so, why if it passes all the tests in is_gimple_reg.. ie, its not volatile, its address is not taken, and its not global... A quick GDB session shows that it is called for that variable, from add_may_alias. ;; Function GNAT.EXCEPTION_TRACES.DECORATOR_WRAPPER (gnat__exception_traces__decorator_wrapper) GNAT.EXCEPTION_TRACES.DECORATOR_WRAPPER (traceback, len) { system__traceback_entries__traceback_entry___XDLU_0__18446744073709551615[1 .. T.2] & decorator_traceback; typedef system__traceback_entries__traceback_entry___XDLU_0__18446744073709551615 gnat__exception_traces__decorator_wrapper__Tdecorator_tracebackS[T.5]; typedef struct ; typedef gnat__exception_traces__decorator_wrapper__TTdecorator_tracebackSP1___XDL_1 gnat__exception_traces__decorator_wrapper__TTdecorator_tracebackSP1___XDL_1; natural___XDLU_0__2147483647 gnat__exception_traces__decorator_wrapper__TTdecorator_tracebackSP1___U; struct string___XUP T.11; system__traceback_entries__traceback_entry___XDLU_0__18446744073709551615[(long int) .P_BOUNDS->LB0 .. (long int) .P_BOUNDS->UB0] * decorator_traceback.10; struct ada__exceptions__traceback__tracebacks_array___XUB T.9; struct ada__exceptions__traceback__tracebacks_array___XUP T.8; struct string___XUP (*gnat__exception_traces__traceback_decorator) (struct ada__exceptions__traceback__tracebacks_array___XUP) gnat__exception_traces__current_decorator.7; struct string___XUP T.6; long int T.5; bit_size_type T.4; bit_size_type T.3; long int T.2; long int T.1; integer len.0; : gnat__exception_traces__decorator_wrapper__TTdecorator_tracebackSP1___U_2 = len_1; len.0_3 = (integer) len_1; len.0_4 = (integer) len_1; T.1_5 = (long int) len.0_4; T.2_6 = MAX_EXPR ; len.0_7 = (integer) len_1; T.1_8 = (long int) len.0_7; T.2_9 = MAX_EXPR ; T.3_10 = (bit_size_type) T.2_9; T.4_11 = T.3_10 * 64; len.0_12 = (integer) len_1; T.1_13 = (long int) len.0_12; T.2_14 = MAX_EXPR ; T.5_15 = T.2_14 * 8; decorator_traceback_17 = (system__traceback_entries__traceback_entry___XDLU_0__18446744073709551615[1 .. T.2] &) traceback_16; gnat__exception_traces__current_decorator.7_19 = gnat__exception_traces__current_decorator; len.0_20 = (integer) len_1; T.9.LB0 = 1; T.9.UB0 = len.0_20; decorator_traceback.10_24 = (system__traceback_entries__traceback_entry___XDLU_0__18446744073709551615[(long int) .P_BOUNDS->LB0 .. (long int) .P_BOUNDS->UB0] *) decorator_traceback_17; T.8.P_ARRAY = decorator_traceback.10_24; T.8.P_BOUNDS = &T.9; T.11 = gnat__exception_traces__current_decorator.7_19 (T.8); T.6 = T.11; return T.6; }