Commit History

Author SHA1 Message Date
  nickysn b3f7bce3a6 * check for CPUX86_HAS_SSE2 instead of CPUX86_HAS_SSEUNIT in Tcgx86.g_concatcopy 7 years ago
  florian dba1761a76 + tcgx86.a_load_reg_ref cuts data if the ref. size is smaller than the reg. size 8 years ago
  nickysn 7b70848d83 + allow the src register size to be different from the op size or the dst 8 years ago
  florian b1dff29cbf * removed unused units 8 years ago
  florian 5c2c5d72a2 * use avx for copying data only on i386 for 8 byte chunks 8 years ago
  nickysn ec11864272 * use a native sized int register for the shift count in in_sar_assign_x_y, 8 years ago
  nickysn 16af6f03fb + support OP_SHR/OP_SHL/OP_SAR/OP_ROL/OP_ROR in tcgx86.a_op_reg_ref 8 years ago
  nickysn 256dc546ac + implemented the in_neg_assign_x and in_not_assign_x inline nodes, which will 8 years ago
  florian 1e374df5b8 * correctly calculate the bit mask in thlcgobj.a_load_regconst_subsetreg_intern, resolves #31042 8 years ago
  Jonas Maebe a25ebbba3e + added volatility information to all memory references 8 years ago
  svenbarth c8202061dc * get rid of addr_load_indirect again by having tcgx86 provide an internal implementation of both make_simple_ref() and a_load_ref_reg() so that make_direct_ref() can call the latter (and the latter the former) without fear of inifinite recursive calls due to the symbol; a_load_ref_reg() is additionally declared as "final" as a_load_ref_reg_internal() needs to be overloaded instead (which is the case for tcg8086) 8 years ago
  svenbarth 89f7da58ea * fix tcgx86.make_direct_ref: we need to use the register in which we loaded the symbol and combine that with the base register (if it is set) without using an ADD 9 years ago
  Jonas Maebe 27bb656cec * replaced "in_make_direct_ref" field with a trefaddr flag 9 years ago
  Jonas Maebe e8c9541c04 * don't use ADD in make_direct_ref(), as the flags may be live 9 years ago
  Jonas Maebe a9073cb50b * don't overwrite the flags in make_simple_ref() if the reference 9 years ago
  Jonas Maebe 0afbe85aab * various memory reference alignment fixes 9 years ago
  Jonas Maebe aa1be3276f - removed default value of _typ parameter of TAsmData.(Weak)RefAsmSymbol(): 9 years ago
  Jonas Maebe 1cb8c0d00c * specify the def of assembler level symbols defined via 9 years ago
  pierre fb50d0860b Use BX register instead of AX to reload DS at proc entry if register convention is used 9 years ago
  nickysn c78f406d99 + implemented proper stack checking for the i8086 9 years ago
  florian d2b74be153 * always use vmov variants of instructions if avx is enabled 9 years ago
  florian a742df9035 * reverse merged r33524 as it is not safe as test results showed 9 years ago
  florian f576b0c01b * make use of xor reg,reg by generating it directly instead of hoping for the peephole 9 years ago
  nickysn c4343c1a2d * don't call make_simple_ref in tcgx86.g_concatcopy on i8086, because that 9 years ago
  yury 3c6d4f1ee2 * Removed unused vars. 9 years ago
  svenbarth f297b00f5b Extend the x86 targets by the ability to handle indirect symbols. 9 years ago
  svenbarth 77ede2ac9f i386/cgcpu.pas, tcg386: 9 years ago
  sergei 1b965e6766 * x86: Don't save/restore integer registers that are volatile per calling convention of current procedure. It implies that nothing will be saved for procedures with OLDFPCCALL, FAR16 and PASCAL and calling conventions. OLDFPCCALL restores behavior that was in effect before r25224. 9 years ago
  nickysn b26e10d53c + generate proper win16 prologue/epilogue for exported routines (we don't yet 10 years ago
  yury e04a3b4ac6 * Removed unused vars for x86 compiler. 10 years ago