Commit Graph

355 Commits

Author SHA1 Message Date
florian
499cbcbbe1 * make cycle OPT=-gwl -Co -Cr on x86-64 fixed
git-svn-id: trunk@7976 -
2007-07-07 19:16:49 +00:00
yury
04147151e4 * Fixed stabs generation for DLLs by internal assembler (use RELOC_ABSOLUTE in all cases).
* Do not generate relocs by internal linker for sections which are not loaded in memory.

git-svn-id: trunk@7829 -
2007-06-26 22:51:21 +00:00
daniel
9adb202a92 * Rework the constexprint to allow operations from low(int64) to high(qword).
+ Some initial work on a formaldef which also carries the typinfo of a parameter.

git-svn-id: trunk@7639 -
2007-06-13 07:41:18 +00:00
peter
29ffdefacb * secrel32 relocation support required by dwarf2 under windows
git-svn-id: trunk@7172 -
2007-04-25 09:06:36 +00:00
peter
7e71a8224e * support relative symbol calculation for uleb128/sleb128
git-svn-id: trunk@7019 -
2007-03-29 06:08:58 +00:00
peter
69a4e616ba * fix symbol substraction in stabs
git-svn-id: trunk@7008 -
2007-03-27 17:43:28 +00:00
pierre
f91620c22b * fix threadvar stabstr handling in internal assembler
git-svn-id: trunk@6960 -
2007-03-23 06:52:29 +00:00
peter
e0c58d3658 * use .comm again for global variables
this is needed for shared library linking where the .so
    needs to resolve to the space allocated for the symbol in the
    main program

git-svn-id: trunk@6641 -
2007-02-25 16:05:57 +00:00
tom_at_work
106fe68ce6 * renamed TStringList to TCmdStrList, in general use TCmdStr instead of shortstrings to fix bug #6351
git-svn-id: trunk@6215 -
2007-01-26 22:29:39 +00:00
Jonas Maebe
228943271f * increased AsmOutSize from 32kb to 128kb, makes external assembling a
little faster

git-svn-id: trunk@6165 -
2007-01-24 15:44:36 +00:00
peter
8bf63f4f69 * don't generate RVA reloc in stabs if there is no symbol
git-svn-id: trunk@5990 -
2007-01-15 16:46:50 +00:00
florian
4aa5f6401e * don't write stabs with rva entries on linux
git-svn-id: trunk@5834 -
2007-01-07 00:04:05 +00:00
Jonas Maebe
4454f6da0f * enable pipe-assembling again for solaris
git-svn-id: trunk@5346 -
2006-11-12 21:43:58 +00:00
florian
959a1379cf * fixed building of smart linked units
git-svn-id: trunk@5227 -
2006-11-04 18:12:33 +00:00
peter
5cd8775d38 * show only totals for memdebug
git-svn-id: trunk@5196 -
2006-11-03 11:24:02 +00:00
peter
658c46b903 * remove tdictionary and tindexarray
* symtables based on TFPHashObjectList and TFPObjectList
  * rename torddef.typ to torddef.ordtype
  * rename tfloatdef.typ to tfloatdef.floattype
  * rename tdef.deftype to tdef.typ
  * remove obsolete browser code, browcol is kept so the ide
    can still be compiled

git-svn-id: trunk@5192 -
2006-11-03 00:30:30 +00:00
peter
7a2e0da7bd * extra parameter for file searching functions
that indicate if the cache shall be used or not
  * fixed compile of non-x86 targets

git-svn-id: trunk@5115 -
2006-10-31 10:56:58 +00:00
peter
cb246eb781 * Remove dos,strings units, use SysUtils instead
* replace split* functions with Extract* functions
  * Add Directory caching

git-svn-id: trunk@5102 -
2006-10-30 23:29:35 +00:00
peter
070b86a512 * order of named sections added
* fix debugstart and debugend labels

git-svn-id: trunk@5098 -
2006-10-30 22:34:22 +00:00
florian
85d63d9fa9 * settings refactored
git-svn-id: trunk@5094 -
2006-10-30 18:02:58 +00:00
peter
2f72117c9e * stabs don't write offset in n_value for non-local symbols that use
a relocation

