- Jun 16, 2010
-
-
Benjamin Kramer authored
The memcmp will be optimized further and even the pathological case 'strstr(x, "x") == x' generates optimal code now. llvm-svn: 106097
-
- Jun 15, 2010
-
-
Benjamin Kramer authored
llvm-svn: 106047
-
- Jun 14, 2010
-
-
Chris Lattner authored
fixes PR7356. llvm-svn: 105950
-
- Jun 13, 2010
-
-
Benjamin Kramer authored
llvm-svn: 105914
-
- Jun 09, 2010
-
-
Kenneth Uildriks authored
Pulled CodeMetrics out of InlineCost.h and made it a bit more general, so it can be reused from PartialSpecializationCost llvm-svn: 105725
-
- Jun 05, 2010
-
-
Dan Gohman authored
register pressure. llvm-svn: 105501
-
- May 28, 2010
-
-
Dan Gohman authored
lib/Transforms/Utils and into lib/Analysis so that Analysis passes can use them. llvm-svn: 104949
-
- May 26, 2010
-
-
Benjamin Kramer authored
llvm-svn: 104692
-
Benjamin Kramer authored
llvm-svn: 104648
-
- May 21, 2010
-
-
Dan Gohman authored
llvm-svn: 104290
-
Dan Gohman authored
llvm-svn: 104287
-
- May 20, 2010
-
-
Dan Gohman authored
top-level LSRInstance logic. llvm-svn: 104278
-
Dan Gohman authored
llvm-svn: 104276
-
Dan Gohman authored
aren't needed. llvm-svn: 104273
-
Dan Gohman authored
Changed directly instead of using a return value. Rename FilterOutUndesirableDedicatedRegisters's Changed variable to distinguish it from LSRInstance's Changed member. llvm-svn: 104269
-
Dan Gohman authored
llvm-svn: 104268
-
Dan Gohman authored
llvm-svn: 104267
-
Dan Gohman authored
llvm-svn: 104263
-
Dan Gohman authored
operand on the left, the interesting operand is on the right. This fixes a bug where LSR was failing to recognize ICmpZero uses, which led it to be unable to reverse the induction variable in the attached testcase. Delete test/CodeGen/X86/stack-color-with-reg-2.ll, because its test is extremely fragile and hard to meaningfully update. llvm-svn: 104262
-
Dan Gohman authored
it isn't a very interesting change, it's a change nonetheless. llvm-svn: 104260
-
Dan Gohman authored
llvm-svn: 104234
-
Dan Gohman authored
llvm-svn: 104232
-
Dan Gohman authored
and fix a bug that valgrind noticed where the code would std::swap an element with itself. llvm-svn: 104225
-
Dan Gohman authored
the addressing modes don't make this trivially easy. This allows it to avoid falling into the less precise heuristics in more cases. llvm-svn: 104186
-
- May 19, 2010
-
-
Dan Gohman authored
llvm-svn: 104089
-
Dan Gohman authored
constants in registers which partially cancel out their immediate fields. llvm-svn: 104088
-
Dan Gohman authored
of its formulae have been removed into a helper function, and also teach it how to update the RegUseTracker. llvm-svn: 104087
-
Dan Gohman authored
function. llvm-svn: 104082
-
Dan Gohman authored
llvm-svn: 104080
-
Dan Gohman authored
a helper function. llvm-svn: 104079
-
Dan Gohman authored
llvm-svn: 104078
-
Dan Gohman authored
is inconsistent with the BaseRegs field. It's not print's job to assert on an invalid condition, but it can make one more obvious. llvm-svn: 104077
-
Dan Gohman authored
confusion with LSRInstance's RegUses member. llvm-svn: 104076
-
- May 11, 2010
-
-
Douglas Gregor authored
llvm-svn: 103457
-
- May 09, 2010
-
-
Chris Lattner authored
when it detects undefined behavior. llvm.trap generally codegens into some thing really small (e.g. a 2 byte ud2 instruction on x86) and debugging this sort of thing is "nontrivial". For example, we now compile: void foo() { *(int*)0 = 42; } into: _foo: pushl %ebp movl %esp, %ebp ud2 Some may even claim that this is a security hole, though that seems dubious to me. This addresses rdar://7958343 - Optimizing away null dereference potentially allows arbitrary code execution llvm-svn: 103356
-
- May 08, 2010
-
-
Chris Lattner authored
llvm-svn: 103347
-
Dan Gohman authored
LSRUse's Regs set after all pruning is done, rather than trying to do it on the fly, which can produce an incomplete result. This fixes a case where heuristic pruning was stripping all formulae from a use, which led the solver to enter an infinite loop. Also, add a few asserts to diagnose this kind of situation. llvm-svn: 103328
-
- May 07, 2010
-
-
Ted Kremenek authored
llvm-svn: 103266
-
Dan Gohman authored
as MachineSink, but it isn't constrained by MachineInstr-level details. llvm-svn: 103257
-
- May 05, 2010
-
-
Bob Wilson authored
This fixes the compile-time regressions seen in last night's tests. llvm-svn: 103118
-