index
:
libfirm
am-cmp
amd64-fma
autotransform
better-lcssa
beverify
blocksched
boolopt-improvement
closures
constbits.fix
cpu2017
duffs
exc
exc-kahlert
exceptions
execfreq
execfreq-new
firm2vhdl
gitlab-ci-testing
icore
improve-loop-unrolling
inlining
inlining2
jfirm-compat
keep-alive-blocks
lowfat_sanitizer
lto
master
matze_inlining
multi-file
pagecache
pdeq_new
proc-clone
regalloc-compressed
regalloc-compressed-fixes
regalloc-compressed-static
regalloc-reference
riscv
riscv64
rotate
same_as
scalar-replace-copyb
scratchpad_mem
set_b_value
sgraf/and-broken
sparc-double-registers
sparc-double-registers-rebased
target
temp-copy-lower-in-scalar-replace
test-al-al
tmp-amd64-improvements
vfirm
vhdl-backend
Graph-Based Intermediate Representation
matthias.braun@kit.edu
summary
refs
log
tree
commit
diff
homepage
log msg
author
committer
range
path:
root
/
ir
/
opt
Commit message (
Expand
)
Author
Age
*
Fix loop inversion where the header contains a data flow loop.
Andreas Fried
2020-07-30
*
Extend loop unrolling: can now unroll nested loop
Johannes Bucher
2020-02-07
*
remove debug graph dumps from LCSSA transformation
Johannes Bucher
2020-02-06
*
Extend a + b == a + c → b == c to reference modes
riscv
Sebastian Buchwald
2019-08-09
*
Place fewer Phis when constructing LCSSA form.
better-lcssa
Andreas Fried
2019-06-19
*
Only construct LCSSA Phis if control flow leaves a loop.
Andreas Fried
2019-06-19
*
Add debugging output to LCSSA construction.
Andreas Fried
2019-06-19
*
loop unrolling: fix calculation of #iterations
Johannes Bucher
2019-03-15
*
loop unrolling: fix couning loop analysis and full unrolling
improve-loop-unrolling
Johannes Bucher
2019-02-26
*
loop unrolling: fully unroll loops
Johannes Bucher
2019-02-25
*
only unroll loops if number of loop passes is known at compile time
Johannes Bucher
2019-02-25
*
only optimize confirm nodes in case of no overflow
Elias Aebi
2019-01-31
*
Proof-of-concept local optimization
Sebastian Buchwald
2019-01-31
*
add copyright headers
Elias Aebi
2019-01-24
*
clean up
Elias Aebi
2019-01-24
*
make the factor and the max size configurable
Elias Aebi
2019-01-24
*
test some more aggressive settings
Elias Aebi
2019-01-24
*
debug print the number of loops unrolled
Elias Aebi
2019-01-24
*
implement a simple heuristic to determine the unroll factor
Elias Aebi
2019-01-24
*
use unsigned integers for the unroll factor
Elias Aebi
2019-01-24
*
fix a typo
Elias Aebi
2019-01-24
*
let the unroll factor be determined by a function
Elias Aebi
2019-01-24
*
clean up
Elias Aebi
2019-01-24
*
unroll by a given factor
Elias Aebi
2019-01-24
*
simplify
Elias Aebi
2019-01-24
*
LCSSA: insert phis in every block
Elias Aebi
2019-01-24
*
clean up
Elias Aebi
2019-01-24
*
rewire keepalives
Elias Aebi
2019-01-24
*
duplicate all innermost loops
Elias Aebi
2019-01-24
*
use the link to detect backedges
Elias Aebi
2019-01-24
*
correctly rewire phis inside successor blocks
Elias Aebi
2019-01-24
*
only visit each successor once
Elias Aebi
2019-01-24
*
fix the rewire logic
Elias Aebi
2019-01-24
*
use the debug macro
Elias Aebi
2019-01-24
*
ignore outermost loops
Elias Aebi
2019-01-24
*
LCSSA: add phi nodes for mode_M predecessors
Elias Aebi
2019-01-24
*
LCSSA: ignore keep-alive edges
Elias Aebi
2019-01-24
*
improve the rewire logic
Elias Aebi
2019-01-24
*
pass the loop header to the rewire functions
Elias Aebi
2019-01-24
*
implement get_loop_header
Elias Aebi
2019-01-24
*
link the new block to the original block
Elias Aebi
2019-01-24
*
correctly rewire phi nodes inside the loop header
Elias Aebi
2019-01-24
*
clean up
Elias Aebi
2019-01-24
*
rewire the successors outside the loop
Elias Aebi
2019-01-24
*
WIP
Elias Aebi
2019-01-24
*
fix a segfault
Elias Aebi
2019-01-24
*
WIP loop unrolling
Elias Aebi
2019-01-24
*
coding style
Elias Aebi
2019-01-24
*
separate the LCSSA functions into their own file
Elias Aebi
2019-01-24
*
implement assure_loop_lcssa
Elias Aebi
2019-01-24
[next]