Commit History

Autor SHA1 Mensaxe Data
  florian 9514bd9162 * refactored psabieh handling, most code is now in psabiehpi %!s(int64=6) %!d(string=hai) anos
  florian 5587c878e6 * small fixes for pseabieh %!s(int64=6) %!d(string=hai) anos
  florian a3594574ca * in case of finally nodes of implicit frames with a third=nil, exit has to load 0 into the exception value, so an explicit exit call is not handled as an exception %!s(int64=6) %!d(string=hai) anos
  florian 6b0c2a45f5 * compilation fixes %!s(int64=6) %!d(string=hai) anos
  florian 65aebd22b0 + initial implementation of dwarf/eh_frame based exception handling for i386-linux, basic stuff works, open todos %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 9f928b2805 * fix exception handling code generator memory leaks %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 11511e13d5 * synchronised with trunk till r40723 %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe dee1056546 * fixed wrong change of jumpalignmax from 10 to 16 in previous commit %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe df0a126064 * abstracted rest of the generic exception handling code through the %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 01ddde2283 * refactored jumping out of exception frames so it can be overridden by descendents %!s(int64=6) %!d(string=hai) anos
  florian cefb38b605 * better alignment of while loop heads %!s(int64=6) %!d(string=hai) anos
  florian a092da723a + new fields for more precise control of alignment %!s(int64=6) %!d(string=hai) anos
  Jonas Maebe 0cd85d73e4 * ttryfinallynode now inherits from tbinarynode instead of tloopnode, as its %!s(int64=6) %!d(string=hai) anos
  florian f08d3fdf8f * moved execution weight calculation into a separate pass, so the info is available already available before the code generation pass if needed %!s(int64=7) %!d(string=hai) anos
  florian b1dff29cbf * removed unused units %!s(int64=8) %!d(string=hai) anos
  yury 5405a4727a * Removed unused vars. %!s(int64=8) %!d(string=hai) anos
  florian 5aa32a1bbe * align more jump targets %!s(int64=8) %!d(string=hai) anos
  florian 2e16628db1 * warning fixed %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe 746de569d5 - removed unused local variable %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe b14c037533 * record in the flowcontrol flags whether we are currently in a block whose %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe 6a1c4f9b75 * replaced cg.a_label/a_jmp_always with hlcg.* calls (only for consistency, %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe 3ae1f6664a * extracted exception state handling helpers into a utility class so %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe c0f4e4db34 * group emitting a label of a try-block and restoring the control flow flags %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe a1c0d1a1ff * moved exception handling helpers from ncgutil to ncgflw as they are only %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe d6ccd54da5 - removed unused doexceptlabel %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe a25ebbba3e + added volatility information to all memory references %!s(int64=8) %!d(string=hai) anos
  Jonas Maebe 48ef33a8b3 * fixed interprocedural gotos for llvm %!s(int64=8) %!d(string=hai) anos
  florian 834d58f54c * better execution weighting for while loops: the condition must be evaluated with an increased execution weight as well %!s(int64=8) %!d(string=hai) anos
  florian 0610187878 + transform for loop into equivalent while loop during pass 1 to simplify code generation %!s(int64=8) %!d(string=hai) anos
  svenbarth 70fbe50bac * reference the extern assembler symbol of the VMT when catching an exception if it's from another unit %!s(int64=9) %!d(string=hai) anos