提交历史

作者 SHA1 备注 提交日期
  Yuriy Sydorov 7388735b11 * Strength reduction optimization: - Use a temp for complex loop start values to prevent double evaluation. 3 年之前
  Yuriy Sydorov 6bf4c7a68d * Optimized evaluation of the condition. 3 年之前
  Yuriy Sydorov b2165570de * Fixed missing assignments with the strength reduction optimization. 3 年之前
  Yuriy Sydorov bd4c206472 * Fixed the strength reduction optimization for loops containing 'continue'. 3 年之前
  Yuriy Sydorov abe3002b5b * Fixed lack of the calculation code for the strength reduction optimization. 3 年之前
  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 年之前