yury
|
64c586b86d
* Removed/ifdefed lots of unused variables.
|
4 年之前 |
florian
|
1ba8255af0
* do not try to unroll a loop if previously an error was thrown, resolves #37475
|
5 年之前 |
florian
|
aca9727418
+ OptimizeForLoop: convert for-loops into zero-based backward for-loops if possible, for most architectures, this results in simpler code
|
5 年之前 |
florian
|
ac974c9ab7
* improve is_loop_invariant for load nodes
|
5 年之前 |
florian
|
507fc9c1ff
+ take care of addn and subn in is_loop_invariant
|
5 年之前 |
florian
|
aabd7c7217
* more fixes for loop strength reduction
|
5 年之前 |
florian
|
a9a711763f
* some fixes to loop strength reduction
|
5 年之前 |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 年之前 |
florian
|
21d785e41b
* do not unroll loops if the counter variable is accessed outside the current scope
|
7 年之前 |
florian
|
8f472d5212
* check for more controll flow statements before doing loop unrolling
|
7 年之前 |
florian
|
bd27b7635b
* also in case of constref make_not_regable with ra_addr_taken must be called, later on in pass_1 this happens anyways
|
7 年之前 |
florian
|
c59bd8c29a
+ calculate loop unrolling using node_count_weighted which takes care of nodes generating no code
|
7 年之前 |
florian
|
512328deee
* include loop unrolling in -O3, as it is done carefully, it is beneficial on average
|
7 年之前 |
florian
|
fff6e0ecdb
* unroll more aggressively
|
7 年之前 |
nickysn
|
efc5e339d0
* use an enum instead of integer constants to represent inline numbers
|
8 年之前 |
florian
|
4731ebeb50
* reset initcode after adding it to the statements list, so further iterations of loop optimization create a new one
|
9 年之前 |
florian
|
b59219b8e0
* when getting rid of a for loop by unrolling, simplify the block afterwards,
|
9 年之前 |
florian
|
f813703cf3
* fixes several issues with loop unrolling
|
10 年之前 |
Jonas Maebe
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
11 年之前 |
florian
|
1366498255
+ nf_addr_taken: it marks nodes which address is taken
|
11 年之前 |
florian
|
30352c7f7b
* fix several issues with loop strength reduction to make it working
|
11 年之前 |
florian
|
a0f0d0de40
* make use of the noreturn directive for internalerror
|
11 年之前 |
florian
|
d23a5b7c7d
* store break/continue usage in a variable
|
12 年之前 |
florian
|
912268b1b9
* make loop unrolling dependent on the cpu optimization type instead of the instruction set
|
12 年之前 |
florian
|
b262b4d76b
* fix loop unrolling of for in loops
|
12 年之前 |
florian
|
9773b92cbe
* improved for loop unrolling
|
13 年之前 |
florian
|
6c8eed21c4
+ implement auto inlining (-Ooautoinline)
|
13 年之前 |
florian
|
092153e7ad
* handle unrolling of for ... downto ... correctly, resolves #15668
|
15 年之前 |
florian
|
c0d4efed2e
* forbid passing derived classes to call by reference parent classes (for objects, this is still allowed), resolves #13135
|
16 年之前 |
florian
|
5e448b47a5
* compilation fixed
|
16 年之前 |