Commit Graph

3133 Commits

Author SHA1 Message Date
Jonas Maebe
999162e78d * fixed inserting of allocated register for regvars (only those for
parameters were done, and sometimes even the wrong ones)
2000-08-03 14:36:47 +00:00
Jonas Maebe
41f84e639c * save/reset/restore regvar info around inlined code 2000-08-03 14:27:04 +00:00
Jonas Maebe
c999d3b17d + allow regvars to be used inside inlined procs, which required the
following changes:
      + load regvars in genentrycode/free them in genexitcode (cgai386)
      * moved all regvar related code to new regvars unit
      + added pregvarinfo type to hcodegen
      + added regvarinfo field to tprocinfo (symdef/symdefh)
      * deallocate the regvars of the caller in secondprocinline before
        inlining the called procedure and reallocate them afterwards
2000-08-03 13:17:25 +00:00
Jonas Maebe
ac16977232 - disable regvars for inlined procedures (merged from fixes branch) 2000-08-03 11:15:42 +00:00
peter
227e983397 * first things for default parameters 2000-08-02 19:49:58 +00:00
Jonas Maebe
7ef99ada12 * fixed web bug1087
* allocate R_ECX explicitely if it's used
  (merged from fixes branch)
2000-08-02 08:05:04 +00:00
Jonas Maebe
8e76008e98 - undid my changes from the previous two commits because it was a bug
in cg386cnv which I've now fixed (previous changes only masked it in
      some cases) (merged from fixes branch)
2000-08-02 07:20:32 +00:00
Jonas Maebe
89f0a308a2 * fixed ie(10) when using -Or and shortstring -> ansistring conversions
(or when using a lot of ss -> as conversions in one statement, the
    source was freed only *after* pushusedregisters($ff), which means its
    registers were reallocated when popusedregisters was called) (merged
    from fixes branch)
2000-08-02 07:05:32 +00:00
Jonas Maebe
a0d91b1b85 * fixed crash when an undeclared identifier is used in a raise statement
(merged from fixes branch)
2000-08-02 07:04:56 +00:00
Jonas Maebe
fcaa820523 * fixed crash when passing undeclared identifiers to str() (merged from
fixes branch)
2000-08-01 14:07:49 +00:00
Jonas Maebe
d88607d154 * refined my previous IE(10) fix (in some cases, too many registers could
be reserved) (merged from fixes branch)
2000-08-01 10:41:35 +00:00
Jonas Maebe
d446128ceb - removed imul support from -dfoldarithops since "imull [reg32],[mem32]"
doesn't exist (merged from fixes branch)
2000-07-31 08:44:05 +00:00
peter
c5da6c53fd * merged fixes 2000-07-30 17:04:43 +00:00
sg
cca5f1fadc * Fixed translation for sym_w_function_result_not_set 2000-07-29 22:19:53 +00:00
sg
c09b31bef5 * Applied patch by Markus Kaemmerer which removes a tiny memory leak
for the generation of code for in_[sin|cos]_extended code
  (a label has been created but never used afterwards)
2000-07-29 18:27:53 +00:00
Jonas Maebe
df9e505622 * fixed bug in shr/shl optimization when -Og is used (merged from fixes
branch)
2000-07-28 13:56:23 +00:00
Jonas Maebe
e1226b074f * fixed bug in secondshlshr where ecx was released too soon in some
cases causing a combination of -Or and -dnewoptimizations to generate
    wrong code
    (merged from fixes branch and since in 1.1 -dnewoptimizations has
    been released, it always generated wrong code here when using -O2 or
    higher)
2000-07-28 13:28:25 +00:00
Jonas Maebe
48404492e3 * fixed web bug1073 (merged from fixes branch) 2000-07-28 09:09:10 +00:00
Jonas Maebe
ba86afd3b0 * refined previous fix (sometimes the number of necessary registers was
overestimated) (merged from fixes branch)
2000-07-28 07:38:13 +00:00
Jonas Maebe
f2123cbcc1 * release alignopts 2000-07-27 13:03:35 +00:00
Jonas Maebe
2183d3142f * fixed internalerror(10) when using -Or and complex arrays (merged
from fixes branch)
2000-07-27 12:41:54 +00:00
Jonas Maebe
0f7ae1718e * moved locflags2reg() procedure from cg386add to cgai386
+ added locjump2reg() procedure to cgai386
  * fixed internalerror(2002) when the result of a case expression has
    LOC_JUMP
  (all merged from fixes branch)
