Commit History

Author SHA1 Message Date
  nickysn 57777945a8 * fixed bug in thlcgobj.g_array_rtti_helper introduced in the previous commit 12 years ago
  nickysn a5c5b05362 * initial support for system procs that use calling conventions that push left to right on i8086 or i386 12 years ago
  nickysn 5caadbbc40 + added method tabstractprocdef.is_pushleftright that exists on all platforms and returns whether parameters must be loaded left to right 12 years ago
  nickysn 51d61cc593 * define the i8086 default calling convention separately from the other x86 architectures 12 years ago
  nickysn 7e18ac90e5 * the 'len' argument of fpc_shortstr_assign changed to smallint on 16-bit cpus, because getintparaloc allocates 16-bit ints on i8086 12 years ago
  nickysn 5f5402f479 * changed ifdef, so that HandleErrorAddrFrame uses the default calling convention on i8086 (whatever that may be), instead of register 12 years ago
  nickysn 28c05c1ed5 * document the fact that ti8086paramanager.getintparaloc allocates a 16-bit parameter, and not a 32-bit one 12 years ago
  nickysn 1312fd72f2 * tmoddivnode.pass_typecheck: in the case of unsigned div/mod positive_const, check also the upper bound of the const, so it doesn't get truncated 12 years ago
  nickysn fef3732884 * i8086 compilation fixes 12 years ago
  nickysn 3152df6e7f * fixed bugs in tx86inlinenode, introduced in r24237 12 years ago
  nickysn 8ce2f0c56b - rm the i386 specific code from ti8086paramanager.ret_in_param 12 years ago
  nickysn c916105db8 - rm ti8086procinfo.allocate_got_register as it isn't used on the i8086 12 years ago
  nickysn 97ca0fa323 - removed ti8086inlinenode.second_round_real, second_trunc_real and load_fpu_location as they mostly repeat the code in tx86inlinenode.load_fpu_location; tx86inlinenode.load_fpu_location adapted for i8086 instead 12 years ago
  nickysn 3870f76cda * ncgutil: set pushexceptaddr_frametype_cgsize and setjmp_result_cgsize according to cpu16bitaddr, instead of cpu16bitalu 12 years ago
  nickysn 107a6f6552 * i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc 12 years ago
  nickysn 70a0d2989c * fixed tmoddivnode.pass_typecheck on 64-bit CPUs; I was wrong about uint64 div uint64 producing int64 on 64-bit CPUs; this fixes make cycle on e.g. x86_64 12 years ago
  nickysn f84fc17edc + implemented a timeout in the dosbox wrapper, so that we don't wait forever if a test hangs 12 years ago
  nickysn 3c6df5bedc * use is_nativeuint() in ninl.get_str_int_func(), instead of the ifdef sequence 12 years ago
  nickysn 7a15fd0444 * in the case of (uint8 div/mod small_positive_const), convert the const to unsigned, so that we don't do a 16-bit division on 8-bit CPUs 12 years ago
  nickysn 3558766390 * first attempt to simplify tmoddivnode.pass_typecheck handling of all cpu native int sizes 12 years ago
  nickysn 0dcbb4f1cc * refactored tunaryplusnode.pass_typecheck as well 12 years ago
  nickysn a3117beb12 * refactored tunaryminusnode.pass_typecheck to handle all native int sizes generically, without ifdefs 12 years ago
  nickysn 0473cbf70f * refactored the add node type check pass to handle all native integer sizes with the same common code, without ifdefs 12 years ago
  nickysn 2486009d37 + support u64bit as well in defutil.range_to_basetype 12 years ago
  nickysn 59976c3ac8 * use FixNonCommutativeOpcodes in agx86int.pas as well (fixes compilation for i386) 12 years ago
  nickysn d88855566a + added defutil.is_nativesint and is_nativeuint 12 years ago
  nickysn 70d02e6942 + added defutil.is_nativeint and is_nativeord 12 years ago
  nickysn 7bce3c5208 * reverse the order of checks for determining the native int type (e.g. 8086 in large memory model would have 32-bit addresses, but a 16-bit native int) 12 years ago
  nickysn db35b011a3 * modified test cpu16/addint1.pp to not halt on the first error 12 years ago
  nickysn fdc13a77a5 + first test for CPUs with a 16-bit native int added 12 years ago