Commits

Show all
Author Commit Message Labels Comments Date
Rafael Avila de Espindola
Add a Program argument to diffProgram to avoid a use of swapProgramIn.
Tags
checker-246
Benjamin Kramer
Tweak suppressions.
Eli Friedman
Fix for bug reported by Evzen Muller on llvm-commits: make sure to correctly check the range of the constant when optimizing a comparison between a constant and a sign_extend_inreg node.
Duncan Sands
Do not pass a copy of the value map, pass a reference to it.
Duncan Sands
Fix the ValueMap copy constructor. The issue is that the map keys are value handles with a pointer to the containing map. When a map is copied, these pointers need to be corrected to point to the new map. If not, then consider the case of a map M1 which maps a value V to something. Create a copy M2 of M1. At this point there are two value handles on V, one representing V as a key in M1, the other representing V as a key in M2. But both value handles point to M1 as th…
Jim Grosbach
Many Thumb2 instructions can reference the full ARM register set (i.e., have 4 bits per register in the operand encoding), but have undefined behavior when the operand value is 13 or 15 (SP and PC, respectively). The trivial coalescer in linear scan sometimes will merge a copy from SP into a subsequent instruction which uses the copy, and if that instruction cannot legally reference SP, we get bad code such as: mls r0,r9,r0,sp instead of: mov r2, sp mls r0, r9, r0, r2 This patch adds a new register class for use by Thumb2 that excludes the problematic registers (SP and PC) and is used instead of GPR for those operands which cannot legally reference PC or SP. The trivial coalescer explicitly requires that the register class of the destination for the COPY instruction contain the source register for the COPY to be considered for coalescing. This prevents errant i…
Gabor Greif
remove a layer of cruft
Eric Christopher
Fix this up per llvm-gcc r109819.
Benjamin Kramer
Supress valgrind errors from python.
Bob Wilson
Remove the temporary hack, now that the llvm-i686-linux buildbot has completed a successful build.
Nate Begeman
Add builtins for ssat/usat, similar to RealView's __ssat and __usat intrinsics.
Bob Wilson
Fix the temporary hack.
Daniel Dunbar
Temporary hack to ensure stale Analysis dir is cleaned up on llvm-i686-linux.
Benjamin Kramer
Remove XFAIL, test doesn't leak anymore.
Bob Wilson
Refactor ARM-specific DAG combining in preparation for adding some more transformations.
Dale Johannesen
Implement vector constants which are splat of integers with mov + vdup. 8003375. This is currently disabled by default because LICM will not hoist a VDUP, so it pessimizes the code if the construct occurs inside a loop (8248029).
Bob Wilson
Don't assert on an unrecognized BrMiscFrm instruction. PR7745.
John McCall
Transcribe IRC to svn. Also don't print basic block names twice if they match.
Eric Christopher
Grammar.
John McCall
Make the header self-contained and follow #include guidelines.
Eli Friedman
PR7750: !CExpr->isNullValue() only properly computes whether CExpr is nonnull if CExpr is a ConstantInt.
Owen Anderson
Make un-named values legible in certain vim configurations.
Nate Begeman
Add intrinsics __builtin_arm_qadd & __builtin_arm_qsub to allow access to the QADD & QSUB instructions. Behave identically to __qadd & __qsub RealView instruction intrinsics.
John McCall
Switch to using the LLVM CommandLine library so that our help message is properly contaminated with nonsense about timing passes that doesn't apply at all to this utility. :)
Benjamin Kramer
Plug the remaining MC leaks by giving MCObjectStreamer/MCAsmStreamer ownership of the TargetAsmBackend and the MCCodeEmitter.
Dale Johannesen
Comment typo.
Jakob Stoklund Olesen
Revert r109652, and remove the offending assert in loadRegFromStackSlot instead. We do sometimes load from a too small stack slot when dealing with x86 arguments (varargs and smaller-than-32-bit args). It looks like we know what we are doing in those cases, so I am going to remove the assert instead of artifically enlarging stack slot sizes. The assert in storeRegToStackSlot stays in. We don't want to write beyond the bounds of a stack slot.
Daniel Dunbar
CrashRecovery: Use ThreadLocal::erase() instead of set(0).
Rafael Avila de Espindola
Make the test while reducing blocks functional. This avoids accessing freed memory when one of the original BB is destroyed.
Benjamin Kramer
Stop leaking std::strings in GetDwarfFile.
  1. Prev
  2. Next