-
Notifications
You must be signed in to change notification settings - Fork 194
Global Deadcode Elimination #1503
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
134 commits
Select commit
Hold shift + click to select a range
ca8948a
init
micahcantor a39b91a
Merge branch 'ocsigen:master' into new_deadcode
micahcantor 31fe9f0
more progress
micahcantor ee93b38
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 55e413d
prep for debugging
micahcantor c63bd52
more updates, debugging info
micahcantor dbdf3bb
updates
micahcantor 4a389e3
more updates
micahcantor f8e73ef
initial support for annotating blocks
micahcantor 7d6e5bf
more updates
micahcantor e42a15b
join propagation
micahcantor a37fa06
remove old comments
micahcantor 647d695
add block param defs
micahcantor ccc5dd5
fix equality, dep contribution
micahcantor cacad1d
move some logic from defs to deps
micahcantor 3b7e811
clean up small bugs
micahcantor 85ed6ae
don't count closure params as used
micahcantor eb7c895
add initial elimination alg
micahcantor 20ca40d
rearranging
micahcantor 49d5f9a
update deadcode sig
micahcantor bfd58d5
expose expr print
micahcantor b3db3dd
fix filter args and closure cont
micahcantor 3a97925
fix bug with cond
micahcantor 4e8097a
add sentinal var
micahcantor c940f38
add basic compaction block pass
micahcantor a61e0b2
fix pushtrap variable
micahcantor 12fdc47
expose print constant
micahcantor 56902fe
initial global support
micahcantor 49464e0
more global support
micahcantor 936c3e4
update print uses
micahcantor 9c45d78
cleanup, fix block propagation
micahcantor 461fd7b
add new debug flag
micahcantor 64de253
switch to zeroing out
micahcantor ac4358a
call global flow once in driver
micahcantor 176cf04
new test file
micahcantor a38d181
add back dgraph call in driver
micahcantor 18678f6
revert changes to driver
micahcantor 65b7d9d
tweaks
micahcantor 2a3462f
pull out sentinal
micahcantor efc617c
Fix global flow analysis
vouillon 2ff4b2b
Merge branch 'global-flow-fix' of https://github.com/ocsigen/js_of_oc…
micahcantor d73622c
add disable globaldeadcode flag, fix tests
micahcantor b901fde
expose variable_may_escape
micahcantor aa2c32d
use variable_may_escape
micahcantor 938c8af
fix infinite loop bug
micahcantor 264cb33
change sentinal to undefined
micahcantor 9c4c80d
begin adding unit tests
micahcantor 16606a6
add new test
micahcantor a6ee4f9
small change to stdlib
micahcantor 4f0c0a0
documentation
micahcantor 50bcd07
update comment
micahcantor ae242e8
Merge branch 'ocsigen:master' into new_deadcode
micahcantor 0c8f861
changing how args are handled
micahcantor 05080cd
Revert "changing how args are handled"
micahcantor 40bfbe8
improve argument initial liveness/usage
micahcantor 8ce76b6
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor d67e8ea
promote var renaming changes
micahcantor 5bfe4e3
Merge branch 'master' into new_deadcode
micahcantor 5dce2b0
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 89df59f
sentinal name, start recursive liveness
micahcantor 2e62a34
fix printing vars
micahcantor d930a08
continue recursive blocks
micahcantor 2f60c4e
promote stdlib changes
micahcantor d61469b
change code printing when pretty
micahcantor d55396c
Revert "change code printing when pretty"
micahcantor e35e594
Revert "promote stdlib changes"
micahcantor d729df0
update comment
micahcantor 2264014
Revert "fix printing vars"
micahcantor 7cb2d72
Revert "sentinal name, start recursive liveness"
micahcantor db8cbbf
sentinal name
micahcantor 5bef65a
promote test changes
micahcantor ca46425
omit sentinal fields in generated code
micahcantor a702c99
default off
micahcantor 3cdfb6f
promote changes from making default off
micahcantor a314456
Merge branch 'master' into new_deadcode
micahcantor f0d9506
change name to global deadcode
micahcantor 013ebcc
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 288b2dd
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor c8c7c53
format
micahcantor 4df5399
Change expr_vars to use Var.Set
micahcantor 075c6f3
fix live_instruction, remove zero cont, contribution case
micahcantor a343dc9
re-organize redundant call
micahcantor 3523cf5
don't generate dead return exprs
micahcantor adacd59
fix type error
micahcantor 6f4ee2d
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 3d656eb
refactor array compact
micahcantor 5864030
move debug info before zeroing
micahcantor 8e9f0c2
more descriptive sentinal name
micahcantor 266221e
add omit return value test
micahcantor 0371c8f
Merge branch 'master' into new_deadcode
micahcantor 9ab2476
refactor driver final deadcode call
micahcantor 69ff976
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor d44390f
rearrange debug output
micahcantor 238b5de
remove clojure parameters from expr_vars
micahcantor bbc3932
fix live_instruction
micahcantor eded8c1
Merge branch 'master' into new_deadcode
micahcantor 09d353e
fix live_instruction
micahcantor 15ee19b
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 658dcb0
Move documentation
micahcantor 164e21f
Merge branch 'master' into new_deadcode
micahcantor 6b22d8b
Merge branch 'master' into new_deadcode
micahcantor 6867324
remove option from deadcode_sentinal
micahcantor 187ea52
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor bd81aee
improve test
hhugo 596dcb5
fix test
hhugo 34edd45
remove deadcode flag from pure_expr
micahcantor cd3eb5a
equal exhaustive case
micahcantor 04a7e87
definitions exhaustive case
micahcantor 646b216
Use Var.Tbl instead of var array
micahcantor fc846de
small fixes
micahcantor 5dfd1ca
make exhaustive
micahcantor dfb0c22
add comment about closure variables
micahcantor be14b11
clarifying comments
micahcantor 0214876
small fixes
micahcantor 0a06586
Merge branch 'master' into new_deadcode
micahcantor 07c37bd
Don't expose add_sentinal
micahcantor 4026c20
typos
micahcantor 18fd434
small cleanup
hhugo 527998c
CR
hhugo a817445
cleanup
micahcantor c7522e8
Merge branch 'new_deadcode' of https://github.com/micahcantor/js_of_o…
micahcantor 48fccd4
remove pure_expr alias
micahcantor 99caa92
Compiler: add purity for jsoo-special primitives
hhugo ddc3957
make globaldeadcode default on
micahcantor 1c492f0
Fix offset_ref liveness
micahcantor 70664e9
promote output changes from default on
micahcantor acd3908
Merge branch 'master' into new_deadcode
micahcantor 8d1841f
tune
hhugo 47a69f9
change log
micahcantor de564a6
Merge branch 'master' into new_deadcode
micahcantor d4c57b9
no global deadcode if no deadcode
hhugo dffa09a
rm trailing space
hhugo 1a135ea
accept
hhugo a18be46
doc
hhugo File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.