git-svn-id: trunk@4763 -
2006-10-01 12:25:45 +00:00
Jonas Maebe
d75b19e484 * removed/conditionalised several unused variables
git-svn-id: trunk@4194 -
2006-07-14 19:44:54 +00:00
Marc Weustink
1f3e05131a fixed generation of dwarf lineinfo in win32
git-svn-id: trunk@4171 -
2006-07-13 23:53:53 +00:00
Tomas Hajny
a62c1faa2d + output is flushed before launching external utilities
git-svn-id: trunk@3539 -
2006-05-15 00:28:55 +00:00
Jonas Maebe
7c16869e48 * don't write individual names of all assembler files when generating
a smart linkable unit with -ap

git-svn-id: trunk@3233 -
2006-04-16 18:25:20 +00:00
peter
be88cd47b2 Merged revisions 3090-3113 via svnmerge from
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler

r3090 | peter | 2006-03-30 15:10:15 +0100 (Thu, 30 Mar 2006) | 2 lines

  * infrastructure for .vtable directives

r3094 | peter | 2006-03-31 10:01:48 +0100 (Fri, 31 Mar 2006) | 2 lines

  * vtable directive fixes

r3113 | peter | 2006-04-01 22:49:57 +0100 (Sat, 01 Apr 2006) | 2 lines

  * Smart VTable linking using Symbols

git-svn-id: trunk@3115 -
2006-04-02 00:11:17 +00:00
florian
5e51aa7968 * fixed pe flags x86_64
* fixed idata for x86_64

git-svn-id: trunk@3112 -
2006-04-01 20:09:13 +00:00
peter
e7a419cbff * leb128 support for binary writers
git-svn-id: trunk@3049 -
2006-03-26 21:12:33 +00:00
peter
3e074126f4 Merged revisions 3005 via svnmerge from
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler

r3005 (peter)
  * fix stab relocation for local symbols

git-svn-id: trunk@3044 -
2006-03-26 18:55:09 +00:00
peter
b7fe6797bf Merged revisions 2921-2922,2925 via svnmerge from
http://svn.freepascal.org/svn/fpc/branches/linker/compiler

........
r2921 | peter | 2006-03-15 08:35:00 +0100 (Wed, 15 Mar 2006) | 2 lines

  * pass ObjectWriter to ObjectOuput

........
r2922 | peter | 2006-03-15 12:40:30 +0100 (Wed, 15 Mar 2006) | 2 lines

  * refactor asmdata

........
r2925 | peter | 2006-03-15 16:09:39 +0100 (Wed, 15 Mar 2006) | 3 lines

  * add cfi to asmdata
  * move asmlist, asmcfi, asmdata to own unit

........

git-svn-id: trunk@2932 -
2006-03-16 08:52:22 +00:00
peter
d8dc5679e3 * aktcputype and aktoptimizecputype was missing in the previous optimization commits
git-svn-id: trunk@2907 -
2006-03-13 12:29:56 +00:00
peter
b6e35a200e * rewrite of optimizer options
git-svn-id: trunk@2901 -
2006-03-13 09:05:50 +00:00
peter
86a15e83e9 * fix section flags for stabs
git-svn-id: trunk@2838 -
2006-03-10 18:35:17 +00:00
peter
5abe3dbe38 * fixed invalid typecast
git-svn-id: trunk@2776 -
2006-03-05 21:53:41 +00:00
peter
785550d7e3 Merged revisions 2669,2673,2677,2683,2696,2699-2702,2704,2708,2712-2715,2718,2722-2723,2728-2730,2740,2769 via svnmerge from
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler

........
r2669 | peter | 2006-02-23 09:31:21 +0100 (Thu, 23 Feb 2006) | 2 lines

  * add compiler dir

........
r2673 | peter | 2006-02-23 17:08:56 +0100 (Thu, 23 Feb 2006) | 2 lines

  * enabled more code

........
r2677 | peter | 2006-02-24 17:46:29 +0100 (Fri, 24 Feb 2006) | 2 lines

  * pe stub and headers

........
r2683 | peter | 2006-02-25 23:13:24 +0100 (Sat, 25 Feb 2006) | 2 lines

  * section options cleanup

........
r2696 | peter | 2006-02-26 20:27:41 +0100 (Sun, 26 Feb 2006) | 2 lines

  * fixed typecasts

........
r2699 | peter | 2006-02-26 23:04:32 +0100 (Sun, 26 Feb 2006) | 2 lines

  * simple linking works

........
r2700 | peter | 2006-02-27 09:44:50 +0100 (Mon, 27 Feb 2006) | 2 lines

  * internal linker script

