From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29352 invoked by alias); 25 Aug 2002 01:06:54 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 28342 invoked by uid 71); 25 Aug 2002 01:06:03 -0000 Resent-Date: 25 Aug 2002 01:06:03 -0000 Resent-Message-ID: <20020825010603.28341.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, linux_dr@yahoo.com Received: (qmail 29208 invoked by uid 61); 24 Aug 2002 23:12:17 -0000 Message-Id: <20020824231217.29207.qmail@sources.redhat.com> Date: Sat, 24 Aug 2002 18:06:00 -0000 From: linux_dr@yahoo.com Reply-To: linux_dr@yahoo.com To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version: gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: optimization/7714: inlining of function with inline assembler causes duplicate assembler lables X-SW-Source: 2002-08/txt/msg00526.txt.bz2 List-Id: >Number: 7714 >Category: optimization >Synopsis: inlining of function with inline assembler causes duplicate assembler lables >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Sat Aug 24 18:06:03 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Loren Osborn >Release: gcc 3.1.1 >Organization: >Environment: Linux Mandrake 8.1 >Description: I found a similar bug to PR233, and was disappointed to see that PR233 was closed, appearantly just because the URL to the test case became a broken link. I think I have found a manifistaion of the same bug, although it doesn't involve unrolling loops. It involves inlining of functions with inline-assembler lables in it... I have included a minimal test case As far as I am aware, the code itself (while not technically vailid ANSI C, because ANSI C doesn't explicitly allow inline assembler) should be valid in gcc. >How-To-Repeat: gcc -O3 -c -o InlineLableBug.o InlineLableBug.c >Fix: gcc should probably prepend (or append) a string to each assembler label that is unique to each instantiation of that function. >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="InlineLableBug.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="InlineLableBug.c"