summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* sort locals by number of total copiesAlon Zakai2016-09-101-11/+77
|
* take into account removed copies even when number of locals is the same, in ↵Alon Zakai2016-09-091-5/+46
| | | | coalesce-locals
* optimize loop endings in RemoveUnusedBrsAlon Zakai2016-09-093-2/+182
| | | | | * rotate an if near the end of a loop as it can let a break out flow naturally and be removable * turn a br_if into an if it allows such an optimization in cases where it helps remove other structures
* enable udivmoddi4 opts in asm2wasmAlon Zakai2016-09-081-16/+14
|
* autodrop if body if no elseAlon Zakai2016-09-072-0/+10
|
* properly handle blocks with return values in vacuum - we cannot remove their ↵Alon Zakai2016-09-071-3/+22
| | | | final value directly, we can only do that if it is dropped, from the drop
* vacuum drops betterAlon Zakai2016-09-071-8/+21
|
* do a first pass in SimplifyLocals that focuses on single-use localsAlon Zakai2016-09-071-12/+36
|
* flip select-eqz when possibleAlon Zakai2016-09-071-2/+13
|
* optimize out a set of a get of a globalAlon Zakai2016-09-071-0/+8
|
* track globals in EffectAnalyzerAlon Zakai2016-09-071-4/+22
|
* optimize loads+shifts into signed loadsAlon Zakai2016-09-071-0/+27
|
* optimize out eqz^2Alon Zakai2016-09-072-0/+30
|
* add option to remove duplicate funcs by nameAlon Zakai2016-09-071-0/+10
|
* use eqz as an optimizationAlon Zakai2016-09-072-2/+40
|
* ensure we create the OptimizeInstructions database on demand, avoiding ↵Alon Zakai2016-09-073-3/+43
| | | | global ctors
* make sure to use the right order of operations when loading composite ints ↵Alon Zakai2016-09-071-3/+6
| | | | in binary format reading
* if we don't recognize the platform in colors.h, just do nothing for colorsAlon Zakai2016-09-071-0/+9
|
* new validation checks for upcoming spec testsAlon Zakai2016-09-072-5/+34
|
* additional parsing support for new spec thingsAlon Zakai2016-09-071-22/+74
|
* new export syntax in spec repoAlon Zakai2016-09-073-23/+53
|
* new import syntax in spec repoAlon Zakai2016-09-072-31/+40
|
* Add a ReFinalize helper, and use that to properly handle asm.js imports ↵Alon Zakai2016-09-072-9/+53
| | | | whose return value is polymorphic
* support HEAP8[x | 0| notation in asm2wasmAlon Zakai2016-09-071-1/+3
|
* import memoryBase and tableBaseAlon Zakai2016-09-073-11/+29
|
* import tableAlon Zakai2016-09-073-17/+47
|
* import memory #684Alon Zakai2016-09-073-6/+41
|
* refactor reallocBuffer assignment location, it is not technically part of ↵Alon Zakai2016-09-071-6/+8
| | | | mergeMemory
* add asm2wasm option to import a mem init fileAlon Zakai2016-09-072-3/+32
| | | | | | | | apply memory segments only if there isn't a memory initializer (which we need for asmjs and asm2wasm modes) use wasm-opt to check recreated wasts for validity, as wasm-shell would try to execute them add testing for combined modes like asmjs,interpret-binary
* do a little more optimization at the end of asm2wasm processingAlon Zakai2016-09-071-1/+4
|
* sink a drop into a single if armAlon Zakai2016-09-071-0/+19
|
* autodrop must be run before we optimize in asm2wasm, as otherwise its input ↵Alon Zakai2016-09-073-4/+12
| | | | | | is not yet valid then after finalizeCalls, we must autodrop again to drop things that finalizeCalls changed
* don't simplify locals out of loops if they contain branching, as it may ↵Alon Zakai2016-09-071-0/+3
| | | | invalidate the branch
* use ControlFlowWalker in CFGWalkerAlon Zakai2016-09-071-35/+25
|
* when replacing an if with its condition (when it has no body), we must drop itAlon Zakai2016-09-071-1/+1
|
* allow forcing full print mode in the envAlon Zakai2016-09-071-0/+3
|
* add some finalize() calls for ifsAlon Zakai2016-09-071-1/+3
|
* finalize loops in asm2wasm, which is now necessary as they may need to be ↵Alon Zakai2016-09-071-0/+5
| | | | dropped
* drop the first element in a block too, if necessaryAlon Zakai2016-09-071-1/+1
|
* run vacuum again after autodrop in asm2wasm, if optimizingAlon Zakai2016-09-071-0/+1
|
* handle asm.js globals that are set and the return value usedAlon Zakai2016-09-071-1/+4
|
* fix AutoDrop block handling - the block type might change as we modify its ↵Alon Zakai2016-09-071-0/+1
| | | | contents
* improve full mode printingAlon Zakai2016-09-071-0/+3
|
* fix ControlFlowWalker handling of ifs when looking for break targetsAlon Zakai2016-09-071-1/+2
|
* asm2wasm debugging assertsAlon Zakai2016-09-071-1/+2
|
* set type of calls to their target, instead of the previous behavior where ↵Alon Zakai2016-09-071-4/+10
| | | | the asm.js context informed us. this lets us add drops where necessary
* use globals in asm2wasmAlon Zakai2016-09-0710-143/+131
|
* get_global and set_global use a Name instead of an Index, to be more ↵Alon Zakai2016-09-077-54/+39
| | | | consistent with refering to other global objects; e.g. this avoids ordering issues with imported vs non-imported globals
* import type for globalsAlon Zakai2016-09-079-25/+36
|
* import kindsAlon Zakai2016-09-078-28/+84
|