cuz
9174f65e54
Make much more usage of dynamic strings (StrBufs) instead of char* and
...
friends. Since names and other strings are now StrBufs in many places, code
for output had to be changed.
Added support for string literals to StrBuf.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3825 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-03-31 20:54:45 +00:00
cuz
c13f40a9f1
Emit warnings for symbols that were used suboptimal because of forward
...
definitions. For example a zero page symbol that is used as absolute because
it was undefined when encountered.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2006-04-09 10:56:23 +00:00
cuz
5227580f46
Ignore internal symbols when generating warnings about unused symbols
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3680 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-12-04 22:03:35 +00:00
cuz
0eba6f615f
Fixed a problem with .global: In some situations, exported symbols went
...
into the object files with an address size of ADDR_SIZE_DEFAULT, something
which cannot be handled by the linker.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2980 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-19 17:00:12 +00:00
cuz
6a3ea29429
Set the address size once assembly is terminated
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2750 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 20:56:31 +00:00
cuz
1b2c277f8b
Include exported symbols in debug info
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2747 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 19:54:38 +00:00
cuz
54a50d9354
Code cleanup
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2728 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-12 12:59:10 +00:00
cuz
eea9accba6
Make .sizeof work with code scopes. First support for segment ranges.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2718 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-06 14:16:27 +00:00
cuz
92a001d3af
Fixes for scoping and better .sizeof support
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2706 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-03 10:13:41 +00:00
cuz
14d0577ef0
More work on .sizeof, fixed problems with cheap locals
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2704 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-03 09:18:31 +00:00
cuz
cf7b4e227a
More .size/.sizeof support
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2699 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-30 18:41:32 +00:00
cuz
c5cc4e1536
Don't use SF_TRAMPOLINE, change symbol references instead.
...
In smart mode, use RTL instead of RTS if the enclosing .PROC is far.
More address size changes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2696 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-29 07:53:26 +00:00
cuz
8f9a21ae3f
Extend the object code format by adding a (currently empty) scope table.
...
Use the address size for import, export and debug symbols (object code
change).
More changes to support the --memory-model switch and address sizes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2691 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-28 22:12:14 +00:00
cuz
20608c81ce
Added structs and unions, more work on scopes and expressions
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2662 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 22:03:24 +00:00
cuz
ba68b5f87a
More work on expressions and address sizes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2658 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-13 00:21:31 +00:00
cuz
4555fdcad1
Rewrote expression evaluation. More smaller changes.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2638 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-11 13:57:30 +00:00
cuz
6f088806d7
Fixed exports for now
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-09 22:50:36 +00:00
cuz
87d3f32be1
More work on address sizes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2622 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 23:13:02 +00:00
cuz
44976a0461
Replace error/warning numbers by strings.
...
More work on address sizes and scoping.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2620 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-08 17:20:21 +00:00
cuz
7e74078801
Working on better 65816 support
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-07 19:28:37 +00:00
cuz
8400fb848a
Revised symbol scoping
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2614 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-06 11:22:31 +00:00
cuz
fbdbf4d07c
Work on named scopes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2592 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-31 20:21:48 +00:00
cuz
48c122e478
Move SymEntry stuff into its own module
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2563 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-22 21:24:37 +00:00
cuz
cb57a213eb
Move the segment handling stuff from objcode to a separate module
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2555 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-21 20:34:56 +00:00
cuz
c12c231f14
Add := assignment op, define some currently unused keywords
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2542 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-17 00:38:21 +00:00
cuz
76e67e2f97
Changed the object file and library format. There is now an additional
...
string table in the object file that (currently) holds all identifiers
from the import, export and debug info sections. The plan is to put all
strings into this table, so we have them in a central place and don't
waste memory. Apart from that, the indices are unique, so comparing strings
should be a lot easier than before (as soon as the programs take advantage
of this fact, which is currently not the case).
git-svn-id: svn://svn.cc65.org/cc65/trunk@2169 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-25 17:57:50 +00:00
cuz
86f78af374
Fixed a few comments
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2028 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-17 10:19:53 +00:00
cuz
7d350d3f61
Fixed a bug: .ENDPROC without .PROC would crash the assembler
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2027 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-17 10:14:43 +00:00
cuz
2be826ded6
Remove debugging printf's
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2009 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:51:28 +00:00
cuz
b06d37d809
Added new .FORCEIMPORT pseudo op
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2007 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:33:14 +00:00
cuz
4dd4e76a88
Added a scope argument to the SymIsDef and SymIsDef functions, so it is
...
possible to request information for a specific scope.
Add an optional scope argument to the .DEFINED builtin function.
Change the long branch macros to look for symbols in local scope.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1574 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 01:45:00 +00:00
cuz
08b095c604
Reversed the last change because it did not work
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1566 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 00:33:29 +00:00
cuz
4f9f06c20a
Fixed a bug
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1565 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 23:28:32 +00:00
cuz
29c217b4b2
Use a #define instead of numeric value
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1429 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-03 11:20:45 +00:00
cuz
a07e05beb8
Include name of errorneous symbol in error message
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1203 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-24 13:04:24 +00:00
cuz
91dac51780
Use __attribute ((unused)) instead of -Wno-unused-parameter
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@988 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-30 22:19:39 +00:00
cuz
c3cb057407
Check for sign problems in compares
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@932 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 11:51:08 +00:00
cuz
cd53882eed
Add the label/equate bit to the exports and debug symbols
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@876 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-08 21:08:20 +00:00
cuz
3ef00e7d2a
The .defined function (and .ifdef/.ifndef) flagged an imported symbol as
...
"defined". I'm not sure whichever is correct, but I changed it now and
will introduce an additional function .isimport if necessary.
git-svn-id: svn://svn.cc65.org/cc65/trunk@721 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-08 17:56:39 +00:00
cuz
b9970cb7da
Working on the condes feature
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-20 15:22:57 +00:00
cuz
0dce6a79b6
Removed underlines from struct names
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@431 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-02 22:11:48 +00:00
cuz
db656c5e38
Added missing params to Error function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@424 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-31 19:12:27 +00:00
cuz
72e32b332b
Working on initializers
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@411 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-30 20:48:11 +00:00
cuz
99c9f4fe4e
Renamed EXP_INITIALIZER
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@409 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-30 19:52:22 +00:00
cuz
c4778045f9
Add initializer bit in debug syms
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@407 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-30 19:33:04 +00:00
cuz
9977ddd973
Add initializer
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@406 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-30 19:30:26 +00:00
cuz
bb115c8ae2
Change the implementation of the file table. It may now grow to an arbitrary
...
size. It is also possible to search in the table by name, which will be
needed later to add line debug information.
git-svn-id: svn://svn.cc65.org/cc65/trunk@262 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-08-02 14:12:36 +00:00
cuz
097a01094e
Added a method to write variable sized unsigned values. Use this method for
...
all sorts of things in the object files. This does not only make the object
files smaller, but does also remove several limits (strings may be longer
than 255 bytes, several counters no longer have 8 or 16 bit limits).
git-svn-id: svn://svn.cc65.org/cc65/trunk@260 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-08-02 13:23:06 +00:00
cuz
5ee8618510
Use the CHECK macros from the common dir
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@251 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-08-01 15:17:43 +00:00
cuz
b01c0adf49
Include file path changes
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@243 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-07-30 21:27:37 +00:00