aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/JSBackend/JSBackend.cpp
AgeCommit message (Collapse)Author
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-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-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 an abort if calling an absolute addressAlon Zakai
2014-02-14Minor code simplification.Dan Gohman
2014-02-14Don't try to nativize aggregate allocas.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-07group together initial allocasAlon Zakai
2014-02-07refactor function printing into a functionAlon Zakai
2014-02-06optimize small constant memcpyAlon Zakai
2014-02-05handle double strings with an uneven number of charsAlon Zakai
2014-02-05better unaligned log outputAlon Zakai
2014-02-04option to warn about unaligned loads and storesAlon Zakai
2014-02-04refactor getLoad|getStore to receive an instructionAlon Zakai
2014-02-03ensure a + on large constants in Math_froundAlon Zakai
2014-02-03fix asm casts of float as ffi paramsAlon Zakai
2014-02-03generalize hardcoded HEAPF32 load castsAlon Zakai
2014-02-03function table support for floatsAlon Zakai
2014-02-03ffi call support for floatsAlon Zakai
2014-02-03precise float supportAlon Zakai
2014-02-02remove extra indentation on runPostSetsAlon Zakai
2014-02-02abort on loads from constant addresses in general, not just based on weird ↵Alon Zakai
alignment
2014-02-02support llvm.usedAlon Zakai
2014-02-02ignore fencesAlon Zakai
2014-01-31Fix a printf format warning.Dan Gohman
2014-01-31Eliminate more temporary std::strings.Dan Gohman
2014-01-31Use internal name linkage.Dan Gohman
2014-01-31Eliminate temporary std::strings.Dan Gohman
2014-01-31Use CmpInst::isUnsigned.Dan Gohman
2014-01-31Implement unordered comparisons.Dan Gohman
2014-01-31Implement FNeg operators.Dan Gohman
2014-01-29fix switch choice codeAlon Zakai
2014-01-29clean up some fixmesAlon Zakai
2014-01-27fix missing separator in unaligned read codeAlon Zakai