From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15776 invoked by alias); 17 May 2004 04:33:11 -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 15746 invoked by uid 48); 17 May 2004 04:33:11 -0000 Date: Mon, 17 May 2004 19:20:00 -0000 From: "dann at godzilla dot ics dot uci dot edu" To: gcc-bugs@gcc.gnu.org Message-ID: <20040517043308.15484.dann@godzilla.ics.uci.edu> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug tree-optimization/15484] New: [tree-ssa] bool and short function arguments promoted to int X-Bugzilla-Reason: CC X-SW-Source: 2004-05/txt/msg01808.txt.bz2 List-Id: This code: _Bool bar (_Bool a); _Bool foo1 (_Bool a) { if (bar(a)) return 1; else return 0; } static short barshort (short a); short foo1short (short a) { if (barshort(a)) return 1; else return 0; } is transformed to: (when using -O -fdump-tree-generic) foo1 (a) { int T.17; _Bool T.18; T.17 = (int)a; <------ this is not needed T.18 = bar (T.17); if (T.18 != 0) { return 1; } else { return 0; } } foo1short (a) { int T.19; short int T.20; T.19 = (int)a; <------ this is not needed T.20 = barshort (T.19); if (T.20 != 0) { return 1; } else { return 0; } } the promotions shown are not needed, at least not at this point in the compilation process. -- Summary: [tree-ssa] bool and short function arguments promoted to int Product: gcc Version: 3.5.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dann at godzilla dot ics dot uci dot edu CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15484