aboutsummaryrefslogtreecommitdiff
path: root/lib/Target
AgeCommit message (Collapse)Author
2014-03-03Don't store padding zeros for a ConstantAggregateZero.Dan Gohman
2014-03-02tolerate phis that refer to values from unreachable blocksAlon Zakai
2014-02-28Move ExpandI64 into lib/Target/JSBackend.Dan Gohman
2014-02-28Implement llvm.flt.rounds and disable the createRewriteLLVMIntrinsicsPass pass.Dan Gohman
2014-02-28fix check on whether a global is external; fixes issue #24Alon Zakai
2014-02-28use use_emptyAlon Zakai
2014-02-27emit assigns only for variables actually usedAlon Zakai
2014-02-26Merge pull request #23 from sunfishcode/incomingAlon Zakai
Incoming
2014-02-25properly handle align 0 on memcpy and memset, warning if asked forAlon Zakai
2014-02-25Fix handling of ConstantExpr Selects.Dan Gohman
2014-02-25comment on technically incorrect handling of alignment 0 in memcpy and memsetAlon Zakai
2014-02-25Eliminate a few more temporary std::strings.Dan Gohman
2014-02-25Support GEP and ConstantExprs directly in the JSBackend.Dan Gohman
This patch also lays the groundwork for the single-use instruction trick to reduce the number of temporary variables.
2014-02-25Minor code simplifications.Dan Gohman
2014-02-20indirectbr supportAlon Zakai
2014-02-19tolerate arbitrary illegal chars in global names, lower all of them to _Alon Zakai
2014-02-19Fix atomic decrement (operand order of emitted code was flipped).jonas echterhoff
2014-02-18remove locale call handlers, we do this in the js library nowAlon Zakai
2014-02-18guarantee that sanitize() returns a proper non-colliding value for each inputAlon Zakai
2014-02-18leave lines with calls to no-ops without a ;Alon Zakai
2014-02-17support reserved function pointersAlon Zakai
2014-02-17only emit declares with usesAlon Zakai
2014-02-14emit nothing for lifetime intrinsicsAlon Zakai
2014-02-14emit an abort if calling an absolute addressAlon Zakai
2014-02-14Another minor code simplification.Dan Gohman
2014-02-14Minor code simplification.Dan Gohman
2014-02-14Don't try to nativize aggregate allocas.Dan Gohman
2014-02-14Fix a crash when an alloca has no ultimate users.Dan Gohman
2014-02-14Handle pointer types and ConstantExprs in more places.Dan Gohman
2014-02-14Use DataLayout to determine type size.Dan Gohman
getPrimitiveSizeInBits works on integer types but not on pointer types. This change makes the code more robust, and will help support the removal of the pointer lowering pass. This also requires removing const from some Type pointers. Types are immutable, so the convention is that const is redundant.
2014-02-14Respect the requested signedness for pointer values.Dan Gohman
2014-02-14Handle ConstantPointerNull correctly in more places.Dan Gohman
2014-02-14emit bool constants as unsigned in a consistent mannerAlon Zakai
2014-02-12Revamp ExpandI64.Dan Gohman
By using a reverse-postorder traversal of the basic blocks, we can perform this transform in a single pass. This eliminates the need for tricky coordination between the passes.
2014-02-12Constify more things.Dan Gohman
2014-02-12Use the LLVM pass-manager infrastructure for DataLayout.Dan Gohman
2014-02-12Map optimizations.Dan Gohman
2014-02-12Use more LLVM-idiomatic debug and error facilities.Dan Gohman
2014-02-12Change some dyn_casts to casts.Dan Gohman
2014-02-12add missing |0s in unaligned accessesAlon Zakai
2014-02-07fewer casts on math callsAlon Zakai
2014-02-07group together initial allocasAlon Zakai
2014-02-07refactor function printing into a functionAlon Zakai
2014-02-06handle align 0 in memcpy and memsetAlon Zakai
2014-02-06optimize partially aligned memcpysAlon Zakai
2014-02-06optimize partially aligned memsetsAlon Zakai
2014-02-06optimize constant memsetsAlon Zakai
2014-02-06optimize memcpy loopsAlon Zakai
2014-02-06optimize small constant memcpyAlon Zakai
2014-02-05handle double strings with an uneven number of charsAlon Zakai