Historial de Commits

Autor SHA1 Mensaje Fecha
  Yuriy Sydorov 7388735b11 * Strength reduction optimization: - Use a temp for complex loop start values to prevent double evaluation. hace 3 años
  Yuriy Sydorov 6bf4c7a68d * Optimized evaluation of the condition. hace 3 años
  Yuriy Sydorov b2165570de * Fixed missing assignments with the strength reduction optimization. hace 3 años
  Yuriy Sydorov bd4c206472 * Fixed the strength reduction optimization for loops containing 'continue'. hace 3 años
  Yuriy Sydorov abe3002b5b * Fixed lack of the calculation code for the strength reduction optimization. hace 3 años
  yury 64c586b86d * Removed/ifdefed lots of unused variables. hace 4 años
  florian 1ba8255af0 * do not try to unroll a loop if previously an error was thrown, resolves #37475 hace 5 años
  florian aca9727418 + OptimizeForLoop: convert for-loops into zero-based backward for-loops if possible, for most architectures, this results in simpler code hace 5 años
  florian ac974c9ab7 * improve is_loop_invariant for load nodes hace 5 años
  florian 507fc9c1ff + take care of addn and subn in is_loop_invariant hace 5 años
  florian aabd7c7217 * more fixes for loop strength reduction hace 5 años
  florian a9a711763f * some fixes to loop strength reduction hace 5 años
  Jonas Maebe 281b3ad276 * fix case completeness and unreachable code warnings in compiler that would hace 6 años
  florian 21d785e41b * do not unroll loops if the counter variable is accessed outside the current scope hace 7 años
  florian 8f472d5212 * check for more controll flow statements before doing loop unrolling hace 7 años
  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 hace 7 años
  florian c59bd8c29a + calculate loop unrolling using node_count_weighted which takes care of nodes generating no code hace 7 años
  florian 512328deee * include loop unrolling in -O3, as it is done carefully, it is beneficial on average hace 7 años
  florian fff6e0ecdb * unroll more aggressively hace 7 años
  nickysn efc5e339d0 * use an enum instead of integer constants to represent inline numbers hace 8 años
  florian 4731ebeb50 * reset initcode after adding it to the statements list, so further iterations of loop optimization create a new one hace 9 años
  florian b59219b8e0 * when getting rid of a for loop by unrolling, simplify the block afterwards, hace 9 años
  florian f813703cf3 * fixes several issues with loop unrolling hace 10 años
  Jonas Maebe b57c95043f + support overriding tdef/tsym methods with target-specific functionality: hace 11 años
  florian 1366498255 + nf_addr_taken: it marks nodes which address is taken hace 11 años
  florian 30352c7f7b * fix several issues with loop strength reduction to make it working hace 11 años
  florian a0f0d0de40 * make use of the noreturn directive for internalerror hace 11 años
  florian d23a5b7c7d * store break/continue usage in a variable hace 12 años
  florian 912268b1b9 * make loop unrolling dependent on the cpu optimization type instead of the instruction set hace 12 años
  florian b262b4d76b * fix loop unrolling of for in loops hace 12 años