Commit Verlauf

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