........
r2701 | peter | 2006-02-27 12:05:12 +0100 (Mon, 27 Feb 2006) | 2 lines

  * make elf working again

........
r2702 | peter | 2006-02-27 14:04:43 +0100 (Mon, 27 Feb 2006) | 3 lines

  * disable dwarf for smartlinking with .a
  * fix section start in new .a file

........
r2704 | peter | 2006-02-27 18:30:43 +0100 (Mon, 27 Feb 2006) | 2 lines

  * stab section fixes

........
r2708 | peter | 2006-02-28 19:29:17 +0100 (Tue, 28 Feb 2006) | 2 lines

  * basic work to merge stabs sections

........
r2712 | peter | 2006-02-28 23:17:48 +0100 (Tue, 28 Feb 2006) | 2 lines

  * unload tmodules before linking

........
r2713 | peter | 2006-02-28 23:18:51 +0100 (Tue, 28 Feb 2006) | 2 lines

  * fixed stabs linking

........
r2714 | peter | 2006-02-28 23:19:19 +0100 (Tue, 28 Feb 2006) | 2 lines

  * show code and data size

........
r2715 | peter | 2006-02-28 23:25:35 +0100 (Tue, 28 Feb 2006) | 2 lines

  * unload .stabs from objdata after it is merged

........
r2718 | peter | 2006-03-01 12:24:38 +0100 (Wed, 01 Mar 2006) | 3 lines

  * memsize/datasize cleanup
  * check for exports/resources when adding module to linker

........
r2722 | peter | 2006-03-03 09:12:20 +0100 (Fri, 03 Mar 2006) | 2 lines

  * new TObjSymbol splitted from TAsmSymbol

........
r2723 | peter | 2006-03-03 14:08:55 +0100 (Fri, 03 Mar 2006) | 2 lines

  * coff fixes after recent objsymbol changes

........
r2728 | peter | 2006-03-03 22:43:04 +0100 (Fri, 03 Mar 2006) | 2 lines

  * fixed coff writer

........
r2729 | peter | 2006-03-04 01:10:32 +0100 (Sat, 04 Mar 2006) | 2 lines

  * fix read-only opening

........
r2730 | peter | 2006-03-04 01:11:16 +0100 (Sat, 04 Mar 2006) | 2 lines

  * Read edata from DLLs, basic work

........
r2740 | peter | 2006-03-04 21:13:43 +0100 (Sat, 04 Mar 2006) | 3 lines

  * deletedef added
  * don't remove defs from index when we are already clearing everything

........
r2769 | peter | 2006-03-05 21:42:33 +0100 (Sun, 05 Mar 2006) | 4 lines

  * moved TObj classes to ogbase
  * ObjSection.SymbolRefs and SymbolDefines list
  * DLL importing

........

git-svn-id: trunk@2771 -
2006-03-05 21:10:37 +00:00
Jonas Maebe
1e08396b0b * assembling via a pipe and regular assembling now both use the
same binary and command line

git-svn-id: trunk@2591 -
2006-02-15 11:01:25 +00:00
daniel
6ba68594be * Add --32 or --64 to to ensure functionality of i386 compiler on x64_64 OSes.
git-svn-id: trunk@2325 -
2006-01-22 14:29:07 +00:00
florian
b06643a1eb * tai_const refactored
git-svn-id: trunk@2323 -
2006-01-22 12:58:38 +00:00
peter
66f8276445 * refactor booleans in systeminfo structure, they are now flags
* support for case aware filesystems (Windows), they do now only
    one lookup if a file exists
  * add -WI option to generate import section for DLL imports or
    let the linker handle it. Default is still import section until
    the Makefiles are fixed, then the generation can be left to the
    linker

git-svn-id: trunk@2274 -
2006-01-13 15:13:26 +00:00
florian
61e3b70cfa * cleaned up segmented thread variables
git-svn-id: trunk@2135 -
2006-01-03 12:49:29 +00:00
peter
51b8a4a132 * move stabs generation to a single procedure call from pmodules
git-svn-id: trunk@1358 -
2005-10-12 10:35:46 +00:00
peter
ec4d287fd8 * aktoutputformat removed, add new paraXX vars for target
assembler and debuginfo and use these vars to override
    the defaults for the target after the parameters are read
  * remove not-maintained and tested gdb code

git-svn-id: trunk@1201 -
2005-09-25 21:17:37 +00:00
peter
82faa95118 * lineinfo fixed for binary writer
* add tai_directive to replace old tai_direct calls
    in powerpc

