- Apr 02, 2010
-
-
Mon P Wang authored
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset, e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1) llvm-svn: 100191
-
Dan Gohman authored
it can't currently observe such changes automatically. llvm-svn: 100186
-
Bob Wilson authored
llvm-svn: 100177
-
Eric Christopher authored
llvm-svn: 100176
-
Dan Gohman authored
in particular, they end up aligning strings at 16-byte boundaries, and there's no way for GlobalOpt to check OptForSize. llvm-svn: 100172
-
Evan Cheng authored
After trivial coalescing, the MI being visited may have become a copy. Avoid adding it to CSE hash table since copies aren't being considered for CSE and they may be deleted. rdar://7819990 llvm-svn: 100170
-
Dale Johannesen authored
folder to be tolerant of debug info following the branch(es) at the end of a block. llvm-svn: 100168
-
Chandler Carruth authored
llvm-svn: 100167
-
Bob Wilson authored
llvm-svn: 100164
-
Dan Gohman authored
This fixes test/Transforms/GlobalOpt/gv-align.ll. llvm-svn: 100161
-
Dan Gohman authored
llvm-svn: 100160
-
Bob Wilson authored
This is more efficient than adding them to the worklist and then ignoring them. llvm-svn: 100158
-
Dan Gohman authored
likely not a bitcode file at all, rather than being a bitcode file which is truncated. Check for this case and issue a more relevant error message. llvm-svn: 100156
-
Bob Wilson authored
llvm-svn: 100148
-
Bob Wilson authored
llvm-svn: 100147
-
Eric Christopher authored
llvm-svn: 100146
-
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
-