Commit Verlauf

Autor SHA1 Nachricht Datum
  nickysn 7ee0c07b8d + added flags register tracking for many i8086 operations vor 8 Jahren
  nickysn 256dc546ac + implemented the in_neg_assign_x and in_not_assign_x inline nodes, which will vor 8 Jahren
  nickysn 9093047a7a * fixed a bug in the i8086 32-bit rol/ror code generation method rm_fast_386 vor 8 Jahren
  nickysn 1560f20e7f + implemented other 32-bit rol/ror by const methods for i8086 and added a vor 8 Jahren
  nickysn 0fd860d9e7 * refactored the code generation for 32-bit rol/ror by const for i8086, so it vor 8 Jahren
  nickysn d5e33cce7f * generate better i8086 code for ror32 by 1 and 17 vor 8 Jahren
  nickysn 321876252b + enabled the rol/ror intrinsic on i8086 vor 8 Jahren
  nickysn 76cb419241 * use 16-bit 386+ instructions (shld,shrd) for performing fast 32-bit vor 8 Jahren
  nickysn 0ab4f01668 * implemented fast (loopless) 32-bit shift by constant for 8086 as well vor 8 Jahren
  nickysn 0f2ad7b712 * generate faster (i.e. loopless) code for 32-bit shl/shr/sar by const on 186+ vor 8 Jahren
  nickysn f0a63fa895 + added an optimized implementation of a_op64_reg_ref for i8086; this improves vor 8 Jahren
  Jonas Maebe a25ebbba3e + added volatility information to all memory references vor 9 Jahren
  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) vor 9 Jahren
  Jonas Maebe aa1be3276f - removed default value of _typ parameter of TAsmData.(Weak)RefAsmSymbol(): vor 9 Jahren
  nickysn ac5658470e + use the 16-bit movsx and movzx instructions on 386+ in tcg8086.a_load_ref_reg vor 9 Jahren
  nickysn a5f1ae97d4 + make use of the 16-bit movsx and movzx instructions in tcg8086.a_load_reg_reg vor 9 Jahren
  nickysn c78f406d99 + implemented proper stack checking for the i8086 vor 9 Jahren
  pierre 40193ea1db Add pi_has_open_array_parameter to proc_info.flags as this requires special handling for i8086 huge memory model to restore DS register correctly vor 9 Jahren
  Jonas Maebe d440daf47f * fixed compilation with -Oodfa/-O3 vor 10 Jahren
  nickysn 09218c88aa + optimizations in tcg8086.g_flags2reg for the case where the carry flag or the vor 10 Jahren
  nickysn b26e10d53c + generate proper win16 prologue/epilogue for exported routines (we don't yet vor 10 Jahren
  nickysn bdfd23cc2e + new target switch "FarProcsPushOddBP", which causes the i8086 compiler to push vor 10 Jahren
  nickysn a1d29b8251 * always pop DS in huge memory models in asm routines that don't specify vor 10 Jahren
  nickysn 98ec7a2211 * eliminated the dual initialization of DS in interrupt procedures in the huge vor 10 Jahren
  nickysn 0fdc62e0f7 + initialize DS with the current unit's data segment in the function entry code vor 10 Jahren
  Jonas Maebe 67b8aceaee * synchronized with privatetrunk till r30095 vor 10 Jahren
  florian 35a04ad095 * modified patch of Paul W to replace leave by mov/pop, resolves #26455 vor 10 Jahren
  Jonas Maebe b745dcc64c * moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because vor 11 Jahren
  Jonas Maebe a637fbe596 * moved all g_exception_*() methods to hlcgobj and cleaned them up (no more vor 11 Jahren
  nickysn 791cd932fd + support i8086 far data memory models in tcg8086.g_intf_wrapper vor 11 Jahren