git-svn-id: trunk@1139 -
2005-09-19 11:47:30 +00:00
peter
a3ab2053c9 * support multiple asmlabel types, renamed getlabel to
getjumplabel and added type para to getlabel for specific types
  * moved lineinfo generation from assemble and aggas to dbgstabs

git-svn-id: trunk@1120 -
2005-09-18 21:16:10 +00:00
peter
c3727c29b2 * rename al_code to al_procedures, al_bss/al_data to al_globals
* more work for section smartlinking

git-svn-id: trunk@1083 -
2005-09-15 06:51:12 +00:00
florian
e7e12f0f31 + some more arm binary writer stuff, this is mainly a transfer commit
git-svn-id: trunk@1068 -
2005-09-09 16:12:19 +00:00
peter
375a5add80 * rename al_debug to al_typestabs
* first write al_typestabs before other sections

git-svn-id: trunk@1054 -
2005-09-06 06:32:26 +00:00
peter
c470097764 * fix overflow in the asmlist array
git-svn-id: trunk@903 -
2005-08-18 05:28:16 +00:00
peter
05a628447f * put typedconsts in own asmlist to prevent mixing
array and string data
  * added al_rodata
  * renamed tasmlist enum names to include al_ prefix

git-svn-id: trunk@899 -
2005-08-17 08:42:52 +00:00
daniel
6234341ef2 * Uninitialised variables are no longer declared with .comm
git-svn-id: trunk@766 -
2005-07-30 17:40:20 +00:00
daniel
603e165761 * add exclude(to_do,threadvarsegment) to assemble.pas to temporarily fix
reported problem.

git-svn-id: trunk@748 -
2005-07-25 20:03:26 +00:00
daniel
e98865ab40 * Fixes and further development of fast threadvars
git-svn-id: trunk@743 -
2005-07-25 14:07:02 +00:00
daniel
22e89e1a42 * Proof of concept: Support threadvars using segment registers.
git-svn-id: trunk@740 -
2005-07-24 21:06:23 +00:00
daniel
d05f58b604 * Group asmlists into array to be able to add
some of them more comfortably.
  * x86_64 compilation was broken, fixed.
  * Sparc compilation was broken, fixed.

git-svn-id: trunk@731 -
2005-07-23 13:44:32 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
peter
dc363f29bc * maybequoted() added 2004-12-22 16:32:45 +00:00
peter
6c9c4c686c * small m68k updates to bring it up2date
* give better error for external local variable
2004-11-09 22:32:59 +00:00
peter
c95a859f0a * generic tlocation
* move tlocation to cgutils
2004-10-31 21:45:02 +00:00
mazen
7321a78e1c * Merge is complete for this file, cycles ! 2004-10-14 14:47:52 +00:00
peter
0395100a07 * reverted USE_SYSUTILS patch until ll patches are readyt 2004-10-13 17:58:54 +00:00
mazen
3df0e367c2 * Merge is complete for this file 2004-10-13 14:53:28 +00:00
florian
5051301b16 + non writeable unit output directory produces a nice error message now 2004-10-08 15:52:40 +00:00
peter
ef7ae0eab1 * debuginfo fixes 2004-10-04 18:26:51 +00:00
peter
892daa42ec * AB_COMMON symbols need special relocation in stabs 2004-10-04 15:48:11 +00:00
peter
519bf9889e don't lowercase filenames in stabs 2004-08-27 20:53:52 +00:00
peter
6663adfd50 * fixed win32 that was broken by previous fix 2004-08-25 15:55:32 +00:00
Tomas Hajny
a3d82fd80f * binary writer fix for GO32v2 from Peter 2004-08-24 19:31:44 +00:00
Jonas Maebe
a8d3a47a61 + detect assembler errors when using -ap 2004-07-01 18:28:54 +00:00
peter
4ad491412a * fix wrong calculation of .bss section 2004-07-01 15:42:53 +00:00
florian
8a9758c5e2 * logs truncated 2004-06-20 08:55:28 +00:00
florian
588e2c38bf * dwarf branch merged 2004-06-16 20:07:06 +00:00
peter
3c8d4c8f11 * set correct n_line type when starting new .o file by passing
the current section type
2004-05-21 22:43:36 +00:00
michael
ebec652408 + Patch from peter for stack overflow 2004-03-22 09:28:34 +00:00
peter
be489d4405 * start with bssline 2004-03-15 21:50:09 +00:00
florian
61f15e4ec4 * make cycle fixed
+ pic support for darwin
  + support of importing vars from shared libs on darwin implemented
