From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8829 invoked by alias); 27 Sep 2005 22:22:28 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 8481 invoked by alias); 27 Sep 2005 22:22:10 -0000 Date: Tue, 27 Sep 2005 22:22:00 -0000 Message-ID: <20050927222210.8480.qmail@sourceware.org> From: "hubicka at ucw dot cz" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20050921173132.24003.laurent@guerby.net> References: <20050921173132.24003.laurent@guerby.net> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug ada/24003] [4.1 Regression] ACATS FAIL 17 regressions on x86-linux, fixed and decimal arithmetic broken X-Bugzilla-Reason: CC X-SW-Source: 2005-09/txt/msg03432.txt.bz2 List-Id: ------- Additional Comments From hubicka at ucw dot cz 2005-09-27 22:22 ------- Subject: Re: [4.1 Regression] ACATS FAIL 17 regressions on x86-linux, fixed and decimal arithmetic broken > > ------- Additional Comments From laurent at guerby dot net 2005-09-23 19:46 ------- > Beginning of the -fdump-tree-all diff before and after patch. > > -- before/s-arit64.adb.00.expand 2005-09-23 20:01:11.000000000 +0200 > +++ after/s-arit64.adb.00.expand 2005-09-23 19:41:23.000000000 +0200 > @@ -2795,143 +2795,119 @@ > (call_insn/u 18 17 19 (set (reg:SI 0 ax) > (call (mem:QI (symbol_ref:SI ("system__arith_64__hi") [flags 0x3] > ) [0 S1 A8]) > (const_int 8 [0x8]))) -1 (nil) > - (nil) > + (expr_list:REG_EH_REGION (const_int 0 [0x0]) > + (nil)) While trying to track down this problem I got lost in the handling of EH and libcall blocks. It looks like emit_libcall can detect possibly trapping libcalls but elliminates the the EH_REGION note when -fnon-call-exceptions is set. When it is not the EH_REGION notes are set to -1, while for non-trapping calls in calls.c the region 0 is used. I am somwhat lost in this code and it seems to me that the failures might come from different EH delivery. Honza -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24003