- Apr 02, 2010
-
-
Devang Patel authored
llvm-svn: 100145
-
David Greene authored
Add some switches helpful for debugging: -print-before=<Pass Name> Dump IR before running pass <Pass Name>. -print-before-all Dump IR before running each pass. -print-after-all Dump IR after running each pass. These are helpful when tracking down a miscompilation. It is easy to get IR dumps and do diffs on them, etc. To make this work well, add a new getPrinterPass API to Pass so that each kind of pass (ModulePass, FunctionPass, etc.) can create a Pass suitable for dumping out the kind of object the Pass works on. llvm-svn: 100143
-
- Apr 01, 2010
-
-
Evan Cheng authored
llvm-svn: 100137
-
Devang Patel authored
Do not eagerly record known previous location. DBG_VALUE may not cause a new label due to one or other reason. llvm-svn: 100134
-
Evan Cheng authored
llvm-svn: 100133
-
Evan Cheng authored
llvm-svn: 100132
-
Bob Wilson authored
llvm-svn: 100131
-
Bob Wilson authored
one place. This removes the template function added in svn 94690. llvm-svn: 100130
-
Bob Wilson authored
blow out the stack for really big functions. Start by fixing an easy case. llvm-svn: 100126
-
Evan Cheng authored
- Do not try to infer GV alignment unless its type is sized. It's not possible to infer alignment if it has opaque type. llvm-svn: 100118
-
Devang Patel authored
llvm-svn: 100117
-
Devang Patel authored
Update comment, rename a local variable. llvm-svn: 100116
-
Benjamin Kramer authored
llvm-svn: 100107
-
Benjamin Kramer authored
- Use a RAII object to close the FD. - Use sys::StrError instead of thread-unsafe strerror calls. - Recover gracefully if read returns zero. This works around an issue on DragonFlyBSD where /dev/null has an st_size of 136 but we can't read 136 bytes from it. llvm-svn: 100106
-
Gabor Greif authored
is necessary. Inherits from new templated baseclass CallSiteBase<> which is highly customizable. Base CallSite on it too, in a configuration that allows full mutation. Adapt some call sites in analyses to employ ImmutableCallSite. llvm-svn: 100100
-
Nick Lewycky authored
patch back in r94322. llvm-svn: 100097
-
Chris Lattner authored
of raw mdnodes. This allows frontends to specify debug locations without ever creating an MDNode for the DILocation. This requires a corresponding clang/llvm-gcc change which I'll try to commit as simultaneously as possible. llvm-svn: 100095
-
Evan Cheng authored
1. Makes it possible to lower with floating point loads and stores. 2. Avoid unaligned loads / stores unless it's fast. 3. Fix some memcpy lowering logic bug related to when to optimize a load from constant string into a constant. 4. Adjust x86 memcpy lowering threshold to make it more sane. 5. Fix x86 target hook so it uses vector and floating point memory ops more effectively. rdar://7774704 llvm-svn: 100090
-
Evan Cheng authored
llvm-svn: 100089
-
Chris Lattner authored
being a TrackingVH<MDNode> to a NewDebugLoc, shrinking sizeof(Instruction) a lot, and providing clients the ability to deal with locations in terms of NewDebugLoc instead of having to deal with Metadata. This is still fully compatible with all clients that *do* use MDNodes for everything of course. No functionality change. llvm-svn: 100088
-
Chris Lattner authored
llvm-svn: 100087
-
Chris Lattner authored
to used deferred resolution instead of creating a temporary node + rauw. There is no reason to create the temporary mdnode, then do rauw, then destroy it. llvm-svn: 100086
-
Chris Lattner authored
entry in the Scope+InlinedAt drops to a non-canonical form, we need to reset the idx member of both VH's to 0. llvm-svn: 100084
-
Chris Lattner authored
llvm-svn: 100083
-
Chris Lattner authored
llvm-svn: 100082
-
Chris Lattner authored
llvm-svn: 100081
-
Eric Christopher authored
aes instead of sse4.2. Add a brief todo for a subtarget flag and rework the aeskeygenassist instruction to more closely match the docs. llvm-svn: 100078
-
Chris Lattner authored
llvm-svn: 100074
-
Chris Lattner authored
and will replace the 'DbgInfo' member in Instruction. The benefit of NewDebugLoc is that it is compact (8 bytes vs 12/24 bytes for the DbgInfo member in Instruction on a 32/64 bit system), it means that we will end up not having to allocate MDNodes to represent the "DILocations" in common cases of -O0 -g, and it is much more efficient to get things out of than the MDNode. llvm-svn: 100072
-
Jim Grosbach authored
llvm-svn: 100066
-
Bill Wendling authored
llvm-svn: 100065
-
Bill Wendling authored
llvm-svn: 100062
-
Stuart Hastings authored
llvm-svn: 100058
-
Bill Wendling authored
* Set the "DestA" and "DestB" according to how they're understood by the method. I.e., if one or both of them should point to the "fall through" block, then point to the fall through block. * Improve the loop that removes superfluous edges to be more understandable. llvm-svn: 100056
-
- Mar 31, 2010
-
-
Stuart Hastings authored
Debug info can now properly represent functions inside classes inside other functions. Partial fix for Radar 7424645. llvm-svn: 100048
-
Bob Wilson authored
PHIs. The previous algorithm was unable to reliably detect when existing PHIs in a cycle can be reused. I'm still working on reducing a testcase. Radar 7711900. llvm-svn: 100047
-
Dale Johannesen authored
generate wrong code pretty much anywhere AFAICT. A case that hits the bug reproducibly is impossible, but the situation was like this: Addr = ... Store -> Addr Addr2 = GEP , 0, 0 Store -> Addr2 Handling the first store, the code changed replaced Addr with a sunkaddr and deleted Addr, but not its table entry. Code in OptimizedBlock replaced Addr2 with a bitcast; if that happened to reuse the memory of Addr, the old table entry was erroneously found when handling the second store. llvm-svn: 100044
-
Chris Lattner authored
llvm-svn: 100042
-
Benjamin Kramer authored
llvm-svn: 100038
-
Jakob Stoklund Olesen authored
llvm-svn: 100037
-