Commit History

Автор SHA1 Съобщение Дата
  sergei 5e8f8f4755 * Use GOT-relative constants for i386 PIC jump tables, they don't need runtime relocations. Now almost ABI-compliant on Linux/BSD (Darwin targets unchanged). Also clean up i8086-specific stuff: using tai_const.create_type_sym(aitconst_ptr,...) generates near pointers on i8086, which is the desired goal. преди 11 години
  sergei 31d160aaf5 * x86: clean up and place jump tables into sec_rodata on all targets. Effectively it does not change anything, because sec_rodata with relocations still go into writable data at assembler level. преди 11 години
  florian 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables преди 11 години
  nickysn 8608969eb8 * tx86casenode.genjumptable: explicitly emit near pointers in the case jump table on i8086, regardless of the memory model преди 12 години
  Jonas Maebe 2dd75e707e * renamed thlcgobj.tcgsize2orddef to defutil.cgsize_orddef преди 12 години
  nickysn 1797c8b803 * i8086 fixes for the handling of large sets in tx86innode.pass_generate_code; test/cg/tin.pp works now преди 12 години
  nickysn de345ac191 * added missing setbase fixup in tx86innode.pass_generate_code for the case of LOC_CONSTANT in LOC_REFERENCE for large sets преди 12 години
  nickysn 533bd30094 * some more i8086 bug fixes in tx86innode.pass_generate_code преди 12 години
  nickysn 967e10ea95 * i8086 fixes in tx86innode.pass_generate_code преди 12 години
  nickysn 1f5d384a1e * i8086 fix in tx86casenode.genlinearlist преди 12 години
  nickysn b930c9a0db * all the remaining cases of the 'in' operator fixed (hopefully) for i8086 преди 12 години
  nickysn 8ca0b443b8 * another case of the 'in' operator fixed for i8086 ('x in const', when use_small=false and genjumps=false) преди 12 години
  nickysn d7c9603351 * i8086 fixes for the 'in' operator in the case of 'unsigned,small,non_constant IN smallset' преди 12 години
  florian d6f0a1a0df * do not generate scaled indicies for case table jumps for i8086 преди 12 години
  florian feefcb6d3d * don't generate dec for case nodes of unsigned types because dec does not set the carry flag, resolves #23503 преди 12 години
  florian 0b30b0fd5a * re-enable jump tables for x86-64, they are fixed, see also преди 12 години
  Jonas Maebe edd42aa42a * moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for преди 13 години
  Jonas Maebe aee5380ae0 * merged trunk up to r20882 преди 13 години
  sergei c6d382fe18 * Moved procedure genlinearlist from ti386casenode to tx86casenode. This optimization works well on x86_64, resulting in approximately twice less instructions than when using generic code. преди 14 години
  Jonas Maebe 28740dce2d - removed extra "fordefinition" parameter again from tprocdef.mangledname(), преди 14 години
  Jonas Maebe b023627f6a * converted tcgcasenode.pass_generate_code() to hlcgobj преди 14 години
  Jonas Maebe 0ee702b3a2 * tprocdef.mangledname now gets an extra boolean parameter indicating преди 14 години
  Jonas Maebe 8b0301409a + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and преди 15 години
  Jonas Maebe c6d00a2b1f * correct the register size holding a smallset < 4 bytes when using "bt" преди 15 години
  Jonas Maebe dd55947b4b - disabled jump tables for x86_64, because they cause various kinds of преди 16 години
  Jonas Maebe 7d459cf12a * the compiler now explicitly keeps track of the minimally guaranteed преди 16 години
  Jonas Maebe 0197192441 * disabled jump tables for darwin/x86_64 for now since they don't work преди 17 години
  florian d05d315aa5 * jump table is written to the data segment so create a proper label for it, resolves #11735 преди 17 години
  yury cf7390ea81 * Fixed 'mixed signed/unsigned' and pointer conversion warnings. преди 17 години
  florian a15d8778d6 + create jump tables for case statements on x86-64 преди 17 години