2000-07-27 09:25:05 +00:00
Jonas Maebe
2fc7533375 * removed obsolete typeconversion (it got removed by the compiler in
firsttypeconv anyway) (merged from fixes branch)
2000-07-27 09:19:37 +00:00
Jonas Maebe
cb8d634547 * merged from fixes branch (v_hint to v_tried changed when attempting
to smart/static/shared link)
2000-07-26 13:08:19 +00:00
Jonas Maebe
3b4a3a2cee * several FPU instructions weren't marked as reading operand one (like
FADD and FSUB)
2000-07-26 12:25:33 +00:00
sg
069a3ae31d * Added WideChar support to inlined 'ord' function 2000-07-22 11:53:26 +00:00
Jonas Maebe
ce46621762 * daopt386: changes to getnextinstruction/getlastinstruction so they
ignore labels who have is_addr set
  + daopt386/csopt386: remove loads of registers which are overwritten
     before their contents are used (especially usefull for removing superfluous
    maybe_loadesi outputs and push/pops transformed by below optimization
  + popt386: transform pop/pop/pop/.../push/push/push to sequences of
    'movl x(%esp),%reg' (only active when compiling a go32v2 compiler
    currently because I don't know whether it's safe to do this under Win32/
    Linux (because of problems we had when using esp as frame pointer on
    those os'es)
2000-07-21 15:19:54 +00:00
Jonas Maebe
67ac676004 + added is_addr field for labels, if they are only used for getting the address
(e.g. for io checks) and corresponding getaddrlabel() procedure
2000-07-21 15:14:01 +00:00
Jonas Maebe
3da775621a * merged from fixes branch 2000-07-21 09:29:43 +00:00
Jonas Maebe
3919baefe8 * merged from fixes branch 2000-07-21 09:23:47 +00:00
michael
d63d102d25 * Back to external assembler till peter fixes gdb 2000-07-14 21:29:38 +00:00
michael
1d541f4095 + Adapted wordversion 2000-07-14 05:14:10 +00:00
michael
2949824a69 + Patch to 1.1 2000-07-14 05:11:48 +00:00
michael
665c1f6410 + patched to 1.1.0 with former 1.09patch from peter 2000-07-13 12:08:24 +00:00
michael
650fbb86aa + removed logs 2000-07-13 11:32:24 +00:00
michael
e7aca136a1 + Initial import 2000-07-13 06:29:38 +00:00
pierre
b6bc1d480f * fix wordversion 2000-07-10 09:17:27 +00:00
Jonas Maebe
79e58b655c * real fix for web bug #1032 (removed previous coment since it was false) 2000-07-10 08:00:22 +00:00
Jonas Maebe
f42e4f21b4 * fixed web bug #1032 2000-07-10 07:14:41 +00:00
peter
eea4c2eab3 * fixed some more texts 2000-07-09 17:40:41 +00:00
peter
5957cff999 * escape $ with \$ 2000-07-09 17:39:05 +00:00
peter
bc377c69ce * fixed some tex texts 2000-07-09 17:02:29 +00:00
peter
915b7c4373 * replace only $ with arg if next char is a number 2000-07-09 17:01:26 +00:00
peter
a1b92237f5 * fixed tex writign 2000-07-09 16:30:59 +00:00
peter
c88f79c92c * renamed to lowercase 2000-07-09 10:40:12 +00:00
peter
1d06b07e42 * version_string is now a function so it returns 1.00 instead of 1.00.0 2000-07-09 09:34:50 +00:00
peter
b9e5501ba7 * findobjectfile gets extra arg with directory where the unit is found
and the .o should be looked first
2000-07-08 20:43:37 +00:00
peter
289e5d6567 * undid my previous commit, because it breaks some code 2000-07-08 18:03:11 +00:00
peter
e2c8882843 * also support string parsing in skipuntildirective for fpc modes 2000-07-08 16:22:30 +00:00
pierre
ab6fd6b3b8 * get a failure on webtbf/tbug890 2000-07-07 20:42:55 +00:00
florian
1104d83363 + initial revision 2000-07-07 17:07:20 +00:00
florian
e2eba0de14 * the on statement has to clear the temp. gen before calling secondpass for
the next on statement
2000-07-06 20:43:44 +00:00
peter
12dc32b781 * version 1.00.0 so the snapshots can test with this version number
for a few days
2000-07-06 20:08:46 +00:00
peter
8df37e4a85 * fixed crash with objects unit and -Sd mode 2000-07-06 19:06:30 +00:00
peter
b91050ccb7 * allow in delphi mode directives without semicolons between 2000-07-06 19:04:59 +00:00
peter
f449b4beaa * fixed function returning record type and assigning to the result 2000-07-06 18:56:58 +00:00
Jonas Maebe
eed3807af0 * moved "<flag setting operation>; test/or reg,reg" to "<flag setting
operation>" optimization to pass 2 because it caused problems
    with -dnewoptimizations
2000-07-06 12:30:31 +00:00
michael
89c01a785a + Initial implementation by Michail Baikov 2000-07-06 06:09:10 +00:00
pierre
8455b67858 + Register TModuleSymbol 2000-07-05 21:20:48 +00:00
florian
3d7d2eb25d * virtual contructors weren't handled properly if they were called via a class
variable
2000-07-05 20:39:55 +00:00
florian
26643d4e16 * fixed my previous commit :/ 2000-07-05 20:29:16 +00:00
florian
a989d18fc2 * fixed fpuvaroffset calculation in read statements 2000-07-05 20:19:47 +00:00
pierre
ebc536ef52 * avoid internalerror on open arrays 2000-07-05 10:17:38 +00:00
peter
cf026bfb89 * fixed missing option_help_pages 2000-07-04 19:12:49 +00:00
peter
b13955d6d8 * be optimistic: version 1.00 for some utils 2000-07-04 19:05:53 +00:00
pierre
9290e7b641 * fix for bug #1025 2000-07-03 21:08:54 +00:00
pierre
74f131b173 * fix for bug #1023 2000-07-03 13:26:48 +00:00
pierre
d86f8c5ec8 * fix for bug #1019 2000-07-03 09:48:23 +00:00
peter
8b38902424 * exampleinstall target added 2000-07-01 23:03:18 +00:00
peter
f806e08f22 * tool to add numbering to the old error?.msg files 2000-07-01 09:52:56 +00:00
peter
757f68ec58 * fixed internalerror 2002 when case expr is not correct, by creating
a temp correct case expression
2000-06-30 22:15:39 +00:00
peter
5db0ddd7e9 * fix for bug #988 2000-06-30 22:12:26 +00:00
peter
40e02c89da * fixed some getlabel to getdatalabel 2000-06-30 22:11:28 +00:00
peter
957d4cdc89 * new message files layout with msg numbers (but still no code to
show the number on the screen)
2000-06-30 20:23:33 +00:00
Jonas Maebe
3d3d5c512a * fixed inline bugs (calling an inlined procedure more than once didn't
work)
2000-06-29 13:50:30 +00:00
Jonas Maebe
aa42c1480c * fixed copy/paste bugs in getcopy 2000-06-29 13:49:39 +00:00
michael
e55a9d2da1 + Up to date version from Michail Baikov 2000-06-29 11:24:00 +00:00
sg
a4096f2886 * Fix for class field table writing 2000-06-29 08:42:47 +00:00
Tomas Hajny
c0a5cca16b * little corrections for EMX resources 2000-06-28 03:34:06 +00:00
Jonas Maebe
1b29bfff5b * fix for web bug #1011: no exception stack stuff is generated for
inlined procedures, the entry/exitcode of the parent will do that
2000-06-27 12:17:29 +00:00
florian
73269986f3 * fixed a problem with forward declarations in TP mode, probably introduced by
Pierre's last changes
2000-06-25 20:13:51 +00:00
Tomas Hajny
44307fe5ba + $R support for OS/2 (EMX) added, little correction (marco to macro) 2000-06-25 19:28:53 +00:00
Tomas Hajny
c790e4afbe + $R support for OS/2 (EMX) added 2000-06-25 19:08:27 +00:00
peter
e2e7120ef7 * setdef.typename, show Empty Set if elementtype is not set 2000-06-25 09:25:29 +00:00
sg
7d33870ef8 * Updated to latest changes in errore.msg 2000-06-24 19:21:23 +00:00
pierre
36f461db33 * align all variants to same start address 2000-06-23 21:34:09 +00:00
pierre
a64310a252 + new warning for C packed records 2000-06-23 21:33:25 +00:00
pierre
9681a28891 * alignment for record changed for C packing mostly 2000-06-23 21:32:45 +00:00
pierre
6e78b071f7 + new target_os field: maxCstructalignment 2000-06-23 21:31:18 +00:00
peter
de1083a9ed * reset current_object_option when reading other symtables than
object declarations
2000-06-23 20:14:39 +00:00
peter
507e9ed065 * made resourcecompiling object so it can be inherited and replaced
for other targets if needed
2000-06-23 20:11:05 +00:00
peter
8c25925349 * int64,qword rtti support 2000-06-22 20:01:57 +00:00
pierre
945ae36b63 * fix the problem of long mangledname in internal writer 2000-06-21 20:56:37 +00:00
sg
6187dc80b5 * Updated 2000-06-21 08:10:08 +00:00
pierre
38f27344f4 * equal_paras and convertable_paras changed by transforming third parameter
into an enum with three possible values:
    cp_none, cp_value_equal_const and cp_all.
2000-06-20 12:47:52 +00:00
pierre
3822fe1501 * do not create an empty export section 2000-06-20 12:44:30 +00:00
pierre
ee9d8f5248 * smart link is default on win32 2000-06-19 19:57:19 +00:00
pierre
dc05338a37 * small error fix 2000-06-19 19:56:43 +00:00
peter
724ce958af * fixed pchar<->[string,chararray] operations 2000-06-18 19:41:19 +00:00
peter
fdb8555bdb * fixed + record.field expressions 2000-06-18 19:09:30 +00:00
peter
a2aca573f4 * don't allow enum assignments in tp/delphi mode 2000-06-18 18:16:38 +00:00
peter
6530ab39a8 * only replace the $1,$2,$3 once, so it doesn't loop when the
value to replace with contains $1,$2 or $3
2000-06-18 18:14:21 +00:00
peter
1b53fa6f8a * removed unused var 2000-06-18 18:13:12 +00:00
peter
b71b416cd1 * support overload keyword 2000-06-18 18:12:40 +00:00
peter
d55672bd95 * C record packing fixed to also check first entry of the record
if bigger than the recordalignment itself
  * variant record alignment uses alignment per variant and saves the
    highest alignment value
2000-06-18 18:11:32 +00:00
peter
9fc6896bf9 * empty ansistring now use constant value of 0 2000-06-18 18:09:31 +00:00
peter
6fa1a1bae0 * use new illegal_char method 2000-06-18 18:07:06 +00:00
peter
2b1d92cb5c * no binary value reading with % if not fpc mode
* extended illegal char message with the char itself (Delphi like)
2000-06-18 18:05:54 +00:00
sg
a68332baec * Updated 2000-06-17 17:15:57 +00:00
pierre
fc2326a5dc *Gabor's changes 2000-06-16 06:08:44 +00:00
pierre
c02fc1e683 * wrong fpcmake.ini corrected 2000-06-15 20:46:02 +00:00
pierre
b5ac159ce9 * fix the windows unit import problem by forcing smart linking for win32 2000-06-15 20:26:51 +00:00
peter
0d58e53bfc * first look for ppu in cwd and outputpath and after that for source
in cwd
  * fixpath() for not linux makes path now lowercase so comparing paths
    with different cases (sometimes a drive letter could be
    uppercased) gives the expected results
  * sources_checked flag if there was already a full search for sources
    which aren't found, so another scan isn't done when checking for the
    sources only when recompile is needed
2000-06-15 18:10:11 +00:00
peter
8b92303745 * fix constant parsing which gave an error when constants were used 2000-06-15 18:07:07 +00:00
michael
dd9ff4e6ea + All messages translated again 2000-06-15 17:54:46 +00:00
peter
11e4a9a22d * added need_dollar msg 2000-06-14 19:04:09 +00:00
peter
6eb5381eb4 * fixed TYPE with records and fields
* added TYPE support for ATT reader else it wouldn't be possible to
    get the size of a type/variable
2000-06-14 19:02:41 +00:00
peter
43b224b136 * rename the result of a function to hide it instead of using setname 2000-06-14 19:00:58 +00:00
peter
2ce33303a3 * support for inherited; only 2000-06-14 16:52:42 +00:00
peter
ab8dd7a27b * fixed reference parsing 2000-06-14 16:52:09 +00:00
peter
9527b53b60 * removed unused label i left in when testing 2000-06-14 16:51:18 +00:00
Jonas Maebe
18dd1f715b + support for inc/dec/imul in foldarithops 2000-06-14 06:05:06 +00:00
kaz
8742406bdd * array type property can have default value, fixed. 2000-06-13 17:09:56 +00:00
peter
42bdcb649b * fixed pchar->string conversion for delphi mode 2000-06-11 07:00:21 +00:00
peter
69109b8234 * support procvar directive without ; before the directives 2000-06-11 06:59:36 +00:00
Jonas Maebe
cd3a96d742 * fixed bug in shlmul code 2000-06-10 17:32:44 +00:00
Jonas Maebe
ac7de270ca * loadord2reg doesn't generate any "movl %reg1,%reg1" anymore 2000-06-10 17:31:42 +00:00
peter
b427a13613 * fixed parsing of $if preproc function 2000-06-09 21:35:37 +00:00
peter
14d248a322 * checking for dup id with para of methods fixed for delphi mode 2000-06-09 21:34:40 +00:00
pierre
679c988bc3 * unary minus operator overloading was broken
+ accept pointer args in binary operator
2000-06-06 20:25:43 +00:00
pierre
1d6b7e9050 Generate a warning if function result is a pointer and result^:=x; is used 2000-06-06 20:24:07 +00:00
Jonas Maebe
3ca96dd897 * ansistring constants now also get a trailing #0 (bug reported by
Thomas Schatzl)
2000-06-06 13:06:17 +00:00
pierre
7b1219536c + support for NOT overloading
+ unsupported overloaded operators generate errors
2000-06-05 20:41:17 +00:00
pierre
d0399b4e55 * fix for inline bug 2000-06-05 20:39:05 +00:00
peter
23cbb5b9c8 * fix addrn with procvar, also detected by testpva2 ! 2000-06-04 09:05:05 +00:00
peter
8ab40df69d * check for procvar in valid_for_formal 2000-06-04 09:04:30 +00:00
Jonas Maebe
957bd0bfd5 * resource string numbering 2000-06-04 08:48:54 +00:00
Jonas Maebe
e360abb77b * fixed web bug #972, test for the bug in tests/testopt/testcse3.pp 2000-06-03 09:41:37 +00:00
sg
f2700cd86a * Adapted to recent changes in errore.msg 2000-06-03 08:57:09 +00:00
pierre
ef8abc1dd7 * operator overloading now uses isbinaryoperatoracceptable
and is unaryoperatoracceptable
2000-06-02 21:24:46 +00:00
pierre
6433e1d8c2 tok2node moved to htypechk unit 2000-06-02 21:22:56 +00:00
pierre
88e8f0836f + isbinaryoperatoracceptable and isunaryoperatoracceptable
for a more coherent operator overloading implementation
    tok2node moved from pexpr unit to htypechk
2000-06-02 21:22:04 +00:00
pierre
28ce798307 + set vo_is_exported for vars 2000-06-02 21:18:13 +00:00
pierre
b8020e724b fix bug in tbs/tbs0317 2000-06-02 21:17:26 +00:00
pierre
cc246ae673 * vo_is_exported needs init_global also 2000-06-02 21:16:42 +00:00
pierre
88f77c3dbc + vo_is_exported for bug0317 fix 2000-06-02 21:15:49 +00:00
pierre
e44f9fd425 * fix for tbs/tbs0318.pp bug 2000-06-02 21:14:34 +00:00
pierre
71219c091e * use is_equal instead of direct def equality in unary minus overload 2000-06-02 21:13:56 +00:00
florian
2658c0aeda + fieldtable support for classes 2000-06-02 18:48:47 +00:00
peter
8b260f5793 * symtable.insert changed to procedure 2000-06-01 19:14:09 +00:00
peter
40de0309f6 * fixed long line for tp7 2000-06-01 19:13:02 +00:00
peter
120d2f0130 * added ifdef fpc around findclose 2000-06-01 19:11:19 +00:00
peter
e882145e88 * made resourcestrings OOP so it's easier to handle it per module 2000-06-01 19:09:56 +00:00
peter
aa7cb6bde2 * delphi/tp mode fixes for dup id checking (tbs319,tbf320) 2000-06-01 19:07:52 +00:00
peter
65d78b71d2 * clean .o and .s from smartlinkpath when starting the writer 2000-06-01 13:02:45 +00:00
peter
e60344ccf7 * removed notes 2000-06-01 11:01:20 +00:00
peter
276a486a28 * fixed string->pchar conversion for array constructors 2000-06-01 11:00:52 +00:00
peter
30b8959557 * moved to utils 2000-06-01 10:58:47 +00:00
florian
a4bdf283e7 * stack alignment to 8 byte boundaries with -Oa switch 2000-05-31 09:29:15 +00:00
florian
c33697ecd4 * forgot to commit a fix for the enumeration subrange problem, yesterday 2000-05-31 06:58:41 +00:00
florian
9ef9f62da1 * first implementation of -Oa switch 2000-05-31 06:57:11 +00:00
florian
d7db923d35 * fixed assignments of subrange enumeration types 2000-05-30 18:38:45 +00:00
pierre
6b012c36f4 * New bunch of Gabor changes 2000-05-29 10:04:40 +00:00
florian
1dac75340e * fixed a problem with subrange enumerations in case statements 2000-05-28 15:22:54 +00:00
peter
8e4522215a * smart,shared lib including for rpm/deb 2000-05-26 20:50:09 +00:00
Jonas Maebe
c1df09f993 * fixed wrong register deallocations in several ansistring related
procedures. The IDE's now function fine when compiled with -OG3p3r
2000-05-26 20:16:00 +00:00
peter
535f63923c * fixed % parsing and added modulo support
* changed some evaulator errors to more generic illegal expresion
2000-05-26 18:23:09 +00:00
peter
27c258c7ca * give error for @ with formal const,var parameter. Because @ generates
a constant value and not a reference
2000-05-26 18:21:41 +00:00
peter
8822c0dc43 * fixed wrong var parameter with @ 2000-05-26 18:20:38 +00:00
Jonas Maebe
79b0cbff40 * fixed unreachable code detection 2000-05-25 12:00:14 +00:00
sg
cd180c17d5 * Updated 2000-05-25 11:43:15 +00:00
Jonas Maebe
298f787233 * const parameters were not prevented from becoming regvars (causing
errors later on in the code generating stage)
2000-05-25 07:44:11 +00:00
pierre
947fa03cb0 + check of compatibility between selected assembler
output and target OS
2000-05-23 21:28:19 +00:00
pierre
9fa6970737 + added supported_target fiedl to tasminfo record
to disregard wrong assembler settings
2000-05-23 21:26:52 +00:00
peter
8900400a2c + typecasting support for variables, but be carefull as word,byte can't
be used because they are reserved assembler keywords
2000-05-23 20:36:28 +00:00
peter
00cf634883 * fixed instruction matching when a size flag is specified for all
operands
2000-05-23 20:34:35 +00:00
peter
cafbded190 * attsuffix table is also needed for ra386int 2000-05-23 20:33:37 +00:00
peter
7d9c18c01d * removed dup msgcrcvalue 2000-05-23 20:32:48 +00:00
peter
1a1ef88365 * fixed wrong code not detected due a bug in FPC 2000-05-23 20:32:11 +00:00
pierre
ea13526914 + pavel's code integrated, but onyl inside
ifdef pavel_linklib !
2000-05-23 20:18:25 +00:00
pierre
bdf92e8b55 * Use stacksize param instead of gettempsize 2000-05-23 14:20:49 +00:00
pierre
66b7f21d77 * fix for bug #959 2000-05-23 14:15:44 +00:00
pierre
3694513937 Use a multiple of 4 to substract from stack pointer for locals and temps 2000-05-23 13:55:27 +00:00
Jonas Maebe
23c8f29811 * fixed bug in "subl $2,%esp; .. ; pushw mem" optimization when the
sub comes from setting up the stack frame instead of from aligning
    esp (I hope)
2000-05-23 10:58:46 +00:00
pierre
0822332888 fix wrong handling of var para for size bug #961 2000-05-22 12:47:52 +00:00
peter
34e840268a * fixed size of const parameters in asm readers 2000-05-18 17:05:15 +00:00
sg
f703a54099 * Updated to recently added messages
* Lots of typos and bugs fixed
2000-05-18 08:00:00 +00:00
peter
cae5842737 * removed wrong warning for library finding 2000-05-17 18:30:35 +00:00
peter
6029115a7d * add support for loading of typed const strings with resourcestrings,
made the loading also a bit more generic
2000-05-17 17:10:06 +00:00
florian
42459e508a * fixed my previous commit 2000-05-17 11:42:27 +00:00
pierre
d299af0815 + add a warning if using ENTER instruction with linux target 2000-05-17 11:08:24 +00:00
pierre
3d2350d584 add a comment about ENTER and linux 2000-05-17 11:06:11 +00:00
pierre
536829e4bc + -CR option to enable check for object virtual method 2000-05-16 20:19:05 +00:00
florian
5c11706a27 * fixed a problem with case and negative labels if a linear list
was generated (fixes tests\test\testcase)
2000-05-16 18:56:04 +00:00
florian
0fb3ed4ad3 * fixed type conversion test for open arrays: the to and from fields where
exchanged which leads under certain circumstances to problems when
    passing arrays of classes/class references as open array parameters
2000-05-16 16:01:03 +00:00
peter
ae9b86f982 * fixed calling of inherited methods from destructors 2000-05-15 19:30:27 +00:00
peter
2ea50df7a6 * fixed crash with resourcestring in const 2000-05-15 19:29:50 +00:00
pierre
5d093dc072 * add implicit args for FADDP 2000-05-15 14:11:45 +00:00
pierre
9e97eb9e76 * FADD without arg is alias of FADDP 2000-05-15 14:10:48 +00:00
pierre
24e5f16174 * FADD without operand translated into FADDP 2000-05-15 14:08:49 +00:00
pierre
04104f3b5f + calculate CRC value and check if consistant 2000-05-15 14:07:33 +00:00
pierre
a788f11833 Declare MsgCrcValue with cond EXTERN_MSG 2000-05-15 14:05:40 +00:00
pierre
18073d8424 + FADD to FADDP conversion warning
+ MsgCrcValue added to msgidx.inc file
2000-05-15 14:02:31 +00:00
pierre
f63815853e CRC stuff moved to CRC unit 2000-05-15 13:19:04 +00:00
pierre
1b45cfb51b + calculate a CRC value for enums 2000-05-15 13:14:48 +00:00
pierre
c57f884789 CRC calculation placed into a unit 2000-05-15 13:12:25 +00:00
florian
795a06b4f2 + Int64/QWord stuff for array of const added 2000-05-14 18:48:24 +00:00
pierre
cff91a51a2 + use of a dictionary object
for faster opcode searching in assembler readers
    implemented by Kovacs Attila Zoltan
2000-05-12 21:57:02 +00:00
pierre
5f4ec1b1ff * fix the FDIV FDIVR FSUB FSUBR and popping equivalent
simply by swapping from reverse to normal and vice-versa
    when passing from one syntax to the other !
2000-05-12 21:26:22 +00:00
pierre
e5b1fd5620 + interactive mode for translation 2000-05-12 15:03:44 +00:00
pierre
d9cd338b91 * some more translations 2000-05-12 15:00:05 +00:00
pierre
a1335d22ba * updated + some more translations 2000-05-12 13:02:55 +00:00
pierre
7c324b13b2 * adapted to Delphi 3 2000-05-12 08:58:51 +00:00
pierre
f43fd3dc00 + add a warning if the error level is different in the two files
+ force to keep the order of orgfile
2000-05-12 08:47:25 +00:00
michael
08788989a8 + Corrected help messages 2000-05-12 07:59:18 +00:00
michael
34663b5725 + All messages translated 2000-05-12 07:03:17 +00:00
pierre
a77b264bd0 * * get it to compile with Delphi by Kovacs Attila Zoltan 2000-05-12 05:55:04 +00:00
pierre
3c17f030b5 * Reset DosError in Exec reported by Kovacs Attila Zoltan 2000-05-12 05:51:43 +00:00
peter
5f179d94fb * small fix for previous commit 2000-05-11 17:53:40 +00:00
peter
1d47da018e * fixed check for overloaded operator with array and chararray check 2000-05-11 16:47:37 +00:00
pierre
e15480418d * ordering bugs fixed 2000-05-11 13:37:37 +00:00
pierre
f86c9ec8e8 New utils to run Makefile running the compiler through GDB 2000-05-11 11:39:19 +00:00
pierre
61830584ec * changed to compile with Delphi, reported by Kovacs Attila Zoltan 2000-05-11 09:59:40 +00:00
pierre
fddd96280d * fixed several compare problems between longints and
const > $80000000 that are treated as int64 constanst
    by Delphi reported by Kovacs Attila Zoltan
2000-05-11 09:56:20 +00:00
pierre
1bd418e467 * some DBX changes but it still does not work ! 2000-05-11 09:40:11 +00:00
pierre
3697d3c985 * do not use upcase for strings, reported by Kovacs Attila Zoltan 2000-05-11 09:37:25 +00:00
pierre
3523aea209 * Delphi implementation by Kovacs Attila Zoltan 2000-05-11 09:36:22 +00:00
pierre
b8080d2b0f * disbal all code using MemAvail for Delphi reported by Kovacs Attila Zoltan 2000-05-11 09:29:01 +00:00
pierre
e0328653f1 + add a warning if a const string is longer than the
length of the string type
2000-05-11 09:15:12 +00:00
pierre
c25e1f17cc * change tosinfo.shortname length, reported by Kovacs Attila Zoltan 2000-05-11 09:07:45 +00:00
florian
889e43db8a * fixed some vmt problems, especially related to overloaded methods
in objects/classes
2000-05-11 06:53:48 +00:00
pierre
e112b16a51 * fix localswitch problem if compiling objpas 2000-05-11 06:52:37 +00:00
pierre
5f437d210d * Delphi defines TP so that code compiles
sent by Kovacs Attila Zoltan
2000-05-10 19:22:51 +00:00
pierre
8c9f14abcd * Use integer third arg for val in SetErrorFlags
to allow compilation with Delphi
    reported by Kovacs Attila Zoltan
2000-05-10 19:20:23 +00:00
pierre
122f24022a * op2strtable string length changed to 11
Thanks to Kovacs Attila Zoltan
    this should be set by nasmconv utility !
2000-05-10 19:09:07 +00:00
peter
d9cef95ac7 * -Se<x> option extended to increase errorcount for
warning,notes or hints
2000-05-10 13:40:19 +00:00
pierre
365f0ebc81 * no warning nor error for pushl of segment register 2000-05-10 08:55:08 +00:00
pierre
495fd674a7 * add .byte 066h to force correct pushw %es
* handle push es as a pushl %es
2000-05-09 21:44:27 +00:00
pierre
1d982ffbf6 * fix problem when modifying several local switches in a row 2000-05-09 21:31:50 +00:00
florian
3cae2ee1a5 * fixed a problem when returning int64/qword from a function in -Or: in some
cases a wrong result was returned
2000-05-09 19:05:56 +00:00
pierre
51a1677da5 * calculate para_offset for interrupt procedures 2000-05-09 14:19:08 +00:00
pierre
d380bdfec1 * handle interrupt function correctly 2000-05-09 14:17:33 +00:00
pierre
6cba0a4927 * calling interrupt routine supported 2000-05-09 14:16:00 +00:00
pierre
35d59984b2 * also allow interrupt procvars 2000-05-09 14:15:03 +00:00
pierre
5ce612c33e * fix for test/testpusw problem 2000-05-09 14:12:35 +00:00
pierre
f94c25e338 * Issue an error if opcode is not found 2000-05-09 11:56:25 +00:00
pierre
cd93ae3564 * some new messages 2000-05-09 10:58:09 +00:00
pierre
a1d9aa1ffe add code to allow calling interrupt routines 2000-05-09 10:54:03 +00:00
pierre
7e5eab9f0c Use i386nop.inc file 2000-05-09 10:52:08 +00:00
pierre
86e515e1a5 + i386nop.inc now contains the number of opcodes
+ LCALL and LJMP added (untested)
2000-05-09 10:35:19 +00:00
pierre
d4df420802 + generate also i386nop.inc containing the number of opcodes 2000-05-09 06:39:17 +00:00
peter
4b09b89588 * fixed reference parsing 2000-05-08 13:23:03 +00:00
peter
6d282de1d4 * fixed setting of output names with includefile 2000-05-08 13:18:09 +00:00
peter
325b9acfa2 * ansistrings are now default on for delphi mode, as most ppl expect
this
2000-05-04 20:46:17 +00:00
peter
1cd3fb9f4c * don't write rst files if errors found 2000-05-04 20:43:33 +00:00
pierre
40f1da8f8e * bug found by Kovacs Attila Zoltan corrected 2000-05-04 12:59:10 +00:00
pierre
2419be3520 * saveregisters now does not overwrite registers used as return value for functions 2000-05-04 09:29:31 +00:00
pierre
dfbb141d2b + easier debug when memory is lost 2000-05-03 16:31:22 +00:00
peter
934883569a * also allow smartlinking for main programs 2000-05-03 16:11:57 +00:00
pierre
d6b3b9a9cd * Use RestoreUnitsSyms to avoid wrong hints about unused units
* Avoid hints about unsused units if thet have a init or finalize code
2000-05-03 14:39:51 +00:00
pierre
eb59e0b11c * fix for tests/test/testrang.pp bug 2000-05-03 14:36:57 +00:00
pierre
f4d925b2e1 * fix the unitsym chain 2000-05-03 14:34:05 +00:00
Jonas Maebe
d82a0e5958 * changed NOT to A_NOP 2000-05-01 11:04:49 +00:00
Jonas Maebe
44845ec919 * some fixes, does not yet compile 2000-05-01 11:03:32 +00:00
Jonas Maebe
6e83066171 * fixed incompatibility with range chcking code, -O2 and higher
now work correctly together with -Cr
2000-04-29 16:57:44 +00:00
Jonas Maebe
2eb73a055e * destroyreg overwrote some memory if the reg was an FPU register 2000-04-29 16:56:45 +00:00
peter
f40500579d * fixed offset support intel reader, the gotoffset variable was not
always reset
  * moved check for local/para to be only used for varsym
2000-04-29 12:51:33 +00:00
peter
ad5c964217 * support asm block without assembler directive for -Sd 2000-04-29 12:50:14 +00:00
peter
10c46e7f4d * rebuild 2000-04-29 12:49:46 +00:00
peter
d371c67332 * fixed long line for tp7 2000-04-29 12:49:30 +00:00
Jonas Maebe
3e11694e49 * nmem compiles again (at least for powerpc) 2000-04-29 09:01:06 +00:00
pierre
c4f4ac6ae2 * fix my last fix for other targets then win32 2000-04-28 08:53:47 +00:00
pierre
71cbe13810 * power to ** operator fixed 2000-04-27 11:35:03 +00:00
pierre
22a6677394 * fix for snapshot failue
* order_overloaded reintrocduced and adapted to operators
2000-04-27 10:06:04 +00:00
pierre
477eacdff2 * correct bugs for ts010026 and ts010029 in win32 mode
in copyvaluparas
  + use SHL instead of IMUL if constant is a power of 2 in copyvalueparas
2000-04-26 10:03:45 +00:00
pierre
3174b39bcc * More changes for operator bug
Order_overloaded method removed because it conflicted with
    new implementation where the defs are ordered
    according to the unit loading order !
2000-04-26 08:54:18 +00:00
pierre
9560f264a3 + sym_n_unit_not_used 2000-04-26 07:32:02 +00:00
pierre
dbdb7ee667 + Hint about unused unit
* Testop bug fixed !!
    Now the operators are only applied if the unit is explicitly loaded
2000-04-25 23:55:29 +00:00
Jonas Maebe
e96d0a3d6e - disabled "string_var := string_var + ... " and "string_var + char_var"
optimizations (were only active with -dnewoptimizations) because of
    several internal issues
2000-04-25 14:43:36 +00:00
peter
8818701433 * added enhancedraise define 2000-04-24 13:34:29 +00:00
peter
47ffdafd5e * added some more fpuint instructions 2000-04-24 13:33:35 +00:00
peter
a9cff3c8c5 * removed unused vars 2000-04-24 12:48:37 +00:00
peter
015cca99cd * fixed check for exporting var or proc 2000-04-24 12:47:27 +00:00
peter
013cfb9bc4 * made overloaded_operators local per unit, but it still doesn't work
correct
2000-04-24 12:45:44 +00:00
peter
ebbf2e578f * backtraces for exceptions are now only generated from the place of the
exception
  * frame is also pushed for exceptions
  * raise statement enhanced with [,<frame>]
2000-04-24 11:11:50 +00:00
Jonas Maebe
613ceaa8fb * only enable string_concat optimization with uncertain optimizations,
because it gives wrong results with "s := s + f()" where s is a
    string and f() is a call to a function that modifies s
2000-04-23 21:04:09 +00:00
Jonas Maebe
a48a8031b8 * changed "mov reg1, reg2; mov reg2, y" optimization that caused
regalloc info to become invalid (it's still performed, but the
    regalloc info stays valid now)
2000-04-23 14:56:36 +00:00
Jonas Maebe
43e023d0af * use FPC_SHPRTSTR_CONCAT_LEN for -dnewoptimizations (temp)
* more precise reg deallocation when calling the above)
2000-04-23 09:28:19 +00:00
Jonas Maebe
941f20c29a * cleaner register (de)allocation in secondfor (for optimizer) 2000-04-22 15:29:26 +00:00
Jonas Maebe
57e41f9053 * aasm.pas: pai_align instead of pai_align_abstract if cpu <> i386
+ systems.pas: info for macos/ppc
  * new/cgobj.pas: compiles again without newst define
  * new/powerpc/cgcpu: generate different entry/exit code depending on
    whether target_os is MacOs or Linux
2000-04-22 14:25:03 +00:00
Jonas Maebe
490769db7d + special code for string + char, between -dnewoptimizations 2000-04-21 12:35:05 +00:00
pierre
7909818e21 * allow to view objects having the same name 2000-04-20 08:52:01 +00:00
pierre
a7de7fd247 * remove a memory leak with resourcestrings 2000-04-19 08:24:41 +00:00
peter
9e61c134bb * fixed forward resolving with redefined types 2000-04-17 18:44:22 +00:00
Jonas Maebe
f648aaf986 * small regalloc fix 2000-04-16 16:46:43 +00:00
Jonas Maebe
0fd1e94dbb * release register used in for-loop before end label (for better
optimizations)
2000-04-16 08:08:44 +00:00
pierre
3ed4ca8362 * some debug related updates 2000-04-14 12:49:11 +00:00
pierre
c0943fad01 * better inlined real sqr function 2000-04-14 12:33:40 +00:00
pierre
76f84bfc22 * setfiletime to both files in synchronize 2000-04-14 12:27:57 +00:00
pierre
4a51cd5763 avoid to reset operand size of opsize is S_NO 2000-04-14 12:26:33 +00:00
pierre
811f471334 * partial linklib change
I could not use Pavel's code because it broke the current way
    linklib is used, which is messy :(
  + add postw32 call if external linking on win32
2000-04-14 11:16:10 +00:00
pierre
498dd7873c renamed postw32.pp to fit into 8.3 limitation 2000-04-14 11:13:02 +00:00
pierre
2d8319c249 renamed to fit in 8.3 limitation 2000-04-14 11:10:46 +00:00
pierre
b655569229 * corrected version from Pavel 2000-04-14 11:06:42 +00:00
pierre
9e1ba97b6d * typo errors corrected 2000-04-14 08:29:36 +00:00
pierre
7a2993fe8b * close ppu file if errors 2000-04-14 08:15:05 +00:00
pierre
64f232f69f + external postprocessing by Pavel Ozerski 2000-04-13 13:44:52 +00:00
pierre
3eb3f07dd7 * fix the -g-l option 2000-04-12 12:42:28 +00:00
florian
1bb13781e0 * sometimes wrong range checking code for arrays was generated when
using register variables
2000-04-11 20:36:39 +00:00
peter
6ea5534991 * added extra ifdef to check if there are some objects else some
targets aren't added anymore
2000-04-11 15:34:47 +00:00
marco
26081ed999 * Simple script which specifies the right params for a try out BSD build 2000-04-11 13:06:25 +00:00
Jonas Maebe
fc11708a77 * changed the order of the tinschange type enum 2000-04-11 11:21:44 +00:00
Jonas Maebe
e4ceb46242 * fixed a serious bug in the CSE which (I think) only showed with
-dnewoptimizations when using multi-dimensional arrays with
    elements of a size different from 1, 2 or 4 (especially strings).
  * made the DFA/CSE more robust (much less dependent on specifics of the
    code generator)
2000-04-10 12:45:56 +00:00
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
Jonas Maebe
944f9b3de1 * added ait_symbol_end to SkipInstr 2000-04-10 12:21:33 +00:00
pierre
ed95777843 * get -g-l to work 2000-04-10 11:36:19 +00:00
Jonas Maebe
6743c46a07 * or and lds/les/lfs/lgs/lss read operand 1
* movd/movq changed from ch_all to r_op1, w_op2
2000-04-10 10:09:32 +00:00
pierre
165df86632 * fix for bug #922 in copyvalueparas 2000-04-10 09:01:15 +00:00
michael
10b7a3ccbe * Fixed bug in readcomment that was dropping * characters 2000-04-08 20:18:53 +00:00
Jonas Maebe
cde0d7d084 * fixed concat_string optimization and enabled it when
-dnewoptimizations is used
2000-04-08 16:22:11 +00:00
peter
2eadddb7e6 * fixed pointer->array conversion when resulttype was already set 2000-04-08 09:30:01 +00:00
marco
2f7e162a8b * For BSD signals are off for now 2000-04-07 20:52:24 +00:00
peter
1f082db3ad * correctfldcw define added 2000-04-07 14:56:18 +00:00
pierre
d2aa336b2f * avoid bug #911, worng unused parameter hints 2000-04-06 11:28:17 +00:00
pierre
841f0d21c1 * bug in TOperand.SetSize corrected 2000-04-06 07:56:04 +00:00
pierre
cd4ba01892 * handle offset fixup
+ add source lines
  * no NEAR for opcodes that only support short jumps
2000-04-06 07:09:15 +00:00
pierre
8f1708b14a * handle offsetfixup 2000-04-06 07:05:57 +00:00
pierre
b1f00f942d + generate line stabs if cs_gdb_lineinfo is aktglobalswitches 2000-04-06 07:04:50 +00:00
pierre
7520cf9b6a + Use R FPUint suffix in table 2000-04-05 22:13:42 +00:00
pierre
38224e3cf6 * no unitdir automatically added if -n option present 2000-04-05 21:57:34 +00:00
pierre
c03c1f8af3 * set NOUSEEXCEPT to remove use of setjump/longjump 2000-04-05 21:18:04 +00:00
pierre
1a16b36498 * generate code accepted by nasm 2000-04-04 21:41:56 +00:00
pierre
d9fc5de9ac + accept nasmwin32 output 2000-04-04 15:05:03 +00:00
pierre
1f64423e43 * nasmwin32 is 9 chars long, idtxt changed accordingly 2000-04-04 14:18:15 +00:00
pierre
c45c6b14a3 + nasmwin32 for win32 object output with nasm assembler 2000-04-04 13:54:58 +00:00
pierre
67a0b6c79e + TOperand.SetCorrectSize virtual method added
to be able to change the suffix according to the instruction
    (FIADD word ptr w need a s as ATT suffix
    wheras FILD word ptr w need a w suffix :( )
2000-04-04 13:48:44 +00:00
pierre
5377e30ab7 + AttSufFPUint for integer fpu instructions 2000-04-04 13:45:20 +00:00
pierre
3dfae51aed + R suffix for integer FPU operations 2000-04-04 13:44:03 +00:00
florian
2a901bf527 * initialize/finalize_data checks if procinfo is assigned else
crashes happend at end of compiling if there were ansistrings in the
    interface/implementation part of units: it was the result of the fix
    of 701 :(
2000-04-03 20:51:22 +00:00
pierre
6800fa46bc * avoid cyclic overloaded list for operators 2000-04-03 14:50:05 +00:00
pierre
7f4168fb0a * fix for bug #909 2000-04-03 12:23:02 +00:00
florian
ff5b72e3bd * fixed another problem with readln(<floating point register variable>);
* the register allocator takes now care of necessary pushes/pops for
    readln/writeln
2000-04-02 18:30:11 +00:00
florian
f71ddb9e2f * readln(r); works now, if r is a fpu register variable 2000-04-02 17:47:47 +00:00
florian
3f9126f999 * fixed bug #903: the compiler gives now a nice message if it can't create
the .o file, (same for future .ar)
2000-04-02 15:22:17 +00:00
florian
7c75febd64 * enumerations with size 1 or 2 weren't handled corretly if they were register
variables: in fact they got 32 bit register assigned; fixed
2000-04-02 12:11:38 +00:00
florian
339d986a2a * bug #701 fixed: ansistrings in interface and implementation part of the units
are now finalized correctly even if there are no explicit initialization/
    finalization statements
2000-04-02 10:18:18 +00:00
florian
fcf5315f23 + constant procedure variables can have a @ in front:
const p : procedure = @p;
    til now only
       const p : procedure = p;
    was allowed
2000-04-02 09:12:51 +00:00
peter
836eafa712 * use arraydef.elesize instead of elementtype.def.size 2000-04-01 14:18:44 +00:00
peter
8550915222 * don't write suffix for fldcw 2000-04-01 14:18:03 +00:00
peter
0fccba3864 * arraydef.elesize returns 4 when strings are found in an openarray,
arrayconstructor. Since only the pointers to the strings are stored
2000-04-01 14:17:08 +00:00
peter
7c04f2ff09 * fixed rtti info for record 2000-04-01 11:44:56 +00:00
Tomas Hajny
b65e936773 * logfile appended if exists 2000-04-01 10:46:29 +00:00
Tomas Hajny
f295a8029b * .ao2 bug fixed 2000-04-01 10:45:14 +00:00
pierre
92e9d3bf83 * fix the handling of value parameters in cdecl function 2000-03-31 22:56:45 +00:00
pierre
8dc1494e52 * fix for problem in tbs0299 for 4 byte stack alignment 2000-03-28 22:31:46 +00:00
pierre
482820110c + add a warning if esi is base and index in object assembler code 2000-03-28 22:11:46 +00:00
pierre
a7331ce0eb * Object fields are simple offsets in TP/Delphi mode 2000-03-28 22:10:12 +00:00
pierre
ac98c4c444 * fix for bug #891 2000-03-28 21:14:18 +00:00
pierre
1d3629b598 * fix for bug #739 2000-03-27 21:51:19 +00:00
pierre
2931f94d33 * "segss" prefix in Intel is converted into "ss" in ATT
and vice-versa. Fixes web bug #892.
2000-03-27 21:18:54 +00:00
pierre
861a491bbd * fix bug #294 in a BP compatible way ie. hidding the function result 2000-03-27 21:15:34 +00:00
pierre
700f9ce852 * fix for bug #890 2000-03-27 11:57:22 +00:00
pierre
9c44048ad2 + add error if trying to use readln or writeln for files
or read or write on untyped files.
    Reset and rewrite are still incompatible with BP
    (reset(dat,1); is allowed for typed file !)
2000-03-27 09:42:48 +00:00
Jonas Maebe
d8d25ef6de + basic properties 2000-03-26 16:38:27 +00:00
Jonas Maebe
5fae5888e2 * frame_pointer = stackpointer instead of R_NO 2000-03-26 16:38:06 +00:00
Jonas Maebe
f3abe5e528 + use cpubase unit
- removed use of alpha unit
2000-03-26 16:37:36 +00:00
Jonas Maebe
a7e1271da1 * release the register used to hold the value of the case variable
at the end of the case
2000-03-26 11:33:49 +00:00
Jonas Maebe
6c09cba112 * some more allocRegBetween fixes (-al didn't function previously
if the compiler was compiled with -OG2p3r)
2000-03-26 10:58:47 +00:00
florian
f3ed1eaf5c * improved allocation rules for integer register variables 2000-03-26 10:50:04 +00:00
Jonas Maebe
a890c59e05 * fixed bug in regUsedAfterInstruction (it didn't convert the reg
to 32bit before checking)
  * result: make cycle now works with -OG3p3r!!!!
2000-03-26 08:46:52 +00:00
Jonas Maebe
3ec9514966 * fixed some things for -Or. Make cycle now works with -OG2p3r if
you use -Aas. There still a bug in popt386.pas that causes a
    problem with the binary writer, but I haven't found it yet
2000-03-25 19:05:47 +00:00
Jonas Maebe
c18d6589e4 * moved AllocRegBetween() from csopt386 to this unit because it's now
also used by popt386
2000-03-25 18:58:00 +00:00
Jonas Maebe
3555239e29 * remove dealloc/alloc of reg1 between "movl %reg1,%reg2;
movl %reg2,%reg1" when removing the second instruction (it
    confused the CSE and caused errors with -Or)
2000-03-25 18:57:02 +00:00
Jonas Maebe
34dd37729c * fix for -dnewoptimizations and -Or (never remove stores to regvars)
but make cycle with -OG2p3r still fails :(
2000-03-24 15:54:49 +00:00
pierre
578465bef0 * fix tf000008 bug 2000-03-23 22:17:51 +00:00
Jonas Maebe
f6a406c6e9 * real fix for web bug882 2000-03-23 16:29:32 +00:00
peter
d75bbf8b73 * fixed crash with inherited with varsym/propsym 2000-03-23 15:56:59 +00:00
peter
273373602f * $VERSION is now version_string
+ $FULLVERSION is now full_version_string
2000-03-23 15:35:47 +00:00
Jonas Maebe
82da57a765 * fix for webbug 886 2000-03-22 17:34:53 +00:00
Jonas Maebe
03939d1fb1 * fixed webbug 882 2000-03-22 15:41:10 +00:00
florian
2805167e6e * bug #294 fixed: parameters can have now the same name as the function/
procedure, this is compatible with TP/Delphi
2000-03-22 09:25:57 +00:00
pierre
0578c906ee fix for bug #312 2000-03-21 23:36:46 +00:00
peter
9132430e40 * only include crtbegin when linking to libc 2000-03-21 21:36:52 +00:00
peter
7a22d50859 * some more updates 2000-03-21 21:36:05 +00:00
peter
c236646caa * add OPT for optimizing compiler 2000-03-21 21:35:27 +00:00
florian
5925e8fb20 * fixed bug #881: for the include/exclude instruction sometimes wrong
code was generated
2000-03-21 16:24:43 +00:00
florian
872031518d * fixed bug #879: high and low take now any kind of expression 2000-03-21 09:12:40 +00:00
pierre
53d50a62a4 * probably a fix for bug #615 2000-03-20 16:04:05 +00:00
florian
814bee0cc6 * fixed <dword>/<dword>, <int64>/<int64> and <qword>/<qword> 2000-03-20 10:16:51 +00:00
florian
360f371c44 * catching of exceptions is switched off on all targets if the define
DEBUG is used
2000-03-20 09:37:51 +00:00
florian
431ec3bfe8 * using the directive DEBUG when compiling the compiler will include now
the lineinfo unit on all targets
2000-03-20 09:36:23 +00:00
florian
4ac9fc1812 * in delphi mode: method parameters can now have the same name as parameters 2000-03-20 09:34:33 +00:00
peter
86a9551dcb * some beginning 2000-03-19 18:46:50 +00:00
florian
fa207becc1 * not(b) if b is a register variable, didn't work, fixed 2000-03-19 15:20:22 +00:00
florian
9376275364 * bug #873 fixed
* some cleanup in objectdec
2000-03-19 14:56:38 +00:00
florian
9f57527c98 * crash when using exception classes without sysutils unit fixed 2000-03-19 14:17:05 +00:00
peter
03dcba2fda * fixed temp ansi handling within array constructor 2000-03-19 11:55:08 +00:00
peter
797267fde1 * protected member check for classes works 2000-03-19 11:22:21 +00:00
peter
98a50970e7 * check for unknown id in on exception 2000-03-19 11:16:44 +00:00
peter
ffab53c30f * tp7 fix 2000-03-19 08:17:36 +00:00