2004-03-02 17:32:12 +00:00
olle
4fecc1a56f * big transformation of Tai_[const_]Symbol.Create[data]name* 2004-03-02 00:36:32 +00:00
florian
fabb9c33ac * top_symbol killed
+ refaddr to treference added
  + refsymbol to treference added
  * top_local stuff moved to an extra record to save memory
  + aint introduced
  * tppufile.get/putint64/aint implemented
2004-02-27 10:21:04 +00:00
peter
1422985ca0 * Change several $ifdef i386 to x86
* Change several OS_32 to OS_INT/OS_ADDR
2004-01-31 17:45:16 +00:00
Jonas Maebe
b0ea6b1379 + support for piped assembling under Darwin 2004-01-30 15:44:23 +00:00
marco
80abe98cf0 * havelinuxrtl10 fixes 2003-11-10 17:22:28 +00:00
peter
96f9973b46 * taicpu_abstract.oper[] changed to pointers 2003-10-21 15:15:35 +00:00
marco
487650ab51 * -XP<prefix> support 2003-10-03 14:16:48 +00:00
peter
b369a7ee9e * better link on target support 2003-09-30 19:54:23 +00:00
peter
8af51ea6d3 * locals and paras are allocated in the code generation
* tvarsym.localloc contains the location of para/local when
    generating code for the current procedure
2003-09-23 17:56:05 +00:00
peter
6a8d5eb25d * NEWRA branch merged 2003-09-03 15:55:00 +00:00
pierre
907b785f0d * add support for constant offset in stabs address, needed by threadvar debugging support 2003-07-04 22:40:58 +00:00
peter
99c4b6cf86 * m68k fix 2003-04-23 13:48:07 +00:00
peter
9ed2ce8c12 * removed some notes/hints 2003-04-22 14:33:38 +00:00
olle
64fb522791 * niceified comments 2003-03-10 18:16:00 +00:00
marco
04b80d3123 * more hasunix fixes 2003-01-10 21:49:00 +00:00
carl
53d90a34ab - remove some unused defines 2002-11-24 18:18:04 +00:00
carl
64655be168 * memory optimization (3-4%) : cleanup of tai fields,
cleanup of tdef and tsym fields.
  * make it work for m68k
2002-11-17 16:31:55 +00:00
peter
bfd72ad5d5 * merged changes from 1.0.7 up to 04-11
- -V option for generating bug report tracing
    - more tracing for option parsing
    - errors for cdecl and high()
    - win32 import stabs
    - win32 records<=8 are returned in eax:edx (turned off by default)
    - heaptrc update
    - more info for temp management in .s file with EXTDEBUG
2002-11-15 01:58:45 +00:00
peter
477bc04c6a * always include lineno after fileswitch. valgrind requires this 2002-10-30 21:01:14 +00:00
peter
20af604613 * memdebug enhancements 2002-09-05 19:29:42 +00:00
peter
ecb430a8eb * don't write (stabs)line info when inlining a procedure 2002-08-20 16:55:38 +00:00
carl
9da171faf2 + stab register indexes for powerpc (moved from gdb to cpubase)
+ tprocessor enumeration moved to cpuinfo
  + linker in target_info is now a class
  * many many updates for m68k (will soon start to compile)
  - removed some ifdef or correct them for correct cpu
2002-08-12 15:08:39 +00:00
peter
425bb45ddc * renamed current_library to objectlibrary 2002-08-11 14:32:25 +00:00
peter
ac71268ce6 * saving of asmsymbols in ppu supported
* asmsymbollist global is removed and moved into a new class
    tasmlibrarydata that will hold the info of a .a file which
    corresponds with a single module. Added librarydata to tmodule
    to keep the library info stored for the module. In the future the
    objectfiles will also be stored to the tasmlibrarydata class
  * all getlabel/newasmsymbol and friends are moved to the new class
