tom_at_work
28381b1287
* new assembler symbol type AT_LABEL needed for PowerPc64 target
...
+ added automatic definition of FPC_REQUIRES_PROPER_ALIGNMENT define for PowerPC64 target
git-svn-id: trunk@1278 -
2005-10-03 22:13:45 +00:00
peter
89297d2c39
* move all stabs ($ifdef gdb) code to dbgstabs
...
git-svn-id: trunk@1255 -
2005-10-02 11:17:05 +00:00
peter
edf553a223
* string constants are now array of char until
...
they are converted to a specific string type
git-svn-id: trunk@1254 -
2005-10-02 11:08:58 +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
peter
26f25c89ee
* use myexit to restore block_type
...
git-svn-id: trunk@1062 -
2005-09-08 05:48:17 +00:00
peter
5c902e40d1
* fix array of pchar after last revision
...
git-svn-id: trunk@924 -
2005-08-22 21:37:59 +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
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
michael
7449f99d5f
+ Removed all compatibility defines from compiler
...
git-svn-id: trunk@335 -
2005-06-09 21:14:22 +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
florian
af18e7359f
+ allow to take the address of a resourcestring in typed constants
2005-02-02 19:42:19 +00:00
peter
bb7b812beb
* remove multiple typeconvs for procvar
2005-01-24 21:39:03 +00:00
peter
bb32ee0457
* fix interface vtbl optimization
...
* replace ugly pointer construct of ioffset()
2005-01-09 15:05:29 +00:00
florian
bccb02b0de
* typed dyn. array constants can be only nil pointer
2005-01-08 14:05:31 +00:00
peter
2b6456fe16
* procvar handling for tp procvar mode fixed
...
* proc to procvar moved from addrnode to typeconvnode
* inlininginfo is now allocated only for inline routines that
can be inlined, introduced a new flag po_has_inlining_info
2004-12-05 12:28:10 +00:00
peter
7c0b6e129e
* fixed wrong typecasts
2004-11-09 17:26:47 +00:00
peter
6458bd0ce1
* tvarsym splitted
2004-11-08 22:09:58 +00:00
peter
9b00c7832e
* support > 32bit accesses for x86_64
...
* rewrote array size checking to support 64bit
2004-11-01 23:30:11 +00:00
peter
f02ebed09e
* support @labelsym
2004-11-01 15:32:12 +00:00
mazen
581b52422c
- remove $IFDEF DELPHI and related code
...
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
peter
b3e3030e6f
* remove maxlen field from ansistring/widestrings
2004-07-12 17:58:19 +00:00
daniel
bbd7f75dbd
* Compile fix
2004-07-03 14:06:35 +00:00
florian
61cf2984c7
* fixed bootstrapping problems
2004-06-20 20:41:47 +00:00
florian
8a9758c5e2
* logs truncated
2004-06-20 08:55:28 +00:00
peter
0ac4983a9b
* remove obsolete cardinal() typecasts
2004-06-18 15:16:46 +00:00
florian
588e2c38bf
* dwarf branch merged
2004-06-16 20:07:06 +00:00
peter
c96ba04d84
* fixed qword(longint) that removed sign from the number
...
* removed code in the compiler that relied on wrong qword(longint)
code generation
2004-05-23 15:23:30 +00:00
daniel
b721e5872c
* Prepare compiler infrastructure for multiple ansistring types
2004-04-29 19:56:36 +00:00
peter
3379959c50
* block_type is bt_const when parsing typed consts
2004-04-11 10:44:23 +00:00
olle
a7f25327f6
* change AT_FUNCTION to AT_DATA where appropriate
2004-03-18 11:43:57 +00:00
florian
0b0c4a4062
* fixed handling of doubles in a native arm compiler
...
* fixed handling of typed double constants on arm
2004-03-17 22:27:41 +00:00
olle
4fecc1a56f
* big transformation of Tai_[const_]Symbol.Create[data]name*
2004-03-02 00:36:32 +00:00
peter
fa8ec60ee6
* support @@procvar in typed consts
2004-02-26 16:15:23 +00:00
daniel
46d241a666
* Take advantage of our new with statement optimization
2004-02-07 23:28:34 +00:00
Jonas Maebe
980efd582d
+ support for currency typed constants if currency=int64. Warning: does
...
not work properly for extreme values if bestreal <= double
2003-12-29 12:48:39 +00:00
peter
84b1451a34
* tai_const.create_32bit changed to cardinal
2003-12-08 22:34:24 +00:00
Jonas Maebe
9bc4fa13a6
* fixed reversed "got <type 1>, expected <type 1>" error message
2003-11-22 00:32:35 +00:00
florian
1af574ceca
* assembler readers OOPed
...
+ typed currency constants
+ typed 128 bit float constants if the CPU supports it
2003-11-12 16:05:39 +00:00
florian
2a178f0d93
* fixed parsing of typed widestring constants with length 1
2003-11-08 10:23:35 +00:00
peter
a28d911c98
* IncompatibleTypes() added that will include unit names when
...
the typenames are the same
2003-10-21 18:16:13 +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
peter
1a2eedd767
* self moved to hidden parameter
...
* removed hdisposen,hnewn,selfn
2003-05-09 17:47:02 +00:00
florian
91bbc7bea3
* error when address of an abstract method is taken
...
* fixed some x86-64 problems
* merged some more x86-64 and i386 code
2003-04-30 20:53:32 +00:00
florian
41da381f1a
* fixed a lot of PowerPC related stuff
2003-04-24 22:29:57 +00:00
olle
a069aadad0
* changed newasmsymbol to newasmsymboldata for data symbols
2003-04-06 21:11:23 +00:00
peter
4be7d9ddeb
* allow nil initialization of dynamic array
2003-03-17 21:42:32 +00:00
peter
dfcb814ca5
* fix uninited var
2003-01-02 20:45:08 +00:00
florian
75a0d4154d
* fixed support for type widechar consts
2002-12-26 12:34:54 +00:00
carl
7fdc498fbe
+ add some explicit typecasts to remove some warnings
2002-12-07 14:15:33 +00:00
carl
6a52e7a9e5
- removed the invalid if <> checking (Delphi is strange on this)
...
+ implemented abstract warning on instance creation of class with
abstract methods.
* some error message cleanups
2002-11-25 18:43:31 +00:00
peter
f3fc72095f
* splitted defbase in defutil,symutil,defcmp
...
* merged isconvertable and is_equal into compare_defs(_ext)
* made operator search faster by walking the list only once
2002-11-25 17:43:16 +00:00
carl
05d86bbef8
* memory optimization with tconstsym (1.5%)
2002-11-22 22:48:10 +00:00
carl
9a151c3d65
+ align ansi/wide string constants
2002-11-09 15:31:57 +00:00
carl
8fd9561a31
* start bugfix 1996
...
* 64-bit typed constant now work correctly and fully (bugfix 2001)
2002-09-06 19:58:31 +00:00
daniel
b0364566d1
* Make Tprocdef.defs protected
2002-09-03 16:26:26 +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
daniel
1130395e7e
* Readded old set code. To use it define 'oldset'. Activated by default
...
for ppc.
2002-07-23 12:34:29 +00:00
daniel
3a134c6e07
* Sets are now internally sets.
2002-07-22 11:48:04 +00:00
florian
59abf2555b
* types.pas renamed to defbase.pas because D6 contains a types
...
unit so this would conflicts if D6 programms are compiled
+ Willamette/SSE2 instructions to assembler added
2002-07-20 11:57:52 +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
peter
4dcd96747e
* moved entry and exitcode to ncgutil and cgobj
...
* foreach gets extra argument for passing local data to the
iterator function
* -CR checks also class typecasts at runtime by changing them
into as
* fixed compiler to cycle with the -CR option
* fixed stabs with elf writer, finally the global variables can
be watched
* removed a lot of routines from cga unit and replaced them by
calls to cgobj
* u32bit-s32bit updates for and,or,xor nodes. When one element is
u32bit then the other is typecasted also to u32bit without giving
a rangecheck warning/error.
* fixed pascal calling method with reversing also the high tree in
the parast, detected by tcalcst3 test
2002-05-12 16:53:04 +00:00
peter
67ede1276b
* add pinline unit that inserts compiler supported functions using
...
one or more statements
* moved finalize and setlength from ninl to pinline
2002-04-23 19:16:34 +00:00
carl
87aa88e9b7
+ generic FPC_CHECKPOINTER
...
+ first parameter offset in stack now portable
* rename some constants
+ move some cpu stuff to other units
- remove unused constents
* fix stacksize for some targets
* fix generic size problems which depend now on EXTEND_SIZE constant
2002-04-20 21:32:23 +00:00
carl
5befcda7e5
+ target_info.size_of_pointer -> pointer_Size
2002-04-15 18:57:22 +00:00
peter
5e7a1e3729
* removed unused units
...
* use tlocation.size in cg.a_*loc*() routines
2002-04-04 19:05:54 +00:00
peter
fd2ad837e2
* implicit result variable generation for assembler routines
...
* removed m_tp modeswitch, use m_tp7 or not(m_fpc) instead
2002-01-24 18:25:48 +00:00
peter
5cdb7cc52b
* removed getprocvar, use only getprocvardef
2002-01-06 21:47:32 +00:00
florian
b60666ae1f
+ parasym to tparaitem added
2001-12-06 17:57:33 +00:00
peter
d2e1952377
* procsym definition rewrite
2001-11-02 22:58:00 +00:00
Jonas Maebe
d117d71141
* typed constants that are "procedure of object" and which are assigned
...
nil require 8 bytes of "0" (not 4)
* fixed web bug #1655 (reject the code)
2001-10-29 14:59:48 +00:00
peter
7781fca6bd
* read only typed const support, switch $J-
2001-10-20 20:30:20 +00:00
peter
f7af97c2a5
* make all sets equal when reading an array of sets. Before it could
...
mix normal and small sets in the same array!
2001-10-20 17:24:26 +00:00
michael
387ad2c42e
* realname updated for some hints
...
* realname used for consts,labels
2001-09-19 11:06:03 +00:00
peter
45dab81414
* merged netbsd, fpu-overflow from fixes branch
2001-09-17 21:29:10 +00:00
peter
915b5cd7a9
* split constsym.value in valueord,valueordptr,valueptr. The valueordptr
...
is used for holding target platform pointer values. As those can be
bigger than the source platform.
2001-09-02 21:18:28 +00:00
florian
9746f4c2d6
* some cg reorganisation
...
* some PPC updates
2001-08-26 13:35:06 +00:00
peter
2e6d63bfdb
* support pwidechar in typed const
2001-08-01 21:46:41 +00:00
peter
121f1a09a0
* declare fpu in rtl for m68k linux
2001-07-30 21:39:26 +00:00
peter
c4b84ce276
* m68k updates from v10 merged
2001-07-30 20:59:27 +00:00
peter
ca8d604964
* various widestring updates, it works now mostly without charset
...
mapping supported
2001-07-08 21:00:14 +00:00
Jonas Maebe
77a99eecdf
* fixed inconsistent handling of procvars in FPC mode (sometimes @ was
...
required to assign the address of a procedure to a procvar, sometimes
not. Now it is always required) (merged)
2001-06-29 14:16:57 +00:00
peter
49481a0c63
* v10 merges
2001-06-27 21:37:36 +00:00
peter
e24474d9ac
* -Ur switch (merged)
...
* masm fixes (merged)
* quoted filenames for go32v2 and win32
2001-06-18 20:36:23 +00:00
Jonas Maebe
34ef6cd933
+ detect incomplete typed constant records
2001-05-06 17:15:00 +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
b193bf7df3
* remove unnecessary calls to firstpass
2001-04-04 22:43:50 +00:00
peter
4e2655cdc5
* resulttype rewrite
2001-04-02 21:20:29 +00:00
peter
d8abf76f6b
* getsym redesign, removed the globals srsym,srsymtable
2001-03-11 22:58:49 +00:00
Jonas Maebe
18d885b80e
* fixed web bug #1377 & const pointer arithmtic
2001-02-04 11:12:16 +00:00
peter
f005ab378d
* merged fix for bug #1365
2001-02-03 00:26:35 +00:00
peter
32b9cdb7cf
+ new tlinkedlist class (merge of old tstringqueue,tcontainer and
...
tlinkedlist objects)
2000-12-25 00:07:25 +00:00
peter
f6eaa4c02b
* allow subtypes for enums
2000-12-10 20:24:18 +00:00