LLVM Bugzilla is read-only and represents the historical archive of all LLVM issues filled before November 26, 2021. Use github to submit LLVM bugs

Bug 45 - [x86] The X86 backend miscompiles 'local-alloc.c' from 176.gcc
Summary: [x86] The X86 backend miscompiles 'local-alloc.c' from 176.gcc
Status: RESOLVED FIXED
Alias: None
Product: libraries
Classification: Unclassified
Component: Backend: X86 (show other bugs)
Version: trunk
Hardware: PC Linux
: P normal
Assignee: Chris Lattner
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-14 15:01 PDT by Chris Lattner
Modified: 2010-02-22 12:48 PST (History)
1 user (show)

See Also:
Fixed By Commit(s):


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Lattner 2003-10-14 15:01:45 PDT
Subject says it all.  The JIT and static backends both execute the 176.gcc
benchmark incorrectly when the local-alloc.c file is compiled with the LLVM x86
backend.

All other files are compiled correctly.
Comment 1 Chris Lattner 2003-10-18 16:58:49 PDT
bugpoint informs me that:

*** The following functions are being miscompiled: find_free_reg

I will investigate!  Thanks bugpoint!
Comment 2 Chris Lattner 2003-10-18 18:56:17 PDT
The X86 backend is letting computation of constant expressions in PHI nodes
clobber condition code registers.  Here's a testcase smaller than 176.gcc:

http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20031013/008296.html

Comment 3 Chris Lattner 2003-10-18 19:36:05 PDT
This bug is fixed:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20031013/008297.html

176.gcc now works with the x86 backend.