Commit Graph

98 Commits

Author SHA1 Message Date
Jonas Maebe
55988e6f55 * modified copyshortstring so it takes an extra paramter which allows it
to delete the sref itself (so the reg deallocations are put in the
    right place for the optimizer)
2000-04-10 12:23:18 +00:00
pierre
13d1fb7192 Use $GOTO ON 2000-02-29 23:57:36 +00:00
florian
904bfac5b9 * fixed a bug in int64/qword handling was a quite ugly one 2000-02-18 21:25:48 +00:00
florian
190ba4c78c * optimized ansistring compare with ''
* fixed 852
2000-02-18 16:13:28 +00:00
florian
85b946e6d4 * fixed another internalerror 2000-02-14 22:34:28 +00:00
peter
4a4a24b6e8 * log truncated 2000-02-09 13:22:42 +00:00
Jonas Maebe
04d18a2964 * fixed bug introduced by my regalloc fixed :( 2000-01-23 13:57:52 +00:00
michael
587a967353 + Fixes from Jonas. 2000-01-23 11:11:36 +00:00
Jonas Maebe
a961e10de2 * fixed more regalloc bugs (for set adding and unsigned
multiplication)
2000-01-22 16:02:37 +00:00
Jonas Maebe
04a3db19c2 * moved deallocation of registers used in reference that points to string after
copyshortstring (this routine doesn't require extra regs)
2000-01-13 16:52:47 +00:00
florian
da1ea39588 * bug in secondadd(subn) with swaped mmx operands fixed 2000-01-09 19:44:53 +00:00
Jonas Maebe
2ce42d351a + comment about badly placed release_loc calls for a_mul which
causes wrong regdeallocations. Don't know how to fix :(
2000-01-09 16:35:39 +00:00
Jonas Maebe
23d69a5126 * changed edi allocation to use getexplicitregister32/ungetregister
(adapted tgeni386 a bit for this) and enabled it by default
  * fixed very big and stupid bug of mine in cg386mat that broke the
    include() code (and make cycle :( ) if you compiled without
    -dnewoptimizations
2000-01-09 12:34:59 +00:00
Jonas Maebe
86ff0db0b5 + (de)allocation info for EDI to fix reported bug on mailinglist.
Also some (de)allocation info for ESI added. Between -dallocEDI
    because at this time of the night bugs could easily slip in ;)
2000-01-09 01:44:18 +00:00
peter
e525797c51 * updated copyright to 2000 2000-01-07 01:14:18 +00:00
Jonas Maebe
80f18b22ee * fixed type conversions of results of operations with cardinals
(between -dcardinalmulfix)
1999-12-11 18:53:31 +00:00
peter
0887060ff2 * truncated log to 20 revs 1999-11-06 14:34:16 +00:00
florian
9f62eb480b * the maybe_push fix of Pierre wasn't 100%, the tree parameter
must contain a valid location (which is saved if necessary)
1999-09-28 19:43:45 +00:00
florian
d6c22004f4 * exception patch of Romio nevertheless the excpetion handling
needs some corections regarding register saving
  * gettempansistring is again a procedure
1999-09-26 13:26:01 +00:00
florian
00b063c621 * fixed 1/s problem from mailing list 1999-09-21 20:53:21 +00:00
peter
f89f09413b * > < >= <= support for boolean
* boolean constants are now calculated like integer constants
1999-09-07 07:52:19 +00:00
pierre
20d1fb52b6 * problem with maybe_push/restore solved hopefully 1999-08-30 12:00:44 +00:00
pierre
0fb02e9155 * double del_location removed in add_set 1999-08-23 23:31:00 +00:00
Jonas Maebe
1ef759bc9a * fixed <= and >= for sets 1999-08-23 10:35:13 +00:00
pierre
63608b6dbb * emit_??? used 1999-08-19 13:08:43 +00:00
peter
57cf1e75a7 * better fix for muln register allocation 1999-08-07 11:29:26 +00:00
florian
e53aceb9be + floating point register variables !!
* pairegalloc is now generated for register variables
1999-08-04 13:45:17 +00:00
florian
ca53eee67e * renamed i386asm and i386base to cpuasm and cpubase 1999-08-04 00:22:34 +00:00
peter
ed8eb13d59 * moved bitmask constants to sets
* some other type/const renamings
1999-08-03 22:02:29 +00:00
peter
248826aa81 * removed temp defines 1999-07-05 20:13:06 +00:00
Jonas Maebe
9c262d21fc * released setconstnot (changed to {$ifndef nosetconstnot})
* released shlmul (changed to {$ifndef no shlmul})
1999-07-02 12:18:46 +00:00
peter
03e6ec96c5 * merged 1999-06-14 17:47:45 +00:00
peter
34e7bd8b81 + del_location 1999-06-09 23:22:37 +00:00
peter
e1b6682670 * small ansistring fixes
* val_ansistr_sint destsize changed to longint
  * don't write low/hi ascii with -al
1999-06-09 23:00:11 +00:00
florian
2ad3da43e6 * make cycle fixed i.e. compilation with 0.99.10
* some fixes for qword
  * start of register calling conventions
1999-06-02 10:11:39 +00:00
peter
20d56ae2a4 * ansistring fixes, decr_ansistr called after all temp ansi reuses 1999-05-31 20:35:45 +00:00
peter
0b272f13c7 * removed oldasm
* plabel -> pasmlabel
  * -a switches to source writing automaticly
  * assembler readers OOPed
  * asmsymbol automaticly external
  * jumptables and other label fixes for asm readers
1999-05-27 19:43:55 +00:00
florian
8d99f7a098 * some bugs in the qword code generation fixed 1999-05-25 20:36:11 +00:00
florian
59c6d9f289 * qword/int64 multiplication fixed
+ qword/int64 subtraction
1999-05-23 19:55:10 +00:00
florian
ba314dab05 * two bugs reported by Romio (bugs 13) are fixed:
- empty array constructors are now handled correctly (e.g. for sysutils.format)
      - comparsion of ansistrings was sometimes coded wrong
1999-05-19 10:31:53 +00:00
florian
d7b52d0183 * fixed some bugs related to temp. ansistrings and functions results
which return records/objects/arrays which need init/final.
1999-05-18 21:58:22 +00:00
peter
e8bf496ae8 * containsself fixes
* checktypes()
1999-05-18 14:15:18 +00:00
florian
8706cd801f * new temporary ansistring handling 1999-05-17 21:56:57 +00:00
pierre
7b64448f59 problem with EAX being overwritten before used in A_MULL code fixed 1999-05-10 14:37:49 +00:00
Jonas Maebe
312ba676f2 + change "MUL <power of 2>, reg" to SHL (-d ShlMul)
* do the NOT of a constant set when it's substracted internally
    (-dsetconstnot)
1999-05-09 17:58:42 +00:00
peter
611da2d24e * merged nasm compiler
* old asm moved to oldasm/
1999-05-01 13:23:57 +00:00
pierre
b15c479a9e * fixes for tempansi 1999-04-19 09:39:01 +00:00
florian
0596b2b719 * the boolean operators =;<>;xor with LOC_JUMP and LOC_FLAGS
operands fixed, small things for new ansistring management
1999-04-16 20:44:34 +00:00
Jonas Maebe
246a653a5d * more regalloc fixes (still not complete) 1999-04-16 13:42:23 +00:00
peter
2df973753e * better support for flags result 1999-04-16 11:44:24 +00:00