From bugzilla-daemon at cs.uiuc.edu Sat Sep 1 13:40:01 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sat, 1 Sep 2007 13:40:01 -0500
Subject: [LLVMbugs] [Bug 1633] New: Verifier doesn't fully verify GC
intrinsic
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1633
Summary: Verifier doesn't fully verify GC intrinsic
Product: libraries
Version: trunk
Platform: All
OS/Version: All
Status: ASSIGNED
Severity: minor
Priority: P2
Component: Core LLVM classes
AssignedTo: gordonhenriksen at mac.com
ReportedBy: gordonhenriksen at mac.com
CC: llvmbugs at cs.uiuc.edu
The llvm.gc* intrinsics have restrictions beyond what the verifier checks.
llvm.gcroot: 'The first argument specifies the address of a stack object that
contains the root pointer. The second pointer (which must be either a constant
or a global value address) contains the meta-data to be associated with the
root.'
- Not checked: Type of first argument is a pointer to a pointer.
- Not checked: First argument is an alloca (or a bitcast of an alloca).
- Not checked: Second argument is a global or a constant.
llvm.gcread: 'The second argument is the address to read from, which should be
an address allocated from the garbage collector. The first object is a pointer
to the start of the referenced object, if needed by the language runtime
(otherwise null).'
- Not checked: Type of second argument is a pointer to a pointer.
llvm.gcwrite: 'The first argument is the reference to store, the second is the
start of the object to store it to, and the third is the address of the field
of Obj to store to. If the runtime does not require a pointer to the object,
Obj may be null.'
- Not checked: Type of third argument is a pointer to a pointer.
It should be easy to fix this by adding a follow-up switch to
Verifier::visitIntrinsicFunctionCall at lib/VMCore/Verifier.cpp:1077.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Sat Sep 1 16:41:27 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sat, 1 Sep 2007 16:41:27 -0500
Subject: [LLVMbugs] [Bug 1634] New: llvm-g++ fails an assertion test
compiling on x86 (OS X)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1634
Summary: llvm-g++ fails an assertion test compiling on x86 (OS X)
Product: cfe
Version: unspecified
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Keywords: compile-fail
Severity: critical
Priority: P2
Component: LLVM Codegen
AssignedTo: unassignedbugs at nondot.org
ReportedBy: arobison at cs.utah.edu
CC: llvmbugs at cs.uiuc.edu
The following command line:
/Users/arobison/Development/llvm-gcc/bin/llvm-g++ -DManta_Engine_EXPORTS
-Wall -Wno-strict-aliasing -DSCI_NOPERSISTENT -march=nocona -mtune=nocona
-msse -msse2 -msse3 -mfpmath=sse -O3 -DNDEBUG -g3 -fgcse-sm -funroll-loops
-fstrict-aliasing -fsched-interblock -ffast-math -freorder-blocks -fPIC -c
compiler-ice.cc
Produces the following output:
:1:1: warning: "__STDC_HOSTED__" redefined:1:1: warning:
this is the location of the previous definition
Instructions.cpp:210: failed assertion `(i >= FTy->getNumParams() ||
FTy->getParamType(i) == Params[i]->getType()) && "Calling a function with a bad
signature!"'
/Users/arobison/Development/Manta/Engine/Control/RTRT.cc: In member function
'virtual void Manta::RTRT::unregisterCallback(Manta::CallbackHandle*)':
/Users/arobison/Development/Manta/Engine/Control/RTRT.cc:276: internal compiler
error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See for instructions.
g++ does not produce errors compiling this code.
Preprocessed file that produces the error attached.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Sun Sep 2 10:27:38 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sun, 2 Sep 2007 10:27:38 -0500
Subject: [LLVMbugs] [Bug 1635] New: Syntax for 'call' Instruction is wrong
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1635
Summary: Syntax for 'call' Instruction is wrong
Product: Documentation
Version: trunk
Platform: All
URL: http://llvm.org/docs/LangRef.html
OS/Version: All
Status: ASSIGNED
Severity: normal
Priority: P2
Component: General docs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nicholas at mxc.ca
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1099)
--> (http://llvm.org/bugs/attachment.cgi?id=1099)
Proposed change to LangRef.html
Currently the syntax for the call instruction reads:
= [tail] call [cconv] * ()
Which is mistaken. A long syntax call instruction has two types, one for the
CallInst itself (aka. the return type) and an optional one for the fnptrval.
The current documentation claims that * is optional, implying that a call
can be written with no type at all.
Please review the attached patch.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Sun Sep 2 13:27:17 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sun, 2 Sep 2007 13:27:17 -0500
Subject: [LLVMbugs] [Bug 1636] New: crtfastmath.c is miscompiled
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1636
Summary: crtfastmath.c is miscompiled
Product: tools
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: llvm-gcc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
CC: llvmbugs at cs.uiuc.edu
crtfastmath.c is miscompiled at least on x86/linux. See PR1634 for details.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Tue Sep 4 15:21:23 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Tue, 4 Sep 2007 15:21:23 -0500
Subject: [LLVMbugs] [Bug 1613] ScheduleDAG.cpp:464 regclass mismatch
In-Reply-To:
Message-ID: <200709042021.l84KLN5X012806@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1613
Evan Cheng changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #4 from Evan Cheng 2007-09-04 15:21:23 ---
Fixed.
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053258.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Tue Sep 4 15:39:54 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Tue, 4 Sep 2007 15:39:54 -0500
Subject: [LLVMbugs] [Bug 1632] codegen of exceptions broken on linux x86-64.
Brakes gcc bootstrap
In-Reply-To:
Message-ID: <200709042039.l84Kds9V013636@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1632
Evan Cheng changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #4 from Evan Cheng 2007-09-04 15:39:54 ---
Documentation:
i32 %llvm.eh.selector(i8*, i8*, i8*, ...)
Intrinsics.td:
def int_eh_selector : Intrinsic<[llvm_i32_ty, llvm_ptr_ty, llvm_ptr_ty,
llvm_vararg_ty]>;
SelectionDAGISel.cpp:
// Insert the EHSELECTION instruction.
SDVTList VTs = DAG.getVTList(TLI.getPointerTy(),
MVT::Other);
This is the mismatch.
I believe the bug is in SelectionDAGISel.cpp, if that's not the case. Please
revert my fix, fix Intrinsics.td and the documentation.
Fix is:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053259.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 06:45:44 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 06:45:44 -0500
Subject: [LLVMbugs] [Bug 1628] EH shouldn't generate unnecessary labels
In-Reply-To:
Message-ID: <200709051145.l85BjiMZ002116@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1628
Duncan Sands changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #11 from Duncan Sands 2007-09-05 06:45:43 ---
Fixed, patch here:
http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/DwarfWriter.cpp?r1=41717&r2=41718&view=diff&pathrev=41718
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 08:54:51 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 08:54:51 -0500
Subject: [LLVMbugs] [Bug 1612] Problems with exception handling when using
LLVM JIT
In-Reply-To:
Message-ID: <200709051354.l85DspXJ008598@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1612
Samit Basu changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |INVALID
--- Comment #13 from Samit Basu 2007-09-05 08:54:50 ---
OK - I finally had some time to track this down. Reid, I don't know related
this is to your problems, but Chris was essentially right - the issues appear
to be entirely on my end - not LLVM related, although LLVM induced. Here's the
synopsis of what I found:
1. gcc 3.4.6 - exceptions do _not_ work properly when mixing LLVM code (which
uses -fomit-frame-pointer) with code that does not use this flag. So even
though my example code worked, my application did not.
2. gcc 4.1.2 - Fedora Core 6 - this actually works fine. The problem I had
was that I mistakenly installed the llvm-gcc front end into my home directory.
This put the llvm-gcc libstdc++.a in my path, which was picked up by the
regular gcc (instead of its own libstdc++.so). Hence, exception handling was
broken.
3. gcc 4.1.2 - Fedora Core 7 - worked fine, because I never installed the
llvm-gcc front end.
I'm closing out this bug, although someone may want to mention the issue with
3.4.6 in the broken compiler list (and maybe warn users to be careful about
where they install llvm-gcc...).
Thanks again everyone for such a cool product.
Samit
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 12:23:58 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 12:23:58 -0500
Subject: [LLVMbugs] [Bug 1632] codegen of exceptions broken on linux x86-64.
Brakes gcc bootstrap
In-Reply-To:
Message-ID: <200709051723.l85HNwVw016438@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1632
Rafael ??vila de Esp??ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|CLOSED |REOPENED
Resolution|FIXED |
--- Comment #6 from Rafael ??vila de Esp??ndola 2007-09-05 12:23:58 ---
reopening...
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 13:43:53 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 13:43:53 -0500
Subject: [LLVMbugs] [Bug 1637] New: Instcombine turnes true expression into
false
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1637
Summary: Instcombine turnes true expression into false
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: Scalar Optimizations
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
CC: llvmbugs at cs.uiuc.edu
Consider the following code used to check access within array bounds:
define i32 @main(i32 %argc, i8** %argv) {
main.0:
%arr = malloc i8, i32 65536 ; [#uses=3]
%arrmax = getelementptr i8* %arr, i32 65536 ;
[#uses=1]
%head.0 = getelementptr i8* %arr, i32 65536 ;
[#uses=2]
%test.1 = icmp uge i8* %head.0, %arrmax ; [#uses=1]
%test.2 = icmp ult i8* %head.0, %arr ; [#uses=1]
%test.3 = or i1 %test.1, %test.2 ; [#uses=1]
br i1 %test.3, label %main.1, label %main.2
main.1: ; preds = %main.0
call i32 @putchar( i32 89 ) ; :0 [#uses=0]
br label %main.3
main.2: ; preds = %main.0
call i32 @putchar( i32 78 ) ; :1 [#uses=0]
br label %main.3
main.3: ; preds = %main.2, %main.1
call i32 @putchar( i32 10 ) ; :2 [#uses=0]
ret i32 0
}
instcombine deletes all code except "main.2" bb, which is incorrect.
Running opt -instcombine -debug shows pretty interesting things:
INSTCOMBINE ITERATION #0 on main
IC: Mod = %test.1 = icmp uge i8* %head.0, %arrmax ;
[#uses=1]
New = %test.1 = icmp uge i8* %head.0, %arrmax ;
[#uses=0]
IC: Mod = %test.3 = or i1 false, %test.2 ; [#uses=1]
New = %test.3 = or i1 %test.2, false ; [#uses=0]
IC: Old = %test.2 = icmp ult i8* %head.0, %arr ;
[#uses=1]
New = icmp slt i64 65536, 0 ; : [#uses=0]
IC: ConstFold to: i1 false from: %test.2 = icmp slt i64 65536, 0
; [#uses=1]
IC: DCE: %head.0 = getelementptr i8* %arr, i32 65536 ;
[#uses=0]
IC: DCE: %arrmax = getelementptr i8* %arr, i32 65536 ;
[#uses=0]
IC: DCE: %arr = malloc i8, i32 65536 ; [#uses=0]
INSTCOMBINE ITERATION #1 on main
IC: DCE: call i32 @putchar( i32 89 ) ; :0 [#uses=0]
Note:
1. It doesn't show the change of first operand of OR to false
2. The change is incorrect, because 65536 uge 65536 = true
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 16:55:09 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 16:55:09 -0500
Subject: [LLVMbugs] [Bug 1638] New: povray and lencod are failing on Mac OS
X / PPC
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1638
Summary: povray and lencod are failing on Mac OS X / PPC
Product: libraries
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: major
Priority: P2
Component: Backend: PowerPC
AssignedTo: unassignedbugs at nondot.org
ReportedBy: evan.cheng at apple.com
CC: llvmbugs at cs.uiuc.edu
Looks like these have been failing for a while.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 20:11:15 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 20:11:15 -0500
Subject: [LLVMbugs] [Bug 1637] Instcombine turnes true expression into false
In-Reply-To:
Message-ID: <200709060111.l861BFQF032308@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1637
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|enhancement |normal
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|--- |2.1
--- Comment #3 from Nick Lewycky 2007-09-05 20:11:12 ---
Fixed.
Patch here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053286.html
Testcase here: test/InstCombine/2007-09-05-EqualGEP.ll
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Wed Sep 5 20:57:08 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Wed, 5 Sep 2007 20:57:08 -0500
Subject: [LLVMbugs] [Bug 1639] New: GlobalOpt can' t see through PHI nodes
when doing SROA on malloc's
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1639
Summary: GlobalOpt can't see through PHI nodes when doing SROA on
malloc's
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: resistor at mac.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1102)
--> (http://llvm.org/bugs/attachment.cgi?id=1102)
gvn-out.bc
GlobalOpt, when it tries to do SROA on malloc's, must ensure that all uses of
the global would trap if the global were null. This check, however, cannot see
through PHI nodes, which causes a regression on 179.art when using GVN.
Attached is the example bitcode. Note that GlobalOpt fails to SROA the global
variable f1_layer because of the instruction %tmp11.rle in init_net().
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Thu Sep 6 00:57:17 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Thu, 6 Sep 2007 00:57:17 -0500
Subject: [LLVMbugs] [Bug 1640] New: Compiler crash
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1640
Summary: Compiler crash
Product: tools
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P2
Component: llvm-gcc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: llvm at rickb.com
CC: llvmbugs at cs.uiuc.edu
Compiler crashes when trying to compile the attached code. Compiling for Mach-O
ARM. The crash actually occurs when trying to compile the function pointer call
on line 4228.
SelectionDAGISel.cpp:3629: failed assertion `0 && "matching constraints for
memory operands unimp"'
mame/062/src/cpu/z80/z80.c:4583: internal compiler error: Abort trap
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Thu Sep 6 04:52:16 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Thu, 6 Sep 2007 04:52:16 -0500
Subject: [LLVMbugs] [Bug 1641] New: ICE: Global initializer should be
constant!
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1641
Summary: ICE: Global initializer should be constant!
Product: tools
Version: trunk
Platform: All
OS/Version: MacOS X
Status: NEW
Severity: enhancement
Priority: P2
Component: llvm-gcc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: isanbard at gmail.com
CC: llvmbugs at cs.uiuc.edu
This program:
struct A {
unsigned long l;
};
static void bork() {
const unsigned long vcgt = 'vcgt';
struct A a = { vcgt };
}
void foo() {
bork();
}
Compiles under GCC but gives this error for LLVM-GCC:
$ llvm-gcc -arch ppc -Os -c testcase.i
Assertion failed: ((TREE_CONSTANT(DECL_INITIAL(decl)) ||
TREE_CODE(DECL_INITIAL(decl)) == STRING_CST) && "Global initializer should be
constant!"), function emit_global_to_llvm, file
../../llvm-gcc-4.0.src/gcc/llvm-backend.cpp, line 777.
testcase.i: In function 'foo':
testcase.i:9: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See for instructions.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Thu Sep 6 11:26:28 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Thu, 6 Sep 2007 11:26:28 -0500
Subject: [LLVMbugs] [Bug 1642] New: SjLj (setjmp/longjmp) -based exception
handling in LLVM-GCC seems to be unsupported
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1642
Summary: SjLj (setjmp/longjmp)-based exception handling in LLVM-
GCC seems to be unsupported
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: All
Status: NEW
Keywords: missing-feature, portability
Severity: enhancement
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nightwatch41 at gmail.com
CC: llvmbugs at cs.uiuc.edu
builtin_setjmp() and builtin_longjmp() are unsupported in the latest LLVM-GCC
(per the FIXME at llvm-convert.cpp:4369); however, defining
DONT_USE_BUILTIN_SETJMP as a workaround does not cause the appropriate buffers
to be created at all. cf. except.c, which has several blocks of code to create
the appropriate buffers, bracketed with "if (USING_SJLJ_EXCEPTIONS)".
SjLj-type exceptions would be very helpful for LLVM-GCC, because they're
inherently more portable than the standard target-specific exceptions are.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Thu Sep 6 22:01:01 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Thu, 6 Sep 2007 22:01:01 -0500
Subject: [LLVMbugs] [Bug 1643] New: Flags should be different from an expand
parameter and a divided parameter
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1643
Summary: Flags should be different from an expand parameter and a
divided parameter
Product: libraries
Version: trunk
Platform: All
OS/Version: All
Status: NEW
Severity: minor
Priority: P2
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nicolas.geoffray at lip6.fr
CC: llvmbugs at cs.uiuc.edu
Currently, when doing a call or for formal arguments, SelectionDAG gives a
OrigAlignmentFlag to:
- arguments whose type is expanded (eg i8 -> i32)
- broken up arguments (eg i64 -> i32 + i32)
However the two cases need to have a different flag in the PPC32 ELF ABI. In
this target, arguments are aligned when they are double word, for example:
declare void @foo(i32 %a, i64 %c)
%a goes into register 1
%c goes into registers 3 and 4
The PPC code generator sees three arguments for this function of type i32 and
the last argument has the flag OrigAlignmentFlag. Currently, it can not know if
the last argument is an i64 divided into two i32 or if the last argument is i1,
i8 or i16 which are expanded.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Fri Sep 7 03:19:07 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Fri, 7 Sep 2007 03:19:07 -0500
Subject: [LLVMbugs] [Bug 1641] ICE: Global initializer should be constant!
In-Reply-To:
Message-ID: <200709070819.l878J7eL005327@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1641
Bill Wendling changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #13 from Bill Wendling 2007-09-07 03:19:07 ---
Fixed:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053310.html
-bw
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Fri Sep 7 06:49:38 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Fri, 7 Sep 2007 06:49:38 -0500
Subject: [LLVMbugs] [Bug 1632] codegen of exceptions broken on linux x86-64.
Brakes gcc bootstrap
In-Reply-To:
Message-ID: <200709071149.l87BnciM014607@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1632
Anton Korobeynikov changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |FIXED
--- Comment #16 from Anton Korobeynikov 2007-09-07 06:49:31 ---
Should be fixed in:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053314.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053315.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053316.html
eh.select /eh.typeid.for was splitted into i32/i64 versions.
Please reopen, if stuff is failing again :)
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Fri Sep 7 10:48:08 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Fri, 7 Sep 2007 10:48:08 -0500
Subject: [LLVMbugs] [Bug 1632] codegen of exceptions broken on linux x86-64.
Brakes gcc bootstrap
In-Reply-To:
Message-ID: <200709071548.l87Fm8R9006360@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1632
Rafael ??vila de Esp??ndola changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
--- Comment #17 from Rafael ??vila de Esp??ndola 2007-09-07 10:48:07 ---
The program
void g();
void
f() throw()
{
g();
}
now fails with
/home/espindola/gcc-build/gcc/cc1plus test.cc -emit-llvm
void f()
Analyzing compilation unit
Performing intraprocedural optimizations
Assembling functions:
void f()
cc1plus: /home/espindola/llvm/lib/VMCore/Instructions.cpp:2100:
llvm::CmpInst::CmpInst(llvm::Instruction::OtherOps, short unsigned int,
llvm::Value*, llvm::Value*, const std::string&, llvm::Instruction*): Assertion
`Op0Ty == Op1Ty && "Both operands to ICmp instruction are not of the same
type!"' failed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Fri Sep 7 15:16:54 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Fri, 7 Sep 2007 15:16:54 -0500
Subject: [LLVMbugs] [Bug 1644] New: llvm-gcc-4.0 Mac OS X build failure...
maybe my assember is too old?
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1644
Summary: llvm-gcc-4.0 Mac OS X build failure... maybe my assember
is too old?
Product: new-bugs
Version: unspecified
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: tim at tenkan.org
CC: llvmbugs at cs.uiuc.edu, tim at tenkan.org
Created an attachment (id=1105)
--> (http://llvm.org/bugs/attachment.cgi?id=1105)
patch to restore buildability on mac os x 10.4.10
When attempting to build llvm-gcc-4.0 from
http://llvm.org/svn/llvm-project/llvm-gcc-4.0/trunk, revision 41769, I saw the
following failure:
/Users/tim/code/c/llvm-gcc/gcc/xgcc -B/Users/tim/code/c/llvm-gcc/gcc/
-B/Users/tim/code/c/llvm-gcc/dst/i686-apple-darwin8/bin/
-B/Users/tim/code/c/llvm-gcc/dst/i686-apple-darwin8/lib/ -isystem
/Users/tim/code/c/llvm-gcc/dst/i686-apple-darwin8/include -isystem
/Users/tim/code/c/llvm-gcc/dst/i686-apple-darwin8/sys-include -O2 -DIN_GCC
-W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc-4.0/gcc
-I../../llvm-gcc-4.0/gcc/. -I../../llvm-gcc-4.0/gcc/../include -I./../intl
-I../../llvm-gcc-4.0/gcc/../libcpp/include -DL_gcov -c
../../llvm-gcc-4.0/gcc/libgcov.c -o libgcc/./_gcov.o
In file included from ../../llvm-gcc-4.0/gcc/gcov-io.h:239,
from ../../llvm-gcc-4.0/gcc/libgcov.c:51:
./auto-host.h:23:1: warning: "DEFAULT_USE_CXA_ATEXIT" redefined
In file included from ./tm.h:7,
from ../../llvm-gcc-4.0/gcc/libgcov.c:39:
../../llvm-gcc-4.0/gcc/defaults.h:712:1: warning: this is the location of the
previous definition
{standard input}:2892:Rest of line ignored. 1st junk character valued 44 (,).
make[2]: *** [libgcc/./_gcov.o] Error 1
make[1]: *** [stmp-multilib] Error 2
make: *** [all-gcc] Error 2
I haven't investigated the warning, but the error on line 2892 turns out to be
an assembler directive that my assembler, (apple's gas version 1.38 that came
with OS/X 10.4.10), doesn't support:
.comm ___gcov_var,4128,5
The .comm directive picks an alignment on its own, and doesn't support passing
one, as described here:
http://developer.apple.com/documentation/DeveloperTools/Reference/Assembler/ASMDirectives/chapter_5_section_4.html#//apple_ref/doc/uid/TP30000823-TPXREF155
Maybe the new assembler in Leopard supports it? The change to GCC looks like
it happened in late July.
I've attached a patch that works for me.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Fri Sep 7 16:05:04 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Fri, 7 Sep 2007 16:05:04 -0500
Subject: [LLVMbugs] [Bug 1645] New: llvm-as refuses to assemble llvm-gcc
output ( weak references)
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1645
Summary: llvm-as refuses to assemble llvm-gcc output (weak
references)
Product: new-bugs
Version: unspecified
Platform: Other
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: baldrick at free.fr
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1106)
--> (http://llvm.org/bugs/attachment.cgi?id=1106)
.ll that doesn't assemble
The attached LLVM assembler was produced by running
llvm-gcc on unwind-dw2.c in the gcc sources with
options -S -emit-llvm, at -O0. However trying to
assemble it with llvm-as gives
llvm-as unwind-dw2.ll
llvm-as: unwind-dw2.ll:5660,0: Unresolved global references exist:
i32 (i32) * __gthrw_pthread_cancel
Checking by hand shows that everything is dandy, so
this seems to be an llvm-as bug.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From dalej at apple.com Fri Sep 7 16:04:00 2007
From: dalej at apple.com (Dale Johannesen)
Date: Fri, 7 Sep 2007 14:04:00 -0700
Subject: [LLVMbugs] [Bug 1644] New: llvm-gcc-4.0 Mac OS X build
failure... maybe my assember is too old?
In-Reply-To:
References:
Message-ID: <6BE71478-A32D-4FC8-B315-3C80F566FCD2@apple.com>
On Sep 7, 2007, at 1:16 PM, bugzilla-daemon at cs.uiuc.edu wrote:
> I haven't investigated the warning, but the error on line 2892
> turns out to be
> an assembler directive that my assembler, (apple's gas version 1.38
> that came
> with OS/X 10.4.10), doesn't support:
>
> .comm ___gcov_var,4128,5
>
> The .comm directive picks an alignment on its own, and doesn't
> support passing
> one, as described here:
> http://developer.apple.com/documentation/DeveloperTools/Reference/
> Assembler/ASMDirectives/chapter_5_section_4.html#//apple_ref/doc/
> uid/TP30000823-TPXREF155
>
> Maybe the new assembler in Leopard supports it?
I've checked with the assembler expert, and indeed this is a Leopard
feature that will not be supported in 10.4.
However, the llvm-gcc I built on (x86) 10.4 does the right thing; it
doesn't get into that code. This is some sort of configuration
issue. I'm asking around to figure it out. What hardware do you have?
From bugzilla-daemon at cs.uiuc.edu Sat Sep 8 08:58:51 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sat, 8 Sep 2007 08:58:51 -0500
Subject: [LLVMbugs] [Bug 1635] Syntax for 'call' Instruction is wrong
In-Reply-To:
Message-ID: <200709081358.l88DwpO3030254@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1635
Nick Lewycky changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Nick Lewycky 2007-09-08 08:58:50 ---
Applied.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Sat Sep 8 16:07:52 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sat, 8 Sep 2007 16:07:52 -0500
Subject: [LLVMbugs] [Bug 1646] New: Weak alias assumed to be non-null
results in wrong code for unwind-dw2.c
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1646
Summary: Weak alias assumed to be non-null results in wrong code
for unwind-dw2.c
Product: new-bugs
Version: unspecified
Platform: Other
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: baldrick at free.fr
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1108)
--> (http://llvm.org/bugs/attachment.cgi?id=1108)
testcase .ll
The attached testcase is the code used by gcc to test
whether a program was linked with the pthreads library.
LLVM optimizes it to
define i32 @__gthread_active_p() {
entry:
ret i32 1
}
which is wrong. Probably it thinks that the weak alias
@__gthrw_pthread_cancel = alias weak i32 (i32)* @pthread_cancel
is necessarily non-null. The original code was:
static __typeof(pthread_cancel) __gthrw_pthread_cancel __attribute__
((__weakref__("pthread_cancel")));
static __inline__ int
__gthread_active_p (void)
{
static void *const __gthread_active_ptr
= __extension__ (void *) &__gthrw_pthread_cancel;
return __gthread_active_ptr != 0;
}
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Sun Sep 9 09:27:57 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Sun, 9 Sep 2007 09:27:57 -0500
Subject: [LLVMbugs] [Bug 1632] codegen of exceptions broken on linux x86-64.
Brakes gcc bootstrap
In-Reply-To:
Message-ID: <200709091427.l89ERvrE006871@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1632
Anton Korobeynikov changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #21 from Anton Korobeynikov 2007-09-09 09:27:56 ---
Fixed.
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070903/053348.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 05:27:52 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 05:27:52 -0500
Subject: [LLVMbugs] [Bug 1647] New: volatile attribute lost on pointer array
dereferences
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1647
Summary: volatile attribute lost on pointer array dereferences
Product: tools
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: major
Priority: P2
Component: llvm-gcc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: giuma.cordes at gmail.com
CC: llvmbugs at cs.uiuc.edu
Looks like the volatile attribute is lost in the llvm-gcc translator when
building an array reference out of a front-end pointer type, for example the
following trivial piece of code:
void foo(volatile int *p)
{
p[0] = 0;
}
produces the following llvm assembly:
; ModuleID = '/tmp/webcompile/_24474_0.bc'
target datalayout =
"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64"
target triple = "i686-pc-linux-gnu"
define void @foo(i32* %p) {
entry:
store i32 0, i32* %p
ret void
}
while expressing the pointer dereference via the pointer dereference op works
ok:
void foo(volatile int *p)
{
*p = 0;
}
define void @foo(i32* %p) {
entry:
volatile store i32 0, i32* %p
ret void
}
I believe the problem originates from llv-gcc/gcc/c-typeck.c in function
build_array_ref near conditionally compiled LLVM section line 1893 were the
following piece of code:
{
tree ty = TREE_TYPE(TREE_TYPE(ar));
if (TREE_CODE(ty) != ARRAY_TYPE)
ty = TYPE_MAIN_VARIANT (ty);
return build4 (ARRAY_REF, ty, ar, index, NULL_TREE, NULL_TREE);
}
uses the main variant of the elements pointed to to build an array reference
instead in case of pointer indexed arithmetics.
Look like in doing so the volatile flag attached to the pointer type itself is
lost and not propagated to the array reference (along with possibly some other
attributes I'm not sure about, like side effects etc.)
Replacing the code above with the following one seems to fix the problem:
{
tree ty = TREE_TYPE(TREE_TYPE(ar));
if (TREE_CODE(ty) != ARRAY_TYPE) {
tree newty = TYPE_MAIN_VARIANT (ty);
tree ret = build4 (ARRAY_REF, newty, ar, index, NULL_TREE,
NULL_TREE);
/* we know it's a reference */
TREE_THIS_VOLATILE(ret) = TREE_THIS_VOLATILE(ty);
return ret;
}
return build4 (ARRAY_REF, ty, ar, index, NULL_TREE, NULL_TRE
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 05:38:23 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 05:38:23 -0500
Subject: [LLVMbugs] [Bug 1647] volatile attribute lost on pointer array
dereferences
In-Reply-To:
Message-ID: <200709101038.l8AAcNC1026861@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1647
Faik Uygur changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |faik at pardus.org.tr
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #1 from Faik Uygur 2007-09-10 05:38:20 ---
*** This bug has been marked as a duplicate of bug 1603 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 08:45:56 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 08:45:56 -0500
Subject: [LLVMbugs] [Bug 1647] volatile attribute lost on pointer array
dereferences
In-Reply-To:
Message-ID: <200709101345.l8ADjusV001339@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1647
giuma changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|DUPLICATE |WONTFIX
--- Comment #2 from giuma 2007-09-10 08:45:55 ---
Hi again,
Sorry to bother again, but the bug is indeed induced by the same code snippet
as of bug 1603 in c-typeck.c, however the patch given for it doesn't fix this
one too.
I'm no gcc front-end expert at all, but it looks to me the volatility flag is
used in a different way that the readonly flag (associated to bug 1603).
Read only is one is applied towards the memory location while the volatility
against the reference itself, in fact the same simple example above still
generates a non volatile store instead of a volatile one even if the patch is
applied.
The problem is that once a build_modify_expr method is invoked in tree.c (e.g.
by the assignment) it finds the volatile_flag of the arg0 (the array reference
built by the previous call to patched build_array_ref code) being false, this
because the flag is instead attached to the type and not the reference itself.
Note that when a pointer dereference is used in place of the array one, the
associated tree contains an indirect_ref with a volatile_flag set.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 08:53:20 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 08:53:20 -0500
Subject: [LLVMbugs] [Bug 1647] volatile attribute lost on pointer array
dereferences
In-Reply-To:
Message-ID: <200709101353.l8ADrKwh001804@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1647
Faik Uygur changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|WONTFIX |
--- Comment #3 from Faik Uygur 2007-09-10 08:53:20 ---
(In reply to comment #2)
> I'm no gcc front-end expert at all, but it looks to me the volatility flag is
> used in a different way that the readonly flag (associated to bug 1603).
I'm no expert either. Sorry for the quick and misjudgement. :/ Reopening this
bug.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 14:59:59 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 14:59:59 -0500
Subject: [LLVMbugs] [Bug 1648] New: GVN crash - MallocBench/gs
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1648
Summary: GVN crash - MallocBench/gs
Product: libraries
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P2
Component: Scalar Optimizations
AssignedTo: unassignedbugs at nondot.org
ReportedBy: dpatel at apple.com
CC: resistor at mac.com, llvmbugs at cs.uiuc.edu
GVN crashes while optimizing MallocBench/gs benchmark.
$ opt -disable-output -gvn b5.bc
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 17:47:25 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 17:47:25 -0500
Subject: [LLVMbugs] [Bug 1644] llvm-gcc-4.0 Mac OS X build failure... maybe
my assember is too old?
In-Reply-To:
Message-ID: <200709102247.l8AMlP4J023216@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1644
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
--- Comment #2 from Chris Lattner 2007-09-10 17:47:25 ---
This works fine for me with "GNU assembler version 1.38". Please ensure you
configured llvm-gcc with the --emit-llvm option.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 18:25:15 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 18:25:15 -0500
Subject: [LLVMbugs] [Bug 1645] llvm-as refuses to assemble llvm-gcc output
(weak references)
In-Reply-To:
Message-ID: <200709102325.l8ANPF0a024347@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1645
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|enhancement |normal
Status|NEW |RESOLVED
Component|new bugs |LLVM assembly language
| |parser
Keywords| |compile-fail
Product|new-bugs |libraries
Resolution| |FIXED
Target Milestone|--- |2.1
Version|unspecified |2.0
--- Comment #2 from Chris Lattner 2007-09-10 18:25:14 ---
Fixed, patch here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053368.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 18:29:50 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 18:29:50 -0500
Subject: [LLVMbugs] [Bug 1640] Compiler crash
In-Reply-To:
Message-ID: <200709102329.l8ANToeM024517@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1640
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
--- Comment #3 from Chris Lattner 2007-09-10 18:29:47 ---
Matching operands for memory are not implemented yet. If you paste the
offending inline asm (which is probably coming from a header, not the attached
source), I can suggest a simple change that will make it work.
*** This bug has been marked as a duplicate of bug 1133 ***
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 18:48:18 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 18:48:18 -0500
Subject: [LLVMbugs] [Bug 1646] Weak alias assumed to be non-null results in
wrong code for unwind-dw2.c
In-Reply-To:
Message-ID: <200709102348.l8ANmIKX025081@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1646
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|enhancement |normal
Status|NEW |RESOLVED
Component|new bugs |Core LLVM classes
Product|new-bugs |libraries
Resolution| |FIXED
Target Milestone|--- |2.1
Version|unspecified |2.0
--- Comment #12 from Chris Lattner 2007-09-10 18:48:18 ---
The fix is to tell the constant folding pass to back off from aliases. We
expect the linker to resolve them as aggressively as possible, so this
shouldn't cause poor codegen. The code you found in instcombine is actually
dead, as it is only reached if the operands are not both constants.
Both issues are fixed here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053371.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053372.html
-Chris
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 19:51:40 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 19:51:40 -0500
Subject: [LLVMbugs] [Bug 1634] llvm-g++ 4.0 fails to compile Manta
In-Reply-To:
Message-ID: <200709110051.l8B0pedQ027207@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1634
Chris Lattner changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Component|LLVM Codegen |llvm-gcc
Product|cfe |tools
Resolution| |FIXED
Target Milestone|--- |2.1
Version|unspecified |1.0
--- Comment #12 from Chris Lattner 2007-09-10 19:51:39 ---
Fixed, patches here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053380.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053382.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053383.html
Testcase here:
test/C++Frontend/2007-09-10-RecursiveTypeResolution.cpp
-Chris
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Mon Sep 10 23:33:19 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Mon, 10 Sep 2007 23:33:19 -0500
Subject: [LLVMbugs] [Bug 1648] GVN crash - MallocBench/gs
In-Reply-To:
Message-ID: <200709110433.l8B4XJNV002308@zion.cs.uiuc.edu>
http://llvm.org/bugs/show_bug.cgi?id=1648
Owen Anderson changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #2 from Owen Anderson 2007-09-10 23:33:19 ---
This is fixed by:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070910/053390.html
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Tue Sep 11 02:09:58 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Tue, 11 Sep 2007 02:09:58 -0500
Subject: [LLVMbugs] [Bug 1649] New: Invalid alignment for SSE2 code
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1649
Summary: Invalid alignment for SSE2 code
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: Backend: X86
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1113)
--> (http://llvm.org/bugs/attachment.cgi?id=1113)
Function extracted
Consider attached testcase.
In bb79:
bb79: ; preds = %bb57
%tmp81 = load double* %tmp68, align 16 ; [#uses=1]
%tmp82 = sub double -0.000000e+00, %tmp81 ;
[#uses=1]
store double %tmp82, double* %tmp68, align 16
%tmp84 = getelementptr [3 x double]* %Raw_Normal, i32 0, i32 1
; [#uses=2]
%tmp85 = load double* %tmp84, align 8 ; [#uses=1]
%tmp86 = sub double -0.000000e+00, %tmp85 ;
[#uses=1]
store double %tmp86, double* %tmp84, align 8
%tmp88 = getelementptr [3 x double]* %Raw_Normal, i32 0, i32 2
; [#uses=2]
%tmp89 = load double* %tmp88, align 8 ; [#uses=1]
%tmp90 = sub double -0.000000e+00, %tmp89 ;
[#uses=1]
store double %tmp90, double* %tmp88, align 8
br label %bb92
This is codegen'ed (-disable-fp-elim) into:
movsd .LCPI1_0, %xmm0
movapd %xmm0, %xmm1
xorpd -104(%ebp), %xmm1
movsd %xmm1, -104(%ebp)
movsd -96(%ebp), %xmm1
xorpd %xmm0, %xmm1
movsd %xmm1, -96(%ebp)
movsd -88(%ebp), %xmm1
xorpd %xmm0, %xmm1
movsd %xmm1, -88(%ebp)
We definitely see a problem: even if %ebp is 16-bytes aligned, the access of
temporaries is not aligned at all.
This causes povray miscompilation at -O2.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Tue Sep 11 03:30:37 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Tue, 11 Sep 2007 03:30:37 -0500
Subject: [LLVMbugs] [Bug 1650] New: Should provide target-specific hooks for
selecting preferred EH data emission format
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1650
Summary: Should provide target-specific hooks for selecting
preferred EH data emission format
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
CC: isanbard at gmail.com, baldrick at free.fr,
llvmbugs at cs.uiuc.edu
We really need to have mechanism to allow target:
1. Select data format used for emission of eh/debug data
2. Override data emission procedure.
See, for example, GCC's ASM_PREFERRED_EH_DATA_FORMAT macro and corresponding
handling in dwarf2asm.c
This will be especially needed for carefully handling of EHs on many platforms
without introducing extra code complexity & bunch of knobs.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
From bugzilla-daemon at cs.uiuc.edu Tue Sep 11 07:14:15 2007
From: bugzilla-daemon at cs.uiuc.edu (bugzilla-daemon at cs.uiuc.edu)
Date: Tue, 11 Sep 2007 07:14:15 -0500
Subject: [LLVMbugs] [Bug 1651] New: ICE building llvm-gcc-4.2 - invalid free
Message-ID:
http://llvm.org/bugs/show_bug.cgi?id=1651
Summary: ICE building llvm-gcc-4.2 - invalid free
Product: new-bugs
Version: unspecified
Platform: Other
OS/Version: Linux
Status: NEW
Keywords: build-problem
Severity: major
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: kenneth.hoste at elis.ugent.be
CC: llvmbugs at cs.uiuc.edu
(this is my first bug report here, so please be gentle ;) )
While compiling llvm-gcc-4.2 on Linux/x86 (Fedora Core 4, 32-bit), I ran into
an ICE during stage1.
More specifically, the following command fails:
/work/LLVM/llvm-gcc-4.2-obj/./gcc/xgcc -B/work/LLVM/llvm-gcc-4.2-obj/./gcc/
-B/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/bin/
-B/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/lib/ -isystem
/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/include -isystem
/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/sys-include -O2 -O2 -g -O2
-DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -isystem ./include -I. -I. -I../../llvm-gcc-4.2/gcc
-I../../llvm-gcc-4.2/gcc/. -I../../llvm-gcc-4.2/gcc/../include
-I../../llvm-gcc-4.2/gcc/../libcpp/include
-I../../llvm-gcc-4.2/gcc/../libdecnumber -I../libdecnumber
-I/home/kehoste/work/LLVM/llvm/include -I/work/LLVM/llvm-obj/include -g0
-finhibit-size-directive -fno-inline-functions -fno-exceptions
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-omit-frame-pointer \
-c ../../llvm-gcc-4.2/gcc/crtstuff.c -DCRT_BEGIN \
-o crtbegin.o
with
../../llvm-gcc-4.2/gcc/crtstuff.c:1: internal compiler error: Aborted
Running valgrind on it produces the output below. It seems the call to 'erase'
at llvm::PMDataManager::removeNotPreservedAnalysis(llvm::Pass*)
(PassManager.cpp:628) is the cause of this?
==20768== Memcheck, a memory error detector for x86-linux.
==20768== Copyright (C) 2002-2005, and GNU GPL'd, by Julian Seward et al.
==20768== Using valgrind-2.4.0, a program supervision framework for x86-linux.
==20768== Copyright (C) 2000-2005, and GNU GPL'd, by Julian Seward et al.
==20768== For more details, rerun with: -v
==20768==
ignoring nonexistent directory
"/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/include"
ignoring nonexistent directory
"/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/sys-include"
ignoring duplicate directory "./include"
ignoring nonexistent directory
"/home/kehoste/work/LLVM/llvm-gcc-4.2-obj/gcc/../lib/gcc/i686-pc-linux-gnu/4.2.1/include"
ignoring nonexistent directory
"/home/kehoste/work/LLVM/llvm-gcc-4.2-obj/gcc/../lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../i686-pc-linux-gnu/include"
ignoring nonexistent directory "/work/LLVM/llvm-gcc-4.2-bin/include"
ignoring nonexistent directory
"/work/LLVM/llvm-gcc-4.2-bin/lib/gcc/i686-pc-linux-gnu/4.2.1/include"
ignoring nonexistent directory
"/work/LLVM/llvm-gcc-4.2-bin/i686-pc-linux-gnu/include"
ignoring duplicate directory "."
ignoring duplicate directory "../../llvm-gcc-4.2/gcc/."
#include "..." search starts here:
#include <...> search starts here:
.
../../llvm-gcc-4.2/gcc
../../llvm-gcc-4.2/gcc/../include
../../llvm-gcc-4.2/gcc/../libcpp/include
../../llvm-gcc-4.2/gcc/../libdecnumber
../libdecnumber
/home/kehoste/work/LLVM/llvm/include
/work/LLVM/llvm-obj/include
/work/LLVM/llvm-gcc-4.2-obj/./gcc/include
/usr/local/include
/usr/include
End of search list.
GNU C version 4.2.1(llvm) (Based on Apple Inc. build 5530) (i686-pc-linux-gnu)
compiled by GNU C version 4.2.0.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=8192
Compiler executable checksum: 67319a9093bf38f24f1a85fc8270533a
==20768== Invalid free() / delete / delete[]
==20768== at 0x1B9098CF: operator delete(void*) (vg_replace_malloc.c:155)
==20768== by 0x862B67A:
_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPKN4llvm8PassInfoEPNS3_4PassEEEE10deallocateEPSB_j
(new_allocator.h:97)
==20768== by 0x862B69F: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_put_node(std::_Rb_tree_node >*) (stl_tree.h:371)
==20768== by 0x8C64703: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::destroy_node(std::_Rb_tree_node >*) (stl_tree.h:390)
==20768== by 0x8D14000: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::erase(std::_Rb_tree_iterator >) (stl_tree.h:1034)
==20768== by 0x8D1402B:
_ZNSt3mapIPKN4llvm8PassInfoEPNS0_4PassESt4lessIS3_ESaISt4pairIKS3_S5_EEE5eraseESt17_Rb_tree_iteratorISA_E
(stl_map.h:410)
==20768== by 0x8D0DB85:
llvm::PMDataManager::removeNotPreservedAnalysis(llvm::Pass*)
(PassManager.cpp:628)
==20768== by 0x8D1015B: llvm::PMDataManager::add(llvm::Pass*, bool)
(PassManager.cpp:749)
==20768== by 0x8D10692:
llvm::FunctionPass::assignPassManager(llvm::PMStack&, llvm::PassManagerType)
(PassManager.cpp:1487)
==20768== by 0x8D190D4:
llvm::FunctionPassManagerImpl::addTopLevelPass(llvm::Pass*)
(PassManager.cpp:164)
==20768== by 0x8D0E1C6: llvm::PMTopLevelManager::schedulePass(llvm::Pass*)
(PassManager.cpp:445)
==20768== by 0x8D14ADD: llvm::FunctionPassManagerImpl::add(llvm::Pass*)
(PassManager.cpp:132)
==20768== Address 0x1BA686A8 is 3896 bytes inside a block of size 4080 alloc'd
==20768== at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
==20768== by 0x1B96FF56: __gnu_cxx::__pool::_M_reserve_block(unsigned,
unsigned) (mt_allocator.cc:340)
==20768== by 0x8D0B234:
__gnu_cxx::__mt_alloc
>, __gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>
>::allocate(unsigned, void const*) (mt_allocator.h:698)
==20768== by 0x8D0B25B: std::_Rb_tree, std::_Select1st >,
std::less, std::allocator >
>::_M_get_node() (stl_tree.h:356)
==20768== by 0x8D0B273: std::_Rb_tree, std::_Select1st >,
std::less, std::allocator >
>::_M_create_node(std::pair const&)
(stl_tree.h:365)
==20768== by 0x8D0B330:
_ZNSt8_Rb_treeIiSt4pairIKiPN4llvm8PassInfoEESt10_Select1stIS5_ESt4lessIiESaIS5_EE9_M_insertEPSt18_Rb_tree_node_baseSD_RKS5_
(stl_tree.h:794)
==20768== by 0x8D0B487: std::_Rb_tree, std::_Select1st >,
std::less, std::allocator >
>::insert_unique(std::pair const&) (stl_tree.h:883)
==20768== by 0x8D0B572: std::map,
std::allocator > >::insert(std::pair const&) (stl_map.h:360)
==20768== by 0x8D0B5E3: (anonymous
namespace)::PassRegistrar::RegisterPass(llvm::PassInfo&) (Pass.cpp:157)
==20768== by 0x8D082C2: llvm::RegisterPassBase::registerPass()
(Pass.cpp:221)
==20768== by 0x8647CF8: llvm::RegisterPassBase::RegisterPassBase(char
const*, char const*, int, llvm::Pass* (*)(), bool) (PassSupport.h:145)
==20768== by 0x8D3CBE5: llvm::RegisterPass<(anonymous
namespace)::Verifier>::RegisterPass(char const*, char const*, bool)
(PassSupport.h:169)
==20768==
==20768== Invalid free() / delete / delete[]
==20768== at 0x1B9098CF: operator delete(void*) (vg_replace_malloc.c:155)
==20768== by 0x862B67A:
_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPKN4llvm8PassInfoEPNS3_4PassEEEE10deallocateEPSB_j
(new_allocator.h:97)
==20768== by 0x862B69F: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_put_node(std::_Rb_tree_node >*) (stl_tree.h:371)
==20768== by 0x862B6EF: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_destroy_node(std::_Rb_tree_node >*) (stl_tree.h:401)
==20768== by 0x862B737: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_erase(std::_Rb_tree_node >*) (stl_tree.h:1325)
==20768== by 0x862B717: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_erase(std::_Rb_tree_node >*) (stl_tree.h:1323)
==20768== by 0x862B766: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator > >::clear() (stl_tree.h:711)
==20768== by 0x862B7CC: std::map, std::allocator > >::clear() (stl_map.h:509)
==20768== by 0x862B7E3: llvm::PMDataManager::initializeAnalysisInfo()
(PassManagers.h:242)
==20768== by 0x8D0D975: llvm::PMStack::pop() (PassManager.cpp:1388)
==20768== by 0x8D10218: llvm::ModulePass::assignPassManager(llvm::PMStack&,
llvm::PassManagerType) (PassManager.cpp:1437)
==20768== by 0x8D18FEE: llvm::PassManagerImpl::addTopLevelPass(llvm::Pass*)
(PassManager.cpp:294)
==20768== Address 0x1BAA8A68 is 736 bytes inside a block of size 4080 alloc'd
==20768== at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
==20768== by 0x1B96FF56: __gnu_cxx::__pool::_M_reserve_block(unsigned,
unsigned) (mt_allocator.cc:340)
==20768== by 0x8D5F1FC:
__gnu_cxx::__mt_alloc >, __gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>
>::allocate(unsigned, void const*) (mt_allocator.h:698)
==20768== by 0x8D5F223: std::_Rb_tree, std::_Select1st >, std::less,
std::allocator >
>::_M_get_node() (stl_tree.h:356)
==20768== by 0x8D5F23B: std::_Rb_tree, std::_Select1st >, std::less,
std::allocator >
>::_M_create_node(std::pair const&)
(stl_tree.h:365)
==20768== by 0x8D5F2F8:
_ZNSt8_Rb_treeISsSt4pairIKSsPN4llvm2cl6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE9_M_insertEPSt18_Rb_tree_node_baseSE_RKS6_
(stl_tree.h:794)
==20768== by 0x8D5F4D8: std::_Rb_tree, std::_Select1st >, std::less,
std::allocator >
>::insert_unique(std::pair const&)
(stl_tree.h:887)
==20768== by 0x8D5F53A: std::map, std::allocator > >::insert(std::pair
const&) (stl_map.h:360)
==20768== by 0x8D57A9F: GetOptionInfo(std::vector >&, std::map, std::allocator > >&) (CommandLine.cpp:116)
==20768== by 0x8D57D0F: llvm::cl::ParseCommandLineOptions(int&, char**, char
const*) (CommandLine.cpp:340)
==20768== by 0x860C771: llvm_initialize_backend (llvm-backend.cpp:143)
==20768== by 0x85667B4: backend_init (toplev.c:2089)
==20768==
==20768== Invalid free() / delete / delete[]
==20768== at 0x1B9098CF: operator delete(void*) (vg_replace_malloc.c:155)
==20768== by 0x862B900:
_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPN4llvm10BasicBlockEPNS3_4LoopEEEE10deallocateEPSA_j
(new_allocator.h:97)
==20768== by 0x862B925: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) (stl_tree.h:371)
==20768== by 0x862B975: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator >
>::_M_destroy_node(std::_Rb_tree_node >*) (stl_tree.h:401)
==20768== by 0x862B9BD: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) (stl_tree.h:1325)
==20768== by 0x862B99D: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) (stl_tree.h:1323)
==20768== by 0x8C7A972: std::_Rb_tree,
std::_Select1st >,
std::less, std::allocator > >::clear() (stl_tree.h:667)
==20768== by 0x8C7A9EB: std::map, std::allocator > >::clear() (stl_map.h:465)
==20768== by 0x8C7792C: llvm::LoopInfo::releaseMemory() (LoopInfo.cpp:115)
==20768== by 0x8D0E9AF: llvm::PMDataManager::removeDeadPasses(llvm::Pass*,
char const*, llvm::PassDebuggingString) (PassManager.cpp:670)
==20768== by 0x8D0F671: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1178)
==20768== by 0x8D0F727: llvm::FPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1188)
==20768== Address 0x1BB135A0 is 3336 bytes inside a block of size 4080 alloc'd
==20768== at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
==20768== by 0x1B96FF56: __gnu_cxx::__pool::_M_reserve_block(unsigned,
unsigned) (mt_allocator.cc:340)
==20768== by 0x8CD19E5:
__gnu_cxx::__mt_alloc const, llvm::Constant*> >,
__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true> >::allocate(unsigned,
void const*) (mt_allocator.h:698)
==20768== by 0x8CD1A0D: std::_Rb_tree,
std::pair const, llvm::Constant*>,
std::_Select1st const,
llvm::Constant*> >, std::less >,
std::allocator const,
llvm::Constant*> > >::_M_get_node() (stl_tree.h:356)
==20768== by 0x8CD1A25: std::_Rb_tree,
std::pair const, llvm::Constant*>,
std::_Select1st const,
llvm::Constant*> >, std::less >,
std::allocator const,
llvm::Constant*> > >::_M_create_node(std::pair const, llvm::Constant*> const&) (stl_tree.h:365)
==20768== by 0x8CD1AE2:
_ZNSt8_Rb_treeISt4pairIPKN4llvm4TypeEcES0_IKS5_PNS1_8ConstantEESt10_Select1stIS9_ESt4lessIS5_ESaIS9_EE9_M_insertEPSt18_Rb_tree_node_baseSH_RKS9_
(stl_tree.h:794)
==20768== by 0x8CD1C39: std::_Rb_tree,
std::pair const, llvm::Constant*>,
std::_Select1st const,
llvm::Constant*> >, std::less >,
std::allocator const,
llvm::Constant*> > >::insert_unique(std::pair const, llvm::Constant*> const&) (stl_tree.h:883)
==20768== by 0x8CD1DE1: std::_Rb_tree,
std::pair const, llvm::Constant*>,
std::_Select1st const,
llvm::Constant*> >, std::less >,
std::allocator const,
llvm::Constant*> >
>::insert_unique(std::_Rb_tree_iterator const, llvm::Constant*> >, std::pair
const, llvm::Constant*> const&) (stl_tree.h:905)
==20768== by 0x8CD2115:
_ZNSt3mapISt4pairIPKN4llvm4TypeEcEPNS1_8ConstantESt4lessIS5_ESaIS0_IKS5_S7_EEE6insertESt17_Rb_tree_iteratorISB_ERKSB_
(stl_map.h:384)
==20768== by 0x8CD93EA: llvm::ValueMap::getOrCreate(llvm::Type const*, char
const&) (Constants.cpp:825)
==20768== by 0x8CC53AD: llvm::ConstantAggregateZero::get(llvm::Type const*)
(Constants.cpp:993)
==20768== by 0x8CC62F9: llvm::Constant::getNullValue(llvm::Type const*)
(Constants.cpp:122)
==20768==
==20768== Conditional jump or move depends on uninitialised value(s)
==20768== at 0x8C826E0: llvm::DenseMap
>::CopyFrom(llvm::DenseMap > const&) (DenseMap.h:184)
==20768== by 0x8C827E2: llvm::DenseMap
>::DenseMap(llvm::DenseMap > const&) (DenseMap.h:63)
==20768== by 0x8C83191: llvm::DenseMap >,
llvm::DenseMapKeyInfo
>::InsertIntoBucket(llvm::Instruction* const&,
llvm::DenseMap > const&,
std::pair > >*) (DenseMap.h:228)
==20768== by 0x8C831EC: llvm::DenseMap >,
llvm::DenseMapKeyInfo >::operator[](llvm::Instruction*
const&) (DenseMap.h:174)
==20768== by 0x8C81A0A:
llvm::MemoryDependenceAnalysis::getNonLocalDependency(llvm::Instruction*,
llvm::DenseMap >&) (MemoryDependenceAnalysis.cpp:225)
==20768== by 0x8B8E13B: (anonymous
namespace)::GVN::processNonLocalLoad(llvm::LoadInst*,
llvm::SmallVector&) (GVN.cpp:808)
==20768== by 0x8B8E6D4: (anonymous
namespace)::GVN::processLoad(llvm::LoadInst*, llvm::DenseMap >&,
llvm::SmallVector&) (GVN.cpp:880)
==20768== by 0x8B8E8D0: (anonymous
namespace)::GVN::processInstruction(llvm::Instruction*, (anonymous
namespace)::ValueNumberedSet&, llvm::DenseMap >&, llvm::SmallVector&) (GVN.cpp:943)
==20768== by 0x8B8ECC9: (anonymous
namespace)::GVN::iterateOnFunction(llvm::Function&) (GVN.cpp:1023)
==20768== by 0x8B8EE1B: (anonymous
namespace)::GVN::runOnFunction(llvm::Function&) (GVN.cpp:985)
==20768== by 0x8D0F586: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1168)
==20768== by 0x8D0F727: llvm::FPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1188)
==20768==
==20768== Invalid free() / delete / delete[]
==20768== at 0x1B9098CF: operator delete(void*) (vg_replace_malloc.c:155)
==20768== by 0x862D1D6:
__gnu_cxx::new_allocator::deallocate(llvm::SDNode**, unsigned)
(new_allocator.h:97)
==20768== by 0x862D200: std::_Vector_base >::_M_deallocate(llvm::SDNode**, unsigned)
(stl_vector.h:134)
==20768== by 0x8983C61: std::vector
>::_M_insert_aux(__gnu_cxx::__normal_iterator > >, llvm::SDNode*
const&) (vector.tcc:299)
==20768== by 0x8983D20: std::vector >::push_back(llvm::SDNode* const&)
(stl_vector.h:610)
==20768== by 0x8AAE317: (anonymous namespace)::DAGCombiner::Run(bool)
(DAGCombiner.cpp:546)
==20768== by 0x8AAE98D: llvm::SelectionDAG::Combine(bool,
llvm::AliasAnalysis&) (DAGCombiner.cpp:4758)
==20768== by 0x8A5594B:
llvm::SelectionDAGISel::CodeGenAndEmitDAG(llvm::SelectionDAG&)
(SelectionDAGISel.cpp:4614)
==20768== by 0x8A6B0A3:
llvm::SelectionDAGISel::SelectBasicBlock(llvm::BasicBlock*,
llvm::MachineFunction&, llvm::FunctionLoweringInfo&)
(SelectionDAGISel.cpp:4651)
==20768== by 0x8A6C6AF:
llvm::SelectionDAGISel::runOnFunction(llvm::Function&)
(SelectionDAGISel.cpp:4352)
==20768== by 0x897D6A3: (anonymous
namespace)::X86DAGToDAGISel::runOnFunction(llvm::Function&)
(X86ISelDAGToDAG.cpp:122)
==20768== by 0x8D0F586: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1168)
==20768== Address 0x1BAAB478 is 80 bytes inside a block of size 4080 alloc'd
==20768== at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
==20768== by 0x1B96FF56: __gnu_cxx::__pool::_M_reserve_block(unsigned,
unsigned) (mt_allocator.cc:340)
==20768== by 0x8CB2744: __gnu_cxx::__mt_alloc,
__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true> >::allocate(unsigned,
void const*) (mt_allocator.h:698)
==20768== by 0x8CB276C: std::_Vector_base, std::allocator > >::_M_allocate(unsigned)
(stl_vector.h:117)
==20768== by 0x8CB2E1A: std::vector, std::allocator >
>::_M_insert_aux(__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >, std::pair const&) (vector.tcc:275)
==20768== by 0x8CB3072: std::vector, std::allocator > >::push_back(std::pair const&) (stl_vector.h:610)
==20768== by 0x8CB1A78:
llvm::TargetMachineRegistry::getClosestStaticTargetForModule(llvm::Module
const&, std::string&) (TargetMachineRegistry.cpp:58)
==20768== by 0x860CA60: llvm_initialize_backend (llvm-backend.cpp:167)
==20768== by 0x85667B4: backend_init (toplev.c:2089)
==20768== by 0x85669AE: do_compile (toplev.c:2252)
==20768== by 0x8566A29: toplev_main (toplev.c:2288)
==20768== by 0x8112BB3: main (llvm-main.cpp:39)
==20768==
==20768== Invalid free() / delete / delete[]
==20768== at 0x1B9098CF: operator delete(void*) (vg_replace_malloc.c:155)
==20768== by 0x862D1D6:
__gnu_cxx::new_allocator::deallocate(llvm::SDNode**, unsigned)
(new_allocator.h:97)
==20768== by 0x862D200: std::_Vector_base >::_M_deallocate(llvm::SDNode**, unsigned)
(stl_vector.h:134)
==20768== by 0x862D27D: std::_Vector_base >::~_Vector_base() (stl_vector.h:120)
==20768== by 0x862D2DF: std::vector >::~vector() (stl_vector.h:268)
==20768== by 0x8AAF308: (anonymous namespace)::DAGCombiner::~DAGCombiner()
(DAGCombiner.cpp:76)
==20768== by 0x8AAE99C: llvm::SelectionDAG::Combine(bool,
llvm::AliasAnalysis&) (DAGCombiner.cpp:4758)
==20768== by 0x8A5594B:
llvm::SelectionDAGISel::CodeGenAndEmitDAG(llvm::SelectionDAG&)
(SelectionDAGISel.cpp:4614)
==20768== by 0x8A6B0A3:
llvm::SelectionDAGISel::SelectBasicBlock(llvm::BasicBlock*,
llvm::MachineFunction&, llvm::FunctionLoweringInfo&)
(SelectionDAGISel.cpp:4651)
==20768== by 0x8A6C6AF:
llvm::SelectionDAGISel::runOnFunction(llvm::Function&)
(SelectionDAGISel.cpp:4352)
==20768== by 0x897D6A3: (anonymous
namespace)::X86DAGToDAGISel::runOnFunction(llvm::Function&)
(X86ISelDAGToDAG.cpp:122)
==20768== by 0x8D0F586: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1168)
==20768== Address 0x1BE49B60 is 2936 bytes inside a block of size 4080 alloc'd
==20768== at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
==20768== by 0x1B96FF56: __gnu_cxx::__pool::_M_reserve_block(unsigned,
unsigned) (mt_allocator.cc:340)
==20768== by 0x8D17FBC:
__gnu_cxx::__mt_alloc >, __gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>
>::allocate(unsigned, void const*) (mt_allocator.h:698)
==20768== by 0x8D17FE3: std::_Rb_tree,
std::_Select1st >,
std::less