Commits

Show all
Author Commit Message Labels Comments Date
Duncan Sands
Make VAARG promotion work correctly with large funky sized integers like i129, and also reduce the number of assumptions made about how vaarg is implemented. This still doesn't work correctly for small integers like (eg) i1 on x86, since x86 passes each of them (essentially an i8) in a 4 byte stack slot, so the pointer needs to be advanced by 4 bytes not by 1 byte as now. But this is no longer a LegalizeTypes problem (it was also wrong in LT before…
Tags
checker-121
Dan Gohman
Overload AddInteger on int/long/long long instead of on int/int64_t, to avoid overload ambiguities. This fixes build errors introduced by r58623.
Devang Patel
Ignore conditions that are outside the loop.
Andrew Lenharth
add a period at the end of the comment, ignoring the fact that the comment would be hard pressed to be considered a sentence, but if it makes Bill happy...
Jim Grosbach
Add binary encoding support for multiply instructions. Some blanks left to fill in, but the basics are there.
Tags
checker/checker-121
Devang Patel
Turn floating point IVs into integer IVs where possible. This allows SCEV users to effectively calculate trip count. LSR later on transforms back integer IVs to floating point IVs later on to avoid int-to-float casts inside the loop.
Dan Gohman
Refactor various TargetAsmInfo subclasses' TargetMachine members away adding a TargetMachine member to the base TargetAsmInfo class instead.
Dan Gohman
Change how extended types are represented in MVTs. Instead of fiddling bits, use a union of a SimpleValueType enum and a regular Type*. This increases the size of MVT on 64-bit hosts from 32 bits to 64 bits. In most cases, this doesn't add significant overhead. There are places in codegen that use arrays of MVTs, so these are now larger, but they're small in common cases. This eliminates restrictions on the size of integer types and vector types that can be represented in codegen. As the included testcase demonstrates, it's now p…
Daniel Dunbar
Comment fix.
Dan Gohman
Remove redundant inline keywords from functions defined within class definitions.
Andrew Lenharth
Ensure that we are checking only calls to the function we are interested in specializing
Anton Korobeynikov
Testcase for recent llvm-gcc fix
Duncan Sands
Make VAARG work with x86 long double (which is 10 bytes long, but is passed in 12/16 bytes).
matthijs
Make MachineFrameInfo::print not crash when no TargetFrameInfo is available.
Evan Cheng
Silence a compiler warning.
Nick Lewycky
Typo
Nick Lewycky
Replace explicit loop with utility function.
Nick Lewycky
Don't crash analyzing certain quadratics (addrec of {X,+,Y,+,1}). We're still waiting on code that actually analyzes them properly.
Owen Anderson
Revert my last patch until I consult with Evan about it.
Nick Lewycky
Changes from Duncan's review: * merge two weak functions by making them both alias a third non-weak fn * don't reimplement CallSite::hasArgument * whitelist the safe linkage types
Anton Korobeynikov
Testcase for PR2691
Anton Korobeynikov
Silence a warning
Duncan Sands
Get this building on 64 bit machines (error: cast from ‘const llvm::PointerType*’ to ‘unsigned int’ loses precision).
Owen Anderson
Don't do pre-splitting if doing so would create a value join that did not exist before. Updating the live intervals in that care is tricky in the general case. Evan, if you see a tighter guard condition for this, let me know.
Oscar Fuentes
CMake: added a source file.
Nick Lewycky
Whoops! Remove test Output/ directory.
Nick Lewycky
Add a new MergeFunctions pass. It finds identical functions and merges them. This triggers only 60 times in llvm-test (look at .llvm.bc, not .linked.rbc) and so it probably wont be turned on by default. Also, may of those are likely to go away when PR2973 is fixed.
Nick Lewycky
Fix demanded bits analysis with srem by negative number. Based on a patch by Richard Osborne.
Dan Gohman
Fix this recently moved code to use the correct type. CI is now a ConstantInt, and SI is the original cast instruction. This fixes PR2996.
Mon P Wang
Added interface to allow clients to create a MemIntrinsicNode for target intrinsics that touches memory
  1. Prev
  2. Next