2002-08-11 13:24:10 +00:00
florian
eb2ca8d10f * rewrote the system handling 2002-07-26 21:15:37 +00:00
Jonas Maebe
cb3eb438b6 * memory leak fixes from Sergey Korshunoff 2002-07-10 07:24:40 +00:00
peter
4285e99853 * internal linker
* reorganized aasm layer
2002-07-01 18:46:20 +00:00
peter
06ebac4e27 * readded missing revisions 2002-05-18 13:34:04 +00:00
carl
21b3a10f02 + defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup
2002-05-16 19:46:34 +00:00
peter
2992e1819c * removed old logs and updated copyright year 2002-05-14 19:34:38 +00:00
Jonas Maebe
3566880766 * fix for the ie9999 under Linux (patch from Peter) 2002-04-10 08:07:55 +00:00
carl
021a0670c2 + more documentation 2002-04-07 13:18:19 +00:00
peter
5e7a1e3729 * removed unused units
* use tlocation.size in cg.a_*loc*() routines
2002-04-04 19:05:54 +00:00
peter
5b242f7741 * tlocation,treference update
* LOC_CONSTANT added for better constant handling
  * secondadd splitted in multiple routines
  * location_force_reg added for loading a location to a register
    of a specified size
  * secondassignment parses now first the right and then the left node
    (this is compatible with Kylix). This saves a lot of push/pop especially
    with string operations
  * adapted some routines to use the new cg methods
2002-04-02 17:11:27 +00:00
Jonas Maebe
c5bd8e67ee * compiles again with -dmemdebug 2001-11-06 14:53:48 +00:00
michael
f959a590fe * Fixes win32 linking problems with import libraries
* LINKLIB Libraries are now looked for using C file extensions
* get_exepath fix
2001-09-18 11:30:47 +00:00
peter
45dab81414 * merged netbsd, fpu-overflow from fixes branch 2001-09-17 21:29:10 +00:00
peter
2d610e9be3 * asbsd merged 2001-08-30 20:57:09 +00:00
peter
ce43e79517 * detect duplicate labels 2001-08-30 19:43:50 +00:00
florian
9746f4c2d6 * some cg reorganisation
* some PPC updates
2001-08-26 13:35:06 +00:00
peter
634a68bf3e * merged netbsd start
* profile for win32
2001-08-07 18:47:12 +00:00
peter
b10e754536 * alignmentinfo record added
* -Oa argument supports more alignment settings that can be specified
    per type: PROC,LOOP,VARMIN,VARMAX,CONSTMIN,CONSTMAX,RECORDMIN
    RECORDMAX,LOCALMIN,LOCALMAX. It is possible to set the mimimum
    required alignment and the maximum usefull alignment. The final
    alignment will be choosen per variable size dependent on these
    settings
2001-07-01 20:16:15 +00:00
peter
e24474d9ac * -Ur switch (merged)
* masm fixes (merged)
  * quoted filenames for go32v2 and win32
2001-06-18 20:36:23 +00:00
peter
50ddd43c70 * smartlink with dll fixed (merged) 2001-06-13 18:31:57 +00:00
peter
7583ae7d01 * used target_asm.id instead of target_info.assem 2001-04-21 15:34:49 +00:00
peter
0c03535b5b * registration of targets and assemblers 2001-04-18 22:01:53 +00:00
peter
a7cf57524e * symtable change to classes
* range check generation and errors fixed, make cycle DEBUG=1 works
  * memory leaks fixed
2001-04-13 01:22:06 +00:00
peter
eb95f58e21 * don't create temporary smartlink dir for internalassembler 2001-03-13 18:42:39 +00:00
peter
1b1f938c43 * changed to class with common TAssembler also for internal assembler 2001-03-05 21:39:11 +00:00
michael
0a8415f483 * bug correction: pipes must be closed by pclose (not close);
There was too many not closed processes under Linux before patch.
  Test this by making a compiler under Linux with command
    OPT="-P" make
  and check a list of processes in another shell with
    ps -xa
