Commit History

Author SHA1 Message Date
  J. Gareth "Curious Kit" Moreton 1b8fc23dfd * x86: Code generation fixes where FLAGS 3 years ago
  Jonas Maebe 197f5cbec5 * let all the case code generation work with tconstexprint instead of aint, 6 years ago
  florian 50dba9ad66 * if both labels of a case label are equal, we still cannot skip the comparison in a jump tree, resolves #31589 8 years ago
  florian d5754cf47c * create jmp trees for really big case statements 8 years ago
  Jonas Maebe a25ebbba3e + added volatility information to all memory references 8 years ago
  florian 57f93ed40d * correctly generate accesses to jump tables if it contains negative entries, resolves issue #30119 9 years ago
  Jonas Maebe da696057ab * converted register_maybe_adjust_setbase() to the high level code generator 9 years ago
  Jonas Maebe ab22aaa2b7 * adjust the set base for i8086 before loading it into cx as a shift count 9 years ago
  Jonas Maebe 687bb15299 * renamed getdatalabel() to getglobaldatalabel 10 years ago
  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 years ago
  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 years ago
  florian 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 11 years ago
  nickysn 8608969eb8 * tx86casenode.genjumptable: explicitly emit near pointers in the case jump table on i8086, regardless of the memory model 12 years ago
  Jonas Maebe 2dd75e707e * renamed thlcgobj.tcgsize2orddef to defutil.cgsize_orddef 12 years ago
  nickysn 1797c8b803 * i8086 fixes for the handling of large sets in tx86innode.pass_generate_code; test/cg/tin.pp works now 12 years ago
  nickysn de345ac191 * added missing setbase fixup in tx86innode.pass_generate_code for the case of LOC_CONSTANT in LOC_REFERENCE for large sets 12 years ago
  nickysn 533bd30094 * some more i8086 bug fixes in tx86innode.pass_generate_code 12 years ago
  nickysn 967e10ea95 * i8086 fixes in tx86innode.pass_generate_code 12 years ago
  nickysn 1f5d384a1e * i8086 fix in tx86casenode.genlinearlist 12 years ago
  nickysn b930c9a0db * all the remaining cases of the 'in' operator fixed (hopefully) for i8086 12 years ago
  nickysn 8ca0b443b8 * another case of the 'in' operator fixed for i8086 ('x in const', when use_small=false and genjumps=false) 12 years ago
  nickysn d7c9603351 * i8086 fixes for the 'in' operator in the case of 'unsigned,small,non_constant IN smallset' 12 years ago
  florian d6f0a1a0df * do not generate scaled indicies for case table jumps for i8086 12 years ago
  florian feefcb6d3d * don't generate dec for case nodes of unsigned types because dec does not set the carry flag, resolves #23503 12 years ago
  florian 0b30b0fd5a * re-enable jump tables for x86-64, they are fixed, see also 12 years ago
  Jonas Maebe edd42aa42a * moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for 13 years ago
  Jonas Maebe aee5380ae0 * merged trunk up to r20882 13 years ago
  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 years ago
  Jonas Maebe 28740dce2d - removed extra "fordefinition" parameter again from tprocdef.mangledname(), 14 years ago
  Jonas Maebe b023627f6a * converted tcgcasenode.pass_generate_code() to hlcgobj 14 years ago