From owner-cvs-all Wed May 1 12:57:56 2002 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 29B1F37B416; Wed, 1 May 2002 12:57:47 -0700 (PDT) Received: (from obrien@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g41JvlS60273; Wed, 1 May 2002 12:57:47 -0700 (PDT) (envelope-from obrien) Message-Id: <200205011957.g41JvlS60273@freefall.freebsd.org> From: "David E. O'Brien" Date: Wed, 1 May 2002 12:57:47 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/contrib/gcc integrate.c stmt.c X-FreeBSD-CVS-Branch: RELENG_4 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG obrien 2002/05/01 12:57:47 PDT Modified files: (Branch: RELENG_4) contrib/gcc integrate.c stmt.c Log: 1. integrate.c -- If inline function which uses exception handling is being integrated into a function, which does not itself contain any try/catch constructs, several global flags values are not set correctly. The current_function_has_nonlocal_label flags is not getting set in particular. This allows GCC to allocate registers across function calls. When exception is thrown in called functions, the exception handler is reached with global registers (ebx, edi, esi) content clobbered without gcc ever noticing that. 2. expr.c -- In DWARF2 case stack was getting adjusted at the right time as a side effect of expand_eh_region_end. sjlj-exceptions do not use this function so a call is added to do_pending_stack_adjust in its place. See the FreeBSD PR for code showing these problems. Note the STLPort test suite and OpenOffice port will now build and work. PR: 37423 Submitted by: Alexander Kabaev FSF GCC PR: c++/6467 Revision Changes Path 1.1.1.3.2.1 +16 -0 src/contrib/gcc/integrate.c 1.1.1.4.2.2 +6 -0 src/contrib/gcc/stmt.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message