- Apr 11, 2012
-
-
Jakob Stoklund Olesen authored
Allow cheap instructions to be hoisted if they are register pressure neutral or better. This happens if the instruction is the last loop use of another virtual register. Only expensive instructions are allowed to increase loop register pressure. llvm-svn: 154455
-
Jakob Stoklund Olesen authored
Hoisting a value that is used by a PHI in the loop will introduce a copy because the live range is extended to cross the PHI. The same applies to PHIs in exit blocks. Also use this opportunity to make HasLoopPHIUse() non-recursive. llvm-svn: 154454
-
Jakob Stoklund Olesen authored
llvm-svn: 154453
-
Andrew Trick authored
llvm-svn: 154452
-
Anna Zaks authored
(Applied changes to CStringAPI, Malloc, and Taint.) This might almost never happen, but we should not crash even if it does. This fixes a crash on the internal analyzer buildbot, where postgresql's configure was redefining memmove (radar://11219852). llvm-svn: 154451
-
Jason Molenda authored
llvm-svn: 154450
-
Richard Smith authored
of an uninitialized Stmt* in serialization of __atomic_init and add a test of atomics serialization. llvm-svn: 154448
-
Owen Anderson authored
Move the constant-folding support for FP_ROUND in SelectionDAG from the one-operand version of getNode() to the two-operand version, since it became a two-operand node at sound point. Zap a testcase that this allows us to completely fold away. llvm-svn: 154447
-
Dylan Noblesmith authored
ConstantFP::get(Type*, double) is unreliably host-specific: it can't handle a type like PPC128 on an x86 host. It even has a comment to that effect: "This should only be used for simple constant values like 2.0/1.0 etc, that are known-valid both as host double and as the target format." Instead, use APFloat. While we're at it, randomize the floating point value more thoroughly; it was previously limited to the range 0 to 2**19 - 1. PR12451. llvm-svn: 154446
-
Dylan Noblesmith authored
LangRef.html says: "There are no arrays, vectors or constants of this type." This was hitting assertions when passing the -generate-x86-mmx option. PR12452. llvm-svn: 154445
-
Kostya Serebryany authored
- don't isntrument reads from constant globals. Saves ~1.5% of instrumented instructions on CPU2006 (counting static instructions, not their execution). - don't insrument reads from vtable (which is a global constant too). Saves ~5%. I did not measure the run-time impact of this, but it is certainly non-negative. llvm-svn: 154444
-
Kaelyn Uhrain authored
introduced by the test harness' expansion of %t. llvm-svn: 154443
-
Fariborz Jahanian authored
subscripting. // rdar://11203853 llvm-svn: 154441
-
- Apr 10, 2012
-
-
Sean Callanan authored
cover all possible condition codes. llvm-svn: 154440
-
-
Anna Zaks authored
Generate a sink when the dynamic_cast from a reference fails to represent a thrown exception. llvm-svn: 154438
-
Argyrios Kyrtzidis authored
for methods in categories of super classes. rdar://11220358 llvm-svn: 154436
-
Greg Clayton authored
Added more documentation in the header file to explain how to use the results that are found by the function calls to find_pointer_in_heap(). llvm-svn: 154435
-
Anna Zaks authored
Simulate the C++ dynamic_cast in the analyzer. llvm-svn: 154434
-
Anna Zaks authored
llvm-svn: 154433
-
Douglas Gregor authored
incomplete type, keep track of the actual type that was incomplete. Otherwise, we might fail to produce a diagnostic. Fixes PR12498. llvm-svn: 154432
-
Duncan Sands authored
multiplication by a denormal, and some tests checking that. llvm-svn: 154431
-
Douglas Gregor authored
information and more closely match GCC's, from Nikola Smiljanic! llvm-svn: 154430
-
Bill Wendling authored
StringMap. This was redundant and unnecessarily bloated the MDString class. Because the MDString class is a "Value" and will never have a "name", and because the Name field in the Value class is a pointer to a StringMap entry, we repurpose the Name field for an MDString. It stores the StringMap entry in the Name field, and uses the normal methods to get the string (name) back. PR12474 llvm-svn: 154429
-
Douglas Gregor authored
return types, from Michel Morin! llvm-svn: 154428
-
Chad Rosier authored
llvm-svn: 154427
-
Chad Rosier authored
llvm-svn: 154426
-
Eric Christopher authored
llvm-svn: 154425
-
Douglas Gregor authored
non-type template parameter of pointer type is not a constant expression. llvm-svn: 154424
-
Eric Christopher authored
PR9796 llvm-svn: 154422
-
Douglas Gregor authored
providing code completions for Objective-C method declarations. Fixes <rdar://problem/11164498>. llvm-svn: 154421
-
Eric Christopher authored
and emit a relatively empty block for a plain break statement. This enables us to track where we went through a switch. PR9796 & rdar://11215207 llvm-svn: 154420
-
Greg Clayton authored
llvm-svn: 154419
-
Kostya Serebryany authored
a write to the same temp follows in the same BB. Also add stats printing. On Spec CPU2006 this optimization saves roughly 4% of instrumented reads (which is 3% of all instrumented accesses): Writes : 161216 Reads : 446458 Reads-before-write: 18295 llvm-svn: 154418
-
Eric Christopher authored
don't elide the branch instruction if it's the only one in the block, otherwise it's ok. PR9796 and rdar://11215207 llvm-svn: 154417
-
Sean Callanan authored
not consume slots in the persistent variable store. llvm-svn: 154416
-
Tobias Grosser authored
Suggested by: Sebastian Pop <sebpop@gmail.com> llvm-svn: 154415
-
Owen Anderson authored
llvm-svn: 154414
-
Douglas Gregor authored
'public', 'private', or 'protected', unless code completion patterns are enabled. Fixes <rdar://problem/11189132>. llvm-svn: 154413
-
Jim Grosbach authored
We were incorrectly conflating some add variants which don't have a cc_out operand with the mirroring sub encodings, which do. Part of the awesome non-orthogonality legacy of thumb1. Similarly, handling of add/sub of an immediate was sometimes incorrectly removing the cc_out operand for add/sub register variants. rdar://11216577 llvm-svn: 154411
-