2001-02-26 08:08:16 +00:00
peter
3ea409ab44 * tasm/masm fixes merged 2001-02-20 21:36:39 +00:00
peter
38305e0a1a * fixed uninited var 2001-02-09 23:06:17 +00:00
peter
eda26e9190 * support linux unit for ver1_0 compilers 2001-02-05 20:46:59 +00:00
marco
ad6ba5dd70 * Renamefest. Compiler part. Not that hard. 2001-01-21 20:32:45 +00:00
peter
5ea6603165 * fixed searching for utils 2001-01-12 19:19:44 +00:00
peter
32b9cdb7cf + new tlinkedlist class (merge of old tstringqueue,tcontainer and
tlinkedlist objects)
2000-12-25 00:07:25 +00:00
marco
b65958a61e * Renamefest 2000-11-13 15:26:12 +00:00
peter
38951f5ce1 * lot of compile updates for cg11 2000-10-01 19:48:23 +00:00
peter
a71e44ac49 * use defines.inc 2000-09-24 15:06:10 +00:00
peter
4c94659743 * moved some util functions from globals,cobjects to cutils
* splitted files into finput,fmodule
2000-08-27 16: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
peter
120d2f0130 * added ifdef fpc around findclose 2000-06-01 19:11:19 +00:00
peter
65d78b71d2 * clean .o and .s from smartlinkpath when starting the writer 2000-06-01 13:02:45 +00:00
pierre
d9fc5de9ac + accept nasmwin32 output 2000-04-04 15:05:03 +00:00
peter
2ba0ebe607 * removed warnings/notes 2000-02-24 18:41:38 +00:00
peter
4a4a24b6e8 * log truncated 2000-02-09 13:22:42 +00:00
peter
6607475609 * fixed placing of .sl directories
* use -b again for base-file selection
  * fixed group writing for linux with smartlinking
2000-01-11 09:52:06 +00:00
peter
e525797c51 * updated copyright to 2000 2000-01-07 01:14:18 +00:00
peter
e169c592f8 * searchpaths changed to stringqueue object 1999-11-12 11:03:49 +00:00
peter
df694c76e8 * filename fixes for win32 imports for units with multiple needed dll's 1999-11-08 10:37:12 +00:00
peter
0887060ff2 * truncated log to 20 revs 1999-11-06 14:34:16 +00:00
peter
19443ae269 * import library fixes for win32
* alignment works again
1999-11-02 15:06:56 +00:00
pierre
910372616a * typo correction 1999-09-16 11:34:44 +00:00
daniel
1777e0c901 * Could not compile with TP, some arrays moved to heap
* NOAG386BIN default for TP
  * AG386* files were not compatible with TP, fixed.
1999-09-02 18:47:41 +00:00
florian
046acfb84b * made it compilable with Dlephi 4 again
+ fixed problem with large stack allocations on win32
1999-07-18 10:19:38 +00:00
peter
b867e4f6de * assembler smartlink message 1999-07-10 10:12:03 +00:00
peter
1e75d2d672 * better smartlinking support 1999-07-03 00:27:02 +00:00
peter
438c1e07b6 * merged 1999-06-28 16:02:29 +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
peter
a47afc3857 * removed oldppu code
* warning if objpas is loaded from uses
  * first things for new deref writing
1999-05-13 21:59:19 +00:00
peter
4841b4236c * updated messages 1999-05-05 22:21:47 +00:00
florian
78d13ec796 * changes to compile it with Delphi 4.0 1999-05-04 21:44:30 +00:00
peter
3f6fafc495 * don't include ag386bin for oldasm 1999-05-02 23:28:42 +00:00
peter
adda83dac6 * moved section names to systems
* fixed nasm,intel writer
1999-05-02 22:41:46 +00:00
peter
611da2d24e * merged nasm compiler
* old asm moved to oldasm/
1999-05-01 13:23:57 +00:00
peter
d0cb5a147a * fixed bugs 212,222,225,227,229,231,233 1999-03-24 23:16:42 +00:00
peter
461a11158e + .a writer 1999-03-18 20:30:44 +00:00
peter
f4c74e4a3d * synchronize also the objfile for ag386bin 1999-03-01 15:43:48 +00:00
peter
a17c03cca3 * assembler writers fixed for ag386bin 1999-02-26 00:48:13 +00:00
peter
e25d934e2f * small updates for ag386bin 1999-02-24 00:59:11 +00:00
peter
bf9b5e3a54 * updates for ag386bin 1999-02-22 02:14:59 +00:00
peter
23f7e0c601 * small fixes for the binary writer 1999-02-17 10:16:24 +00:00
peter
1ace0dc9b8 * moved some tables from ra386*.pas -> i386.pas
+ start of coff writer
  * renamed asmutils unit to rautils
