Commit History

Author SHA1 Message Date
  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 9 years ago
  Jonas Maebe d440daf47f * fixed compilation with -Oodfa/-O3 9 years ago
  nickysn 09218c88aa + optimizations in tcg8086.g_flags2reg for the case where the carry flag or the 9 years ago
  nickysn b26e10d53c + generate proper win16 prologue/epilogue for exported routines (we don't yet 10 years ago
  nickysn bdfd23cc2e + new target switch "FarProcsPushOddBP", which causes the i8086 compiler to push 10 years ago
  nickysn a1d29b8251 * always pop DS in huge memory models in asm routines that don't specify 10 years ago
  nickysn 98ec7a2211 * eliminated the dual initialization of DS in interrupt procedures in the huge 10 years ago
  nickysn 0fdc62e0f7 + initialize DS with the current unit's data segment in the function entry code 10 years ago
  Jonas Maebe 67b8aceaee * synchronized with privatetrunk till r30095 10 years ago
  florian 35a04ad095 * modified patch of Paul W to replace leave by mov/pop, resolves #26455 10 years ago
  Jonas Maebe b745dcc64c * moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because 11 years ago
  Jonas Maebe a637fbe596 * moved all g_exception_*() methods to hlcgobj and cleaned them up (no more 11 years ago
  nickysn 791cd932fd + support i8086 far data memory models in tcg8086.g_intf_wrapper 11 years ago
  nickysn 906d828ee0 * tcg8086.g_copyvaluepara_openarray: fix for the case where ref.segment is 11 years ago
  nickysn c9c29a3cd4 + ignore the source segment, when the destination cgpara is a near pointer in 11 years ago
  nickysn c9f8703679 + set ref.segment to NR_SS for all temps/localvars on i8086. This allows the 11 years ago
  nickysn bf6ad0ff78 * fixed tcg8086.g_flags2reg, so it behaves the same way as tcgx86.g_flags2reg 11 years ago
  sergei 98de3c4e40 * tcg8086.g_flags2reg: call virtual method a_jmp_flags instead of duplicating its functionality, it prevents further changes to this method when adding support for unordered comparison results. 11 years ago
  nickysn 6fe362a1b0 + added method is_far to i8086's tcpuprocdef and tcpuprocvardef 11 years ago
  nickysn 9da1ee0138 * i8086 far data model fixes in the copying of openarray value params 11 years ago
  nickysn 0a9f738167 + tcg8086.g_copyvaluepara_openarray: support source to be in a different segment 11 years ago
  nickysn 1f8280e8f1 * load the destination segment in tcg8086.g_copyvaluepara_openarray from SS 11 years ago
  nickysn 122f66b11a + support passing far addresses in tcg8086.a_loadaddr_ref_cgpara 11 years ago
  sergei 9c54cdc85d * x86: Cleaned out addr_far,addr_far_ref used to encode far calls/jumps. NASM (and FPC x86 assembler based on it) already have opsize=S_FAR for this purpose. 11 years ago
  nickysn b672bc754a - rm references to system_i386_darwin and system_i386_iphonesim from 11 years ago
  nickysn a31b7d485f * tcg8086.init_register_allocator: instantiate trgintcpu instead of trgcpu for 11 years ago
  nickysn fc29e10349 * allow the use of inc/dec when adding/subtracting 32 or 64-bit constants with 11 years ago
  sergei 9c1f917e3a * a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around. 11 years ago
  nickysn 85dd9e5789 + added a size parameter to optimize_op_const and do a sign extension of the 'a' parameter up from the specified size, so that things like (i and $ffffffff) get optimized away the same way as (i and -1) 11 years ago
  nickysn 529008e031 * emit MUL (when overflow checking is off), instead of IMUL for OP_IMUL in 11 years ago