Commit History

Author SHA1 Message Date
  nickysn fdd36b4603 * on i8086 with regvars on, do not notify the register allocator of moves to BX. 11 years ago
  nickysn 8bfe2a56dd * optimized SAR by 31 to use only one SAR instruction in tcg8086.a_op_const_reg 11 years ago
  nickysn bfd31e7516 * optimizations in tcg8086.g_copyvaluepara_openarray: 11 years ago
  nickysn ff9ce0d20d * tcg8086.g_copyvaluepara_openarray improvements: 11 years ago
  nickysn ef51c8c5a2 * fixed the interface wrapper code generation for virtual methods on i8086 in 11 years ago
  nickysn 116d3746ca * fixed the stack offset to the self parameter when generating an interface 11 years ago
  nickysn 83aa50de74 * emit a far jmp in the interface wrapper on i8086 in far code memory models 11 years ago
  nickysn 814e1297ed * tcg8086.g_adjust_self_value fixed for far code memory models 11 years ago
  nickysn 0aff18ac61 + implemented tcg64f8086.a_op64_ref_reg 12 years ago
  nickysn 3cdbf9a805 + implemented tcg64f8086.a_op64_const_ref 12 years ago
  nickysn 3bdd3d9a4e + optimization in tcg64f8086.a_op64_const_reg for OP_ADD and OP_SUB when the 12 years ago
  nickysn 88c7ca96c5 + optimization in tcg8086.a_op_const_reg and .a_op_const_ref for 32-bit OP_ADD 12 years ago
  nickysn 8f44e729cc * tcg8086.a_op_const_ref and .a_op_const_reg: when splitting a 32-bit OP_AND, 12 years ago
  nickysn bd0585274e * tsettings.enablecld converted to a targetswitch ts_cld 12 years ago
  nickysn 52fcc0a407 + added a new x86-specific compiler option 'enablecld', which controls whether 12 years ago
  nickysn 1f783f539c * emit a cld instruction before the rep movsXX in tcg8086.g_copyvaluepara_openarray as well 12 years ago
  florian 11ff8a4ec1 + support register parameters with multiple locations 12 years ago
  florian 57d4185d44 * allocate/deallocate cpu registers as late/early as possible, this gives the reg. allocator more flexibility 12 years ago
  sergei a21a20d559 + i8086-specific version of g_stackpointer_alloc. 12 years ago
  nickysn b81f0ab50d + implemented tcg8086.a_call_reg_far; very hacky, but still better than doing a near call, when it should be far 12 years ago
  nickysn 604b7c9deb + added cg.a_call_ref_near and a_call_ref_far 12 years ago
  nickysn af54de6d56 + added tcg8086.a_call_name_far and .a_call_name_static_far; a_call_name and a_call_name_static overriden and call near or far depending on the memory model 12 years ago
  nickysn aa63efc27e * emit a far ret instruction in the exit code of far procedures 12 years ago
  nickysn e2241d97a2 * i8086 optimizations for 32-bit OP_SAR with const >= 16 12 years ago
  nickysn 55a071692e * i8086 optimizations in op_const_reg for 32-bit OP_SHL and OP_SHR with const >= 16 12 years ago
  nickysn ec76b2cf40 * refactored the segment-in-integer-register reference support, so it's handled in make_simple_ref, instead of all over the place in the code generator 12 years ago
  nickysn e243b6b869 * never use the 66h prefix when pushing/popping segment registers on i8086, as the stack is aligned on 2 bytes there 12 years ago
  nickysn c2e3fb5918 + emit proper interrupt procedure entry/exit code on i8086 12 years ago
  nickysn c271594b4f + optimized implementation of 32-bit OP_SHL,OP_SHR and OP_SAR in tcg8086.a_op_const_reg 12 years ago
  nickysn 06838be452 * fixed bug when passing a 'single' floating point type parameter via tcg8086.a_load_ref_cgpara 12 years ago