nickysn
|
c306f48c14
+ added rtl helpers for huge pointer comparisons
|
11 years ago |
nickysn
|
d9e94ffab7
+ implemented huge pointer arithmetic
|
11 years ago |
nickysn
|
da77535631
* the handling of pointer arithmetic in pass_1 moved to a new virtual method
|
11 years ago |
svenbarth
|
30be5d8d33
As discussed on core enable the abstract class construction warning by default and also make it controllable with {$warn constructing_abstract ...}.
|
11 years ago |
Jonas Maebe
|
43839d1bda
* update of German error message files by Karl-Michael Schindler
|
11 years ago |
sergei
|
e232dd5066
+ m68k: default implementation of fpc_cpuinit, provides correct masking of floating-point exceptions and fixes test/testv8.pp.
|
11 years ago |
svenbarth
|
a7a9440692
Add a new warning message that is generated if an instance of an abstract class is created. This message is disabled by default, but can be switched on by using {$warn 4122 on} or {$warn 4122 error}.
|
11 years ago |
sergei
|
23a20f0e50
* m68k: fixed setjmp/longjmp:
|
11 years ago |
sergei
|
847adff94d
* Load double-precision locations from integer registers directly into cgpara if sizes match and destination has a single location.
|
11 years ago |
sergei
|
b91d965096
* m68k: initial support for ROL/ROR operations, defining 'cpurox' for CPU target can actually enable them. However it cannot be done outright because these instructions do not exits on Coldfire, and internal processing of RoX,Sar,BsX, etc. can not yet be switched depending on CPU subtype.
|
11 years ago |
sergei
|
15e374f3c6
* m68k: fixed comparison of small sets, it should not modify sides. tw18013 is now correct when compiled with -O2.
|
11 years ago |
nickysn
|
f0346c096f
+ added rtl helpers for huge pointer arithmetic
|
11 years ago |
sergei
|
0262514939
* m68k: Transform 32-bit div/mod nodes into helper calls during pass 1. This is consistent with the way other targets do it, and results in pretty much nicer code.
|
11 years ago |
sergei
|
535218e837
* m68k: fixed OP_NOT/OP_NEG with two registers, it must never modify the source register.
|
11 years ago |
sergei
|
85c0ba96e2
* tm68knotnode brought up to speed:
|
11 years ago |
sergei
|
4df49964ca
* tcg68k.a_op_reg_reg: renamed parameters 'reg1' and 'reg2' to 'src' and 'dst' to make it clear what's what.
|
11 years ago |
nickysn
|
89db1e4118
+ add proper int type conversions for huge pointer arithmetic in pass_typecheck
|
11 years ago |
sergei
|
04eb925776
* tcgtypeconvnode.second_int_to_int: disabled optimization from r25067 for m68k, because reg_cgsize() does not return expected values on that target.
|
11 years ago |
sergei
|
12e0416323
* m68k-linux: now actually fixed syscall failure conditions.
|
11 years ago |
nickysn
|
5093c573dc
+ added huge pointer assignment and far->huge conversion tests
|
11 years ago |
sergei
|
c2ab16c320
- m68k: dropped t68kaddnode.second_cmpboolean, apparently its presence just breaks tbs/tb0246 without any value added.
|
11 years ago |
sergei
|
4b4651d298
* m68k-linux: syscalls are expected to return -1 on failure, not -errno. This fixes some of the tests, webtbs/tw2494 is one of them.
|
11 years ago |
nickysn
|
b3bb9df19f
+ added a $HUGEPOINTERNORMALIZATION switch
|
11 years ago |
sergei
|
193fa2b95e
- m68k: removed some definitely misplaced code, comparison nodes are never handled in second_addfloat.
|
11 years ago |
sergei
|
3851c1f494
- m68k: removed a_loadmm_* methods, no need to override because they produce internal error already in base class.
|
11 years ago |
nickysn
|
bff8dc3fbf
+ added parser support for huge pointer declarations
|
11 years ago |
nickysn
|
8b7863d076
+ added warning in case a far pointer is declared on a platform that does not
|
11 years ago |
sergei
|
acd3ea8750
* m68k: Fixed parameter passing to conform to ABI:
|
11 years ago |
nickysn
|
140ce2a880
+ added the compact and large memory models to the compiler command line option
|
11 years ago |
nickysn
|
ce87e72721
* show an error if the user attempts to create a dos .com file in an i8086
|
11 years ago |