1999-01-10 15:37:51 +00:00
peter
1b369bb4bb + globtype,tokens,version unit splitted from globals 1998-12-11 00:02:37 +00:00
pierre
3539ab25da * assemble failure increments status errorcount again !! 1998-11-06 09:46:46 +00:00
peter
aea3c488fb + fixpath() has an extra option to allow a ./ as path 1998-10-26 22:23:28 +00:00
florian
eaab0f1c1b + switch -FD added to specify the path for utilities 1998-10-16 13:37:14 +00:00
peter
8d1adfae43 * fixed asmsynchronize 1998-10-15 16:19:42 +00:00
pierre
d4854b6324 * all references to comp suppressed for m68k 1998-10-14 15:56:37 +00:00
pierre
c3b3abdb65 * undid some changes of Peter that made the compiler wrong
for m68k (I had to reinsert some ifdefs)
  * removed several memory leaks under m68k
  * removed the meory leaks for assembler readers
  * cross compiling shoud work again better
    ( crosscompiling sysamiga works
     but as68k still complain about some code !)
1998-10-13 16:49:59 +00:00
peter
1468993242 * new style for m68k/i386 infos and enums 1998-10-13 13:10:08 +00:00
pierre
ff45eacd79 + source_os is now set correctly for cross-processor compilers
(tos contains all target_infos and
     we use CPU86 and CPU68 conditionnals to
     get the source operating system
     this only works if you do not undefine
     the source target  !!)
  * several cg68k memory leaks fixed
  + started to change the code so that it should be possible to have
    a complete compiler (both for m68k and i386 !!)
1998-10-13 08:19:24 +00:00
peter
0fc61cdfc1 * -vu shows unit info, -vt shows tried/used files 1998-10-08 23:28:50 +00:00
carl
906801ddcb + MPW support 1998-10-07 04:27:37 +00:00
peter
a0c582dc12 * merged fixes 1998-09-16 16:41:38 +00:00
peter
295d53cb69 + smartlinking for win95 imports 1998-09-07 18:33:31 +00:00
pierre
5bde11ba3b * bug with datalabel corrected
+ assembler errors better commented
  * one nested record crash removed
1998-09-04 17:34:20 +00:00
peter
c316229a7f * reduce amount of asmfiles generated
* no stabs are written in writefilelineinfo when debuginfo is off
1998-08-26 10:06:34 +00:00
pierre
b61cd6cd0e + TEST_FUNCRET now default (old code removed)
works also for m68k (at least compiles)
1998-08-21 14:08:39 +00:00
peter
cc64a929aa * static/shared linking updates 1998-08-17 09:17:43 +00:00
peter
1b24a06769 * setting the outputfile using -o works now to create static libs 1998-08-14 21:56:30 +00:00
peter
efb8aa9904 * return after a failed call will now add it to ppas 1998-08-14 18:16:08 +00:00
peter
85c8a88cbe + localswitches, moduleswitches, globalswitches splitting 1998-08-10 14:49:33 +00:00
peter
c9715847f6 * updated messages file 1998-07-14 21:46:38 +00:00
daniel
aaf3d30f81 * First check if call to assembler is succesfull, then check it's exit code.
This is more logical than first checking the exit code. For some mysterious
reason this did not give problems on DOS & Linux. On OS/2 it did.
1998-07-08 14:58:34 +00:00
peter
f98459e1fb * smartlinking works for win32
* some defines to exclude some compiler parts
1998-06-08 22:59:41 +00:00
peter
f66f837fc8 * m68k compiles
+ .def file creation moved to gendef.pas so it could also be used
    for win32
1998-06-04 23:51:26 +00:00
peter
b3865ae063 + aktasmmode, aktoptprocessor, aktoutputformat
+ smartlink per module $SMARTLINK-/+ (like MMX) and moved to aktswitches
  + $LIBNAME to set the library name where the unit will be put in
  * splitted cgi386 a bit (codeseg to large for bp7)
  * nasm, tasm works again. nasm moved to ag386nsm.pas
1998-05-23 01:20:53 +00:00
peter
5e4c788be5 + $ifdef NEWPPU for the new ppuformat
+ $define GDB not longer required
  * removed all warnings and stripped some log comments
  * no findfirst/findnext anymore to remove smartlink *.o files
1998-05-11 13:07:53 +00:00
peter
7e06238905 * smartlinking for sets
+ consts labels are now concated/generated in hcodegen
  * moved some cpu code to cga and some none cpu depended code from cga
    to tree and hcodegen and cleanup of hcodegen
  * assembling .. output reduced for smartlinking ;)
1998-05-07 00:16:59 +00:00
peter
94b52a3d7f + smartlinking works (only case jumptable left todo)
* redesign of systems.pas to support assemblers and linkers
  + Unitname is now also in the PPU-file, increased version to 14
1998-05-04 17:54:24 +00:00