From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16430 invoked by alias); 18 Feb 2002 15:46:08 -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 16372 invoked by uid 71); 18 Feb 2002 15:46:03 -0000 Resent-Date: 18 Feb 2002 15:46:02 -0000 Resent-Message-ID: <20020218154602.16371.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, pb@nexus.co.uk Received:(qmail 15212 invoked by uid 61); 18 Feb 2002 15:42:23 -0000 Message-Id:<20020218154223.15211.qmail@sources.redhat.com> Date: Mon, 18 Feb 2002 07:46:00 -0000 From: pb@nexus.co.uk Reply-To: pb@nexus.co.uk To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: optimization/5720: useless jump to call of nonreturning function X-SW-Source: 2002-02/txt/msg00430.txt.bz2 List-Id: >Number: 5720 >Category: optimization >Synopsis: useless jump to call of nonreturning function >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: pessimizes-code >Submitter-Id: net >Arrival-Date: Mon Feb 18 07:46:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Debian report #106866, submitted by >Release: 3.0.3 >Organization: >Environment: i686-linux >Description: Compile the attached file with -O2. The generated assembler includes: movl intpending, %eax testl %eax, %eax je .L6 jmp .L11 .p2align 2 .L9: orl $1, %esi testl %ebx, %ebx [...] .L11: call doint The "doint" function is marked with attribute((noreturn)) and there are no other branches to .L11. The extra "jmp .L11" brings no benefit - the "call doint" could be put directly in its place. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: