- Mar 11, 2011
-
-
John Wiegley authored
The existing CompEnd predicate does not define a strict weak order as required by the C++03 standard; therefore, its use as a predicate to std::upper_bound is invalid. For a discussion of this issue, see http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#270 This patch replaces the asymmetrical comparison with an iterator adaptor that achieves the same effect while being strictly standard-conforming by ensuring an apples-to-apples comparison. llvm-svn: 127462
-
Cameron Zwarich authored
lowering of objectsize intrinsics. Unfortunately, a number of tests were relying on llc not optimizing trivial branches, so I had to add an option to allow them to continue to test what they originally tested. This fixes <rdar://problem/8785296> and <rdar://problem/9112893>. llvm-svn: 127459
-
Chris Lattner authored
llvm-svn: 127453
-
Jim Grosbach authored
llvm-svn: 127442
-
Eric Christopher authored
corresponding testcases back to the previous versions. Fixes some performance regressions only seen on 32-bit. llvm-svn: 127441
-
Evan Cheng authored
Avoid replacing the value of a directly stored load with the stored value if the load is indexed. rdar://9117613. llvm-svn: 127440
-
Jim Grosbach authored
llvm-svn: 127434
-
- Mar 10, 2011
-
-
Dan Gohman authored
Value, not an Instruction, so casting is not necessary. Also, it's theoretically possible that the Value is not an Instruction, since WeakVH follows RAUWs. llvm-svn: 127427
-
Rafael Espindola authored
llvm-svn: 127426
-
Dan Gohman authored
after it has finished all of its reassociations, because its habit of unlinking operands and holding them in a datastructure while working means that it's not easy to determine when an instruction is really dead until after all its regular work is done. rdar://9096268. llvm-svn: 127424
-
Jim Grosbach authored
llvm-svn: 127423
-
Jim Grosbach authored
llvm-svn: 127422
-
Jim Grosbach authored
llvm-svn: 127420
-
Benjamin Kramer authored
This happens a lot in clang-compiled C++ code because it adds overflow checks to operator new[]: unsigned *foo(unsigned n) { return new unsigned[n]; } We can optimize away the overflow check on 64 bit targets because (uint64_t)n*4 cannot overflow. llvm-svn: 127418
-
Rafael Espindola authored
llvm-svn: 127417
-
Rafael Espindola authored
llvm-svn: 127416
-
Jakob Stoklund Olesen authored
llvm-svn: 127413
-
Justin Holewinski authored
llvm-svn: 127410
-
Rafael Espindola authored
support for creating buffers that cover only a part of a file. llvm-svn: 127409
-
Cameron Zwarich authored
llvm-svn: 127398
-
Che-Liang Chiou authored
llvm-svn: 127397
-
Jakob Stoklund Olesen authored
This makes it possible to register delegates and get callbacks when the spiller edits live ranges. llvm-svn: 127389
-
Jakob Stoklund Olesen authored
llvm-svn: 127388
-
Francois Pichet authored
llvm-svn: 127383
-
Stuart Hastings authored
llvm-svn: 127382
-
Devang Patel authored
Introduce DebugInfoProbe. This is used to monitor how llvm optimizer is treating debugging information. It generates output that lools like 8 times line number info lost by Scalar Replacement of Aggregates (SSAUp) 1 times line number info lost by Simplify well-known library calls 12 times variable info lost by Jump Threading llvm-svn: 127381
-
Evan Cheng authored
llvm-svn: 127380
-
Evan Cheng authored
llvm-svn: 127376
-
- Mar 09, 2011
-
-
Evan Cheng authored
flexible. If it returns a register class that's different from the input, then that's the register class used for cross-register class copies. If it returns a register class that's the same as the input, then no cross- register class copies are needed (normal copies would do). If it returns null, then it's not at all possible to copy registers of the specified register class. llvm-svn: 127368
-
Benjamin Kramer authored
llvm-svn: 127365
-
Devang Patel authored
llvm-svn: 127362
-
-
Johnny Chen authored
The insufficient encoding information of the combined instruction confuses the decoder wrt UQADD16. Add extra logic to recover from that. Fixed an assert reported by Sean Callanan llvm-svn: 127354
-
Eric Christopher authored
command line, they'll still be seen with -help-hidden. llvm-svn: 127353
-
Devang Patel authored
llvm-svn: 127352
-
Jakob Stoklund Olesen authored
The damage done by physreg coalescing only depends on the number of instructions the extended physreg live range covers. This fixes PR9438. The heuristic is still luck-based, and physreg coalescing really should be disabled completely. We need a register allocator with better hinting support before that is possible. Convert a test to FileCheck and force spilling by inserting an extra call. The previous spilling behavior was dependent on misguided physreg coalescing decisions. llvm-svn: 127351
-
Bruno Cardoso Lopes authored
llvm-svn: 127349
-
Andrew Trick authored
This helps cases like 2008-07-19-movups-spills.ll, but doesn't have an obvious impact on benchmarks llvm-svn: 127347
-
Jan Sjödin authored
Add createELFObjectTargetWriter method to TargetAsmBackend, which enables construction of non-standard ELFObjectWriters that can be used in MCJIT. llvm-svn: 127346
-
Jan Sjödin authored
llvm-svn: 127343
-