Chris Lattner
ed8903e45a
add a method to BumpPtrAllocator that allows allocating elements
...
with a specified alignment.
llvm-svn: 63629
2009-02-03 07:39:50 +00:00
Chris Lattner
c8233df64b
switch SourceManager from using an std::map and std::list of
...
ContentCache objects to using a densemap and list, and allocating
the ContentCache objects from a bump pointer. This does not speed
up or slow down things substantially, but gives us control over
their alignment.
llvm-svn: 63628
2009-02-03 07:30:45 +00:00
Chris Lattner
79f6de0fd0
true is pass, false is success.
...
llvm-svn: 63627
2009-02-03 07:28:12 +00:00
Chris Lattner
96960c82db
disable this test too
...
llvm-svn: 63626
2009-02-03 07:25:43 +00:00
Chris Lattner
a8be8de596
make this fail faster.
...
llvm-svn: 63625
2009-02-03 07:24:53 +00:00
Chris Lattner
a77cad1012
add #include to make more self-contained.
...
llvm-svn: 63624
2009-02-03 07:20:54 +00:00
Nick Lewycky
fb643e4d9f
Add LLVM plugin for gold.
...
llvm-svn: 63623
2009-02-03 07:13:24 +00:00
Nick Lewycky
a2cf0ed2c7
Regenerate configure.
...
llvm-svn: 63622
2009-02-03 07:10:30 +00:00
Nick Lewycky
edd8946bec
Add the ability to pass the path to binutils source to configure. This is
...
needed to build the LLVM gold plugin.
llvm-svn: 63621
2009-02-03 07:10:08 +00:00
Chris Lattner
80810b4c2d
add another case of undefined behavior without crashing, PR3466.
...
llvm-svn: 63620
2009-02-03 07:08:57 +00:00
Daniel Dunbar
32931eb21d
Change ABIInfo to compute information for a full signature at a time
...
(the main point of this restructing).
llvm-svn: 63619
2009-02-03 06:51:18 +00:00
Nick Lewycky
05daea5d32
Revert r63600. It didn't fix the bug, it just moved it a bit.
...
llvm-svn: 63618
2009-02-03 06:30:37 +00:00
Daniel Dunbar
0136282a9c
Remove ABIArgInfo::Default kind, ABI is now responsible for specifying
...
acceptable kind with more precise semantics.
llvm-svn: 63617
2009-02-03 06:30:17 +00:00
Owen Anderson
f755c2b7a4
Teach AliasAnalysis that a bunch of the atomic intrinsics only dereference their arguments.
...
llvm-svn: 63616
2009-02-03 06:27:22 +00:00
Daniel Dunbar
67dace890f
Add ABIArgInfo::Direct kind, which passes arguments using whatever the
...
native IRgen type is. This is like Default, but without any extra
semantics (like automatic tweaking of structures or void).
llvm-svn: 63615
2009-02-03 06:17:37 +00:00
Chris Lattner
5b0de55045
remove some overly-crazy ideas.
...
llvm-svn: 63614
2009-02-03 06:05:34 +00:00
Daniel Dunbar
5a0acdc982
Add two FIXMEs.
...
llvm-svn: 63613
2009-02-03 06:02:10 +00:00
Daniel Dunbar
b52d077d8b
Always use CGFunctionInfo to access ABI information.
...
llvm-svn: 63612
2009-02-03 05:59:18 +00:00
Daniel Dunbar
313321ea23
Move ABIArgInfo into CGFunctionInfo, computed on creation.
...
- Still have to convert some consumers over.
llvm-svn: 63610
2009-02-03 05:31:23 +00:00
Nick Lewycky
12a130bd06
Update the callgraph when replacing InvokeInst with CallInst when inlining.
...
llvm-svn: 63600
2009-02-03 04:34:40 +00:00
Bill Wendling
67cd395d45
Explicitly pass in debug location information to BuildMI.
...
llvm-svn: 63599
2009-02-03 02:29:34 +00:00
Bill Wendling
135227a060
Pass in something sensible for the debug location information when creating the
...
initial PHI nodes of the machine function.
llvm-svn: 63598
2009-02-03 02:20:52 +00:00
Chris Lattner
fa4e35aca7
fix a bitcode reader bug where it can't handle extractelement correctly:
...
the index of the value being extracted is always an i32. This fixes PR3465
llvm-svn: 63597
2009-02-03 02:11:28 +00:00
Chris Lattner
6aa6b1f263
Teach ConvertUsesToScalar to handle memset, allowing it to handle
...
crazy cases like:
struct f { int A, B, C, D, E, F; };
short test4() {
struct f A;
A.A = 1;
memset(&A.B, 2, 12);
return A.C;
}
llvm-svn: 63596
2009-02-03 02:01:43 +00:00
Dale Johannesen
db39362c90
Fill in some missing DL propagation in getNode()s.
...
llvm-svn: 63595
2009-02-03 01:55:44 +00:00
Bill Wendling
143a2c3470
Use SDL->getCurDebugLoc() instead of unknown loc for landing pads.
...
llvm-svn: 63594
2009-02-03 01:55:42 +00:00
Bill Wendling
fa50a23f8a
Explicitly pass in the "unknown" debug location. This is probably not
...
correct. We need more infrastructure before we can get the DebugLoc info for
these instructions.
llvm-svn: 63593
2009-02-03 01:33:28 +00:00
Dan Gohman
7aa0c17cff
Delete these two tests. They are specific to x86-64, and there's no
...
reliable way to do this with the current dejagnu infrastructure.
If someone can figure out how to fix these tests so that they test
what they are intended to test without spuriously failing on any
popular platforms, they are invited to reinstate them.
llvm-svn: 63592
2009-02-03 01:33:26 +00:00
Bill Wendling
9862a64419
Alphabetize includes.
...
llvm-svn: 63591
2009-02-03 01:32:22 +00:00
Chris Lattner
09b65ab288
rearrange how SRoA handles promotion of allocas to vectors.
...
With the new world order, it can handle cases where the first
store into the alloca is an element of the vector, instead of
requiring the first analyzed store to have the vector type
itself. This allows us to un-xfail
test/CodeGen/X86/vec_ins_extract.ll.
llvm-svn: 63590
2009-02-03 01:30:09 +00:00
Dan Gohman
fb306c0a10
Move isIdentifiedObject and isNoAliasCall into AliasAnalysis.cpp since
...
they are useful to analyses other than BasicAliasAnalysis.cpp. Include
the full comment for isIdentifiedObject in the header file. Thanks to
Chris for suggeseting this.
llvm-svn: 63589
2009-02-03 01:28:32 +00:00
Chris Lattner
a814d96116
Content Cache only needs to be 4-byte aligned. Since it is stored in
...
an std::set, we can't make a strong guarantee about what its alignment
will be. Since I don't need the 3rd bit anyway yet, just change the
assertion.
llvm-svn: 63588
2009-02-03 01:28:04 +00:00
Chris Lattner
a0ce5f060d
this test produces an undefined value, we don't care
...
what it is, but we do want the alloca promoted.
llvm-svn: 63587
2009-02-03 01:13:52 +00:00
Daniel Dunbar
6d6b0d309a
Move ABIInfo/ABIArgInfo classes into ABIInfo.h
...
llvm-svn: 63586
2009-02-03 01:05:53 +00:00
Bill Wendling
17450acc3b
Propagate debug loc info during SDNode -> machine instr creation.
...
llvm-svn: 63585
2009-02-03 01:02:39 +00:00
Bill Wendling
e3c78361d3
Create DebugLoc information in FastISel. Several temporary methods were
...
created. Specifically, those BuildMIs which use
"DebugLoc::getUnknownLoc()". I'll remove them soon.
llvm-svn: 63584
2009-02-03 00:55:04 +00:00
Dale Johannesen
f1163e9a4d
Propagation in TargetLowering. Includes passing a DL
...
into SimplifySetCC which gets called elsewhere.
llvm-svn: 63583
2009-02-03 00:47:48 +00:00
Bill Wendling
b0ad6f9a6c
It fails on Linux. XFAIL that machine.
...
llvm-svn: 63582
2009-02-03 00:35:11 +00:00
Douglas Gregor
8761da5f68
Simplify the way in which we inject the names of tag definitions and
...
elaborated-type-specifier declarations into outer scopes while
retaining their proper lexical scope. This way is simpler and more
consistent with the way DeclContexts work, and also fixes
http://llvm.org/bugs/show_bug.cgi?id=3430
llvm-svn: 63581
2009-02-03 00:34:39 +00:00
Bill Wendling
423f3bc196
This is passing for us. Should it have been reenabled?
...
llvm-svn: 63580
2009-02-03 00:27:09 +00:00
Dan Gohman
7948ef5f87
Add explicit -march=x86 to these tests so that they don't
...
default to -march=x86-64 on 64-bit hosts.
llvm-svn: 63579
2009-02-03 00:20:22 +00:00
Fariborz Jahanian
c88a70d885
objc2's ir-gen for nonfragile ivar access.
...
llvm-svn: 63578
2009-02-03 00:09:52 +00:00
Dan Gohman
76a07f59d4
Use the SubclassData field to hold ExtType, isTrunc, and MemIndexedMode
...
information. This eliminates the need for the Flags field in MemSDNode,
so this makes LoadSDNode and StoreSDNode smaller. Also, it makes
FoldingSetNodeIDs for loads and stores two AddIntegers smaller.
llvm-svn: 63577
2009-02-03 00:08:45 +00:00
Daniel Dunbar
e0be82956b
Memoize CGFunctionInfo construction.
...
llvm-svn: 63576
2009-02-03 00:07:12 +00:00
Dan Gohman
7403751e16
Change Feature64Bit to not imply FeatureSSE2. All x86-64 hardware has
...
SSE2, however it's possible to disable SSE2, and the subtarget support
code thinks that if 64-bit implies SSE2 and SSE2 is disabled then
64-bit should also be disabled. Instead, just mark all the 64-bit
subtargets as explicitly supporting SSE2.
Also, move the code that makes -march=x86-64 enable 64-bit support by
default to only apply when there is no explicit subtarget. If you
need to specify a subtarget and you want 64-bit code, you'll need to
select a subtarget that supports 64-bit code.
llvm-svn: 63575
2009-02-03 00:04:43 +00:00
Dale Johannesen
72ba6df1a9
Last DebugLoc propagation for this file.
...
llvm-svn: 63574
2009-02-02 23:46:53 +00:00
Mike Stump
99231d5c98
Formatting fix.
...
llvm-svn: 63573
2009-02-02 23:46:21 +00:00
Dan Gohman
f58f0cbfd5
Fix another test to not use -mcpu=yonah with 64-bit code.
...
llvm-svn: 63572
2009-02-02 23:43:59 +00:00
Daniel Dunbar
3668cb2d3c
Change CGFunctionInfo args iterator to not include the return type.
...
llvm-svn: 63571
2009-02-02 23:43:58 +00:00
Douglas Gregor
8bd3c2ebac
Add a macro-based enumeration of all of the Decl nodes (like we do
...
with Stmt/Expr nodes), and convert some of the more mundane
switch-on-all-decl-kinds uses over to use this new file.
llvm-svn: 63570
2009-02-02 23:39:07 +00:00