Quick Search:

View detailed chart Line History

line history graph

View Mode

Logical Physical

Show Arbitrary Diff

From to

Supports revisions and tags.

Watches and RSS

History

MAIN 1.263 1.1 BSD_44 1.1.1.1

latest revision download Branch MAIN

1.263 annotated / raw | Diffs: previous, other | Lines: 677 ( +2, -1 )

Created: 2014-08-22 15:13:29 +0200 (2 months 8 days ago) | Author: plunky | Changeset: MAIN:plunky:20140822131329

rework string handling, changing back to the method where strings are
internalized and held with non-ascii values escaped.

There is some revert of the unicode patch for this (which changed
the compiler to use a fully binary string internally), but I believe
all the utf8 functionality has been preserved.

This fixes PCC-466 by Volkmar Klatt (also noted by Rune, on pcc-list)

Branch point for: r-1-1-0

Tags: r-1-1-0$BP

1.262 annotated / raw | Diffs: previous, other | Lines: 676 ( +1, -2 )

Created: 2014-08-06 18:47:52 +0200 (2 months 24 days ago) | Author: ragge | Changeset: MAIN:ragge:20140806164752

Remove cstknode() and replace it with tempnode(), which does the same thing.

1.261 annotated / raw | Diffs: previous, other | Lines: 677 ( +1, -2 )

Created: 2014-06-07 09:04:09 +0200 (4 months 23 days ago) | Author: plunky | Changeset: MAIN:plunky:20140607070409

revert previous addition of 'leaf' attribute. this is not supported by
gcc-4.3.1 (which pcc claims to be compatible with)

add support for 'attributes' diagnostic (enabled by default), to
allow ignoring unsupported attributes

1.260 annotated / raw | Diffs: previous, other | Lines: 678 ( +2, -1 )

Created: 2014-06-06 22:40:28 +0200 (4 months 24 days ago) | Author: plunky | Changeset: MAIN:plunky:20140606204028

add missing GCC attribute "leaf", though it does nothing here

1.259 annotated / raw | Diffs: previous, other | Lines: 677 ( +2, -1 )

Created: 2014-06-06 18:21:41 +0200 (4 months 24 days ago) | Author: ragge | Changeset: MAIN:ragge:20140606162141

Only promote unary plus if needed, otherwise we may get unwanted side effects.
Fixes Jira#PCC-441 by Fred J. Tydeman.

1.258 annotated / raw | Diffs: previous, other | Lines: 676 ( +1, -2 )

Created: 2014-05-16 15:02:02 +0200 (5 months 14 days ago) | Author: ragge | Changeset: MAIN:ragge:20140516130202

Support for unicode indentifiers in pcc, C99 6.4.2.1.
Written by Eric Olson.

1.257 annotated / raw | Diffs: previous, other | Lines: 677 ( +2, -2 )

Created: 2014-05-03 11:47:51 +0200 (5 months 27 days ago) | Author: ragge | Changeset: MAIN:ragge:20140503094751

Accept --disable-gcc-compat.  Not heavily tested.
Fixes Jira#PCC-262 by Jonathan Gray.

1.256 annotated / raw | Diffs: previous, other | Lines: 677 ( +2, -1 )

Created: 2014-05-01 12:16:34 +0200 (5 months 29 days ago) | Author: ragge | Changeset: MAIN:ragge:20140501101634

Understand "regparm" attribute.

1.255 annotated / raw | Diffs: previous, other | Lines: 676 ( +1, -3 )

Created: 2014-03-31 22:02:34 +0200 (6 months ago) | Author: plunky | Changeset: MAIN:plunky:20140331200234

remove unused prototypes for tmpsprintf() and tmpvsprintf()

1.254 annotated / raw | Diffs: previous, other | Lines: 678 ( +2, -4 )

Created: 2012-10-22 11:03:22 +0200 (2 years ago) | Author: plunky | Changeset: MAIN:plunky:20121022090322

remove unused variable declarations: got_type, pragma_renamed & lastloc

* #pragma renamed was removed in ccom, should be in cxxcom also?

1.253 annotated / raw | Diffs: previous, other | Lines: 680 ( +3, -4 )

Created: 2012-10-20 22:15:43 +0200 (2 years ago) | Author: plunky | Changeset: MAIN:plunky:20121020201543

remove defunct variable declarations: fldshf, fldsz, instruct,
   strucoff, brkflag, ltyp, rtyp & roverlap

also, rstatus which is used in mkext but not the compiler

1.252 annotated / raw | Diffs: previous, other | Lines: 681 ( +2, -1 )

Created: 2012-09-15 18:06:22 +0200 (2 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20120915160622

Fix complex cast bug reported by Szabolcs Nagy on pcc-list.

1.251 annotated / raw | Diffs: previous, other | Lines: 680 ( +6, -1 )

Created: 2012-09-08 17:56:51 +0200 (2 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20120908155651

builtin_return/frame_address are mandatory for targets to implement
from now.

1.250 annotated / raw | Diffs: previous, other | Lines: 675 ( +2, -1 )

Created: 2012-09-08 12:39:57 +0200 (2 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20120908103957

Accept gcc attribute noclone and mode unwind_word.

1.249 annotated / raw | Diffs: previous, other | Lines: 674 ( +3, -1 )

Created: 2012-09-07 18:20:14 +0200 (2 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20120907162014

More TImode fixes.

1.248 annotated / raw | Diffs: previous, other | Lines: 672 ( +2, -1 )

Created: 2012-09-01 10:18:26 +0200 (2 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20120901081826

Cannot evaluate ?: until types are correct.
Fixes Jira#PCC-405 by Iain Hibbert.

1.247 annotated / raw | Diffs: previous, other | Lines: 671 ( +2, -2 )

Created: 2012-08-22 19:08:18 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120822170818

Gnu inline syntax do care about when an inline function is declared "extern".

1.246 annotated / raw | Diffs: previous, other | Lines: 671 ( +2, -2 )

Created: 2012-08-22 18:41:27 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120822164127

Add a bunch of more operators for TI mode.

1.245 annotated / raw | Diffs: previous, other | Lines: 671 ( +2, -1 )

Created: 2012-08-18 22:16:50 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120818201650

gnu99 universe needs among other alloca() to be a builtin.

1.244 annotated / raw | Diffs: previous, other | Lines: 670 ( +3, -1 )

Created: 2012-08-12 11:27:27 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120812092727

More TI mode support.  Now handles casts, minus and assign.

1.243 annotated / raw | Diffs: previous, other | Lines: 668 ( +3, -1 )

Created: 2012-08-11 15:29:20 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120811132920

First pass att adding TI mode (128 bit int) support.

1.242 annotated / raw | Diffs: previous, other | Lines: 666 ( +20, -3 )

Created: 2012-08-09 13:41:27 +0200 (2 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20120809114127

Change the builtin function handling extensively.
Put the builtins into the symbol table at startup.
Do replacement check before parsing arguments.
This should fix __builtin_nanf bugs reported on pcc-list.

1.241 annotated / raw | Diffs: previous, other | Lines: 649 ( +3, -1 )

Created: 2012-07-10 14:20:26 +0200 (2 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20120710122026

Deprecate #pragma rename, should not be used by anyone.
Understand (but complain) requests for local variables in specific registers.

1.240 annotated / raw | Diffs: previous, other | Lines: 647 ( +2, -1 )

Created: 2012-06-09 10:30:21 +0200 (2 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20120609083021

Understand (but ignore) warning attribute. Should be simple to support
it fully.  From Nicholas Joly on pcc-list.

1.239 annotated / raw | Diffs: previous, other | Lines: 646 ( +3, -3 )

Created: 2012-04-22 14:49:07 +0200 (2 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20120422124907

Complain correctly about both missing prototypes and strict prototypes, unless
they come from system headers in which case we ignore it.  This follows gcc
behavior.

1.238 annotated / raw | Diffs: previous, other | Lines: 646 ( +6, -1 )

Created: 2012-03-26 18:51:50 +0200 (2 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20120326165150

Let rmpconv() and optim() loop until nothing more to do.
Add ?: optimization for constants in optim().
Fixes Jira#PCC-387 by Nicolas Joly.

1.237 annotated / raw | Diffs: previous, other | Lines: 641 ( +3, -4 )

Created: 2012-03-22 19:51:40 +0100 (2 years 7 months ago) | Author: plunky | Changeset: MAIN:plunky:20120322185140


tidy up debugging options a bit:

- sort options in main()
- pass1 options are ?debug, declared in pass1.h
- pass2 options are ?2debug, declared in pass2.h
- variables defined in main.c

1.236 annotated / raw | Diffs: previous, other | Lines: 642 ( +2, -1 )

Created: 2012-03-12 10:11:22 +0100 (2 years 7 months ago) | Author: plunky | Changeset: MAIN:plunky:20120312091122

recognise (but ignore) the __returns_twice__ GCC attribute

1.235 annotated / raw | Diffs: previous, other | Lines: 641 ( +4, -2 )

Created: 2011-08-14 16:52:29 +0200 (3 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20110814145229

Expressions casted to void do not need to be passed to clocal() for checks,
so do a quick cast and be done with it.  Fixes Jira#PCC-351 by Nicolas Joly.

1.234 annotated / raw | Diffs: previous, other | Lines: 639 ( +2, -1 )

Created: 2011-08-09 18:39:56 +0200 (3 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20110809163956

Make labels use nodes in pass1 instead of just being in the interpass queue.
This will simplify handling of inline functions etc.

1.233 annotated / raw | Diffs: previous, other | Lines: 638 ( +2, -1 )

Created: 2011-08-03 21:25:32 +0200 (3 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20110803192532

On non-word-addressed targets we can remove almost all PCONV's by propagating
down the new types and still keepin gtree type correctness. This is true
for almost all targets, so keep it in a common routine.
This is a very invasive change that will affect everything, but it also
allows for the compiler to generate much more efficient code.

1.232 annotated / raw | Diffs: previous, other | Lines: 637 ( +2, -2 )

Created: 2011-07-14 10:57:43 +0200 (3 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20110714085743

Add x flag -xgcc that tells pcc to use gcc syntax for some things instead
of c99 style.  Currently only inline.

1.231 annotated / raw | Diffs: previous, other | Lines: 637 ( +2, -2 )

Created: 2011-07-06 22:15:38 +0200 (3 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20110706201538

Set BOOL type number below CHAR.  This simplifies a bunch of type promoting
and removes one source of errors.

1.230 annotated / raw | Diffs: previous, other | Lines: 637 ( +1, -2 )

Created: 2011-06-29 21:46:21 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110629194621

Simplify tymatch() significantly.  The rules for type conversions are
straight forward in the standard.

1.229 annotated / raw | Diffs: previous, other | Lines: 638 ( +2, -2 )

Created: 2011-06-23 15:41:25 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110623134125

Update sparc code to symbol changes.

1.228 annotated / raw | Diffs: previous, other | Lines: 638 ( +27, -2 )

Created: 2011-06-23 15:38:23 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110623133823

Change the handling of directives and label printout slightly, much of this
code is just copied between targets so keep it common with the possibility
to override with target-specific functions.

1.227 annotated / raw | Diffs: previous, other | Lines: 613 ( +4, -1 )

Created: 2011-06-05 11:23:04 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110605092304

Add common routines for bitfield ops.  For targets needing their own
just #define MYBFINIT. XXX currently no big-endian support.

1.226 annotated / raw | Diffs: previous, other | Lines: 610 ( +1, -3 )

Created: 2011-06-04 21:27:25 +0200 (3 years 4 months ago) | Author: plunky | Changeset: MAIN:plunky:20110604192725

enable STABS output via configure, in config.h. This is enabled on a
per-OS basis now (bsd, win32 and none did not have it), but could be
--with-stabs or something later

(and no more need include ccconfig.h from pass1.h)

1.225 annotated / raw | Diffs: previous, other | Lines: 612 ( +5, -2 )

Created: 2011-06-04 17:22:02 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110604152202

Most ninval() implementations are quite similar, so put the code to handle
these constant printouts in init.c.  Let target be able to do its own
things in ninval() by returning 1 if handled, 0 otherwise.
The asm directive (.byte etc...) has a default which can be overwritten
by target on a per-type basis.
XXX - still missing float printout stuff.  Needs more work.

1.224 annotated / raw | Diffs: previous, other | Lines: 609 ( +1, -2 )

Created: 2011-06-04 09:47:30 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110604074729

Remove cendarg(), not necessary anymore.

1.223 annotated / raw | Diffs: previous, other | Lines: 610 ( +1, -2 )

Created: 2011-06-04 09:41:12 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110604074111

Remove bccode, it's not necessary anymore.

1.222 annotated / raw | Diffs: previous, other | Lines: 611 ( +3, -1 )

Created: 2011-06-02 17:29:54 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110602152954

Provide some common code for byte-addressed targets, which is the usual case,
and let word-addressed targets define WORD_ADDRESSED.
This removes the need for offcon() and PMCONV/PVCONV in target code.

1.221 annotated / raw | Diffs: previous, other | Lines: 609 ( +2, -2 )

Created: 2011-06-01 19:39:03 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110601173903

Modify makety() and add concast() to do SCONV of constants in MI code.
Remove unused complex code.

1.220 annotated / raw | Diffs: previous, other | Lines: 609 ( +2, -2 )

Created: 2011-05-31 17:28:11 +0200 (3 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20110531152811

Add variable statinit that is set when static (compile-time) initialization
is done, so that the compiler knows that it cannot generate code now.

1.219 annotated / raw | Diffs: previous, other | Lines: 609 ( +2, -1 )

Created: 2011-05-30 19:31:30 +0200 (3 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20110530173130

Make nodes for initializers always be constant, even if doing PIC,
independent of andable() (since they must be constant).
Simplifies large parts of the target-dependent code.

1.218 annotated / raw | Diffs: previous, other | Lines: 608 ( +1, -2 )

Created: 2011-05-15 19:08:36 +0200 (3 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20110515170835

Remove fldal(), unused.

1.217 annotated / raw | Diffs: previous, other | Lines: 609 ( +2, -1 )

Created: 2011-04-17 10:15:16 +0200 (3 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20110417081516

Cannot convert floats f++ to ((f+=1)-1) since it will discard small numbers
of f. Fixes Jira#PCC-313 by Fred J. Tydeman.

1.216 annotated / raw | Diffs: previous, other | Lines: 608 ( +7, -10 )

Created: 2011-04-07 20:50:16 +0200 (3 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20110407185015

Rewrite the handling of type size/alignment to only need attributes
for size/align when something differs from default.  Hence; no need
for MKAP/MKSUE anymore.

1.215 annotated / raw | Diffs: previous, other | Lines: 611 ( +2, -2 )

Created: 2011-02-17 14:44:13 +0100 (3 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20110217134413

Do not use variable name "sin" that is a function.

Branch point for: r-1-0-0 r-1-0-1

Tags: r-1-0-0$BP r-1-0-0-RELEASE r-1-0-1$BP

1.214 annotated / raw | Diffs: previous, other | Lines: 611 ( +2, -1 )

Created: 2011-01-27 15:02:55 +0100 (3 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20110127140255

Arrays take int as index values. From Iain Hibbert.

1.213 annotated / raw | Diffs: previous, other | Lines: 610 ( +2, -1 )

Created: 2011-01-22 23:08:23 +0100 (3 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20110122220823

Change gcc warning implementation: call a separate function handling all
warnings.  Keep track of which warnings that should yield errors.
Add pragma support for GCC diagnostics.
Supposed to fix Jira#PCC-213 by Piotr Sikora.

1.212 annotated / raw | Diffs: previous, other | Lines: 609 ( +4, -2 )

Created: 2011-01-21 22:46:12 +0100 (3 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20110121214612

Slightly rewrite the pragma handling to not abuse too much.
Also add support for "weak" pragmas, as in SystemV and GCC.

1.211 annotated / raw | Diffs: previous, other | Lines: 607 ( +2, -1 )

Created: 2010-11-17 20:48:26 +0100 (3 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20101117194826

Add attribute tls_model.

1.210 annotated / raw | Diffs: previous, other | Lines: 606 ( +3, -3 )

Created: 2010-11-09 22:10:31 +0100 (3 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20101109211031

Allow bitfields larger than 63 bits, since some code tend to use b:64;
and so for fields.

1.209 annotated / raw | Diffs: previous, other | Lines: 606 ( +2, -2 )

Created: 2010-09-04 21:40:53 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20100904194053

Understand gcc compat "label : attribute(())" syntax.

1.208 annotated / raw | Diffs: previous, other | Lines: 606 ( +4, -1 )

Created: 2010-09-04 13:58:47 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20100904115847

Add some comments about internals.

1.207 annotated / raw | Diffs: previous, other | Lines: 603 ( +2, -1 )

Created: 2010-08-29 15:58:50 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20100829135850

Add TYMERGE node type. Fix bug in warning about pointer signs.

1.206 annotated / raw | Diffs: previous, other | Lines: 602 ( +3, -3 )

Created: 2010-08-12 08:39:22 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20100812063922

Remove the FORTRAN/UFORTRAN storage class handling.  We'll implement
it with attributes or something if needed.

1.205 annotated / raw | Diffs: previous, other | Lines: 602 ( +1, -5 )

Created: 2010-08-11 16:39:48 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20100811143948

Fix conflicts.

1.204 annotated / raw | Diffs: previous, other | Lines: 606 ( +70, -59 )

Created: 2010-08-11 16:08:44 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20100811140844

Large change:  Modify the internal code to use the concepts of "attributes"
for nodes and symbol tables instead of keeping everything in the structs
used everywhere.  This will make modifications and additions of new features
simpler in the future.
That this will affect all targets more or less.

1.203 annotated / raw | Diffs: previous, other | Lines: 595 ( +3, -3 )

Created: 2010-07-20 16:41:01 +0200 (4 years 3 months ago) | Author: mickey | Changeset: MAIN:mickey:20100720144101

also add/move yylex/yyerror prots into the proper header; ragge@ ok

1.202 annotated / raw | Diffs: previous, other | Lines: 595 ( +28, -4 )

Created: 2010-07-03 17:51:07 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100703155107

Remove protos.h and spread out the prototypes where they belong.
Also rename and change the attr struct for more common use.

1.201 annotated / raw | Diffs: previous, other | Lines: 571 ( +2, -1 )

Created: 2010-06-19 09:37:22 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100619073722

Understand gcc attribute always_inline.
Fixes part of Jira#PCC-158 by Detlef Riekenberg.

1.200 annotated / raw | Diffs: previous, other | Lines: 570 ( +2, -1 )

Created: 2010-06-16 21:41:40 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100616194140

Add function valcast() that cut down the size of a constant calculation
during compile-time to the type size.  This function will in the future
cut down the need for ICON casts in clocal().
Fixes Jira#PCC-119 by Jörg Schilling.

1.199 annotated / raw | Diffs: previous, other | Lines: 569 ( +2, -1 )

Created: 2010-06-15 21:39:43 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100615193943

Parse attribute alloc_size().  Fixes Jira#PCC-156 by Detlef Riekenberg.

1.198 annotated / raw | Diffs: previous, other | Lines: 568 ( +2, -1 )

Created: 2010-06-09 10:09:10 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100609080910

Add parsing support for weakref.  While here, cleanup a little in the
table for attribute matching.

1.197 annotated / raw | Diffs: previous, other | Lines: 567 ( +2, -1 )

Created: 2010-06-09 07:57:08 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100609055708

Parse attribute "alias".

1.196 annotated / raw | Diffs: previous, other | Lines: 566 ( +3, -1 )

Created: 2010-06-06 21:29:14 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100606192914

Add gcc attributes no_instrument_function and noinline, currently as no-op.
Fixes Jira#PCC-146 and Jira#PCC-147 by Iain Hibbert.

1.195 annotated / raw | Diffs: previous, other | Lines: 564 ( +12, -1 )

Created: 2010-06-02 12:39:51 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100602103951

Rewrite __builtin_offsetof() to handle non-constant array offset values.
This actually made the offsetof code much simpler.
Requested by Iain Hibbert on pcc-list.

1.194 annotated / raw | Diffs: previous, other | Lines: 553 ( +2, -1 )

Created: 2010-05-15 17:58:33 +0200 (4 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20100515155833

Ensure CM towers are built to the left, fixes parsing bug pointed put
by Jonathan Gray. Also add "used" attribute.

1.193 annotated / raw | Diffs: previous, other | Lines: 552 ( +2, -1 )

Created: 2010-05-05 14:26:58 +0200 (4 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20100505122658

Add and handle gcc attribute __warn_unused_result__.  Requested by Iain
Hibbert but with a different implementation.

1.192 annotated / raw | Diffs: previous, other | Lines: 551 ( +3, -1 )

Created: 2010-04-28 16:53:54 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100428145354

Add support for stdcall and cdecl attributes.  Patch from iain Hibbert.

1.191 annotated / raw | Diffs: previous, other | Lines: 549 ( +3, -1 )

Created: 2010-04-18 15:25:18 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100418132518

Add huge/inf/nan builtins as requested by Iain Hibbert.
Also add a generic builtin function, based on a slightly modified version
of a patch by Iain Hibbert.

1.190 annotated / raw | Diffs: previous, other | Lines: 547 ( +2, -1 )

Created: 2010-04-11 17:01:04 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100411150104

Break out buintins to their own file.  Common argument count check
for builtins. Should have argument cast checks here also.

1.189 annotated / raw | Diffs: previous, other | Lines: 546 ( +2, -1 )

Created: 2010-04-11 11:58:47 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100411095847

Add attribute support for visibility per patch from Iain Hibbert.

1.188 annotated / raw | Diffs: previous, other | Lines: 545 ( +3, -1 )

Created: 2010-04-10 11:18:02 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100410091802

Add con/destructor as attributes per patch from Iain Hibbert.
Different target implementations though.

1.187 annotated / raw | Diffs: previous, other | Lines: 543 ( +3, -1 )

Created: 2010-03-31 12:26:09 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100331102609

Add cast() function that is an easier-to-use wrapper around buildtree().

1.186 annotated / raw | Diffs: previous, other | Lines: 541 ( +2, -1 )

Created: 2010-03-28 00:46:11 +0100 (4 years 7 months ago) | Author: mickey | Changeset: MAIN:mickey:20100327234611

kill some commons; ragge@ ok

1.185 annotated / raw | Diffs: previous, other | Lines: 540 ( +3, -1 )

Created: 2010-02-25 17:27:16 +0100 (4 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20100225162716

Understand function attributes pure and const.  Fixes Jira#PCC-110 and
Jira#PCC-111 by Altamiranus.

1.184 annotated / raw | Diffs: previous, other | Lines: 538 ( +4, -1 )

Created: 2010-01-05 16:23:51 +0100 (4 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20100105152351

Add support for attribute mode and some mode types. Should solve Jira#PCC-101
by Detlef Riekenberg.

1.183 annotated / raw | Diffs: previous, other | Lines: 535 ( +2, -1 )

Created: 2009-12-31 14:05:49 +0100 (4 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20091231130549

Add gcc attribute nothrow as patch in Jira#PCC-102 by Detlef Riekenberg.

1.182 annotated / raw | Diffs: previous, other | Lines: 534 ( +2, -1 )

Created: 2009-12-20 16:34:07 +0100 (4 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20091220153407

Understand malloc attribute and ignore it, we do not do aliasing yet.

1.181 annotated / raw | Diffs: previous, other | Lines: 533 ( +3, -2 )

Created: 2009-10-30 15:19:42 +0100 (4 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20091030141942

Add __builtin_offset(), which is becoming more and more common.
Suggedted by Jonathan Gray.

1.180 annotated / raw | Diffs: previous, other | Lines: 532 ( +2, -1 )

Created: 2009-07-11 17:52:29 +0200 (5 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20090711155229

Understand __attribute((__gnu_inline__)) for inline functions and just
revert the usageof extern.

1.179 annotated / raw | Diffs: previous, other | Lines: 531 ( +2, -2 )

Created: 2009-06-11 18:56:47 +0200 (5 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20090611165647

Pay some attention to the bitfield routines and allow bitfields of types
larger than int.

1.178 annotated / raw | Diffs: previous, other | Lines: 531 ( +14, -8 )

Created: 2009-05-19 21:25:55 +0200 (5 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20090519192555

More on complex and imaginary.  Everything should work now modulo minor bugs.

1.177 annotated / raw | Diffs: previous, other | Lines: 525 ( +5, -1 )

Created: 2009-05-16 14:11:14 +0200 (5 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20090516121114

Add support for +, - and * of complex numbers.  Still work in progress.

1.176 annotated / raw | Diffs: previous, other | Lines: 521 ( +2, -1 )

Created: 2009-05-13 21:13:51 +0200 (5 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20090513191351

Parse the attribute format_arg but no checks yet.

1.175 annotated / raw | Diffs: previous, other | Lines: 520 ( +19, -1 )

Created: 2009-05-08 00:46:28 +0200 (5 years 5 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20090507224628

Add compile-time evaluation of float logic.  Fixes PCC-45.

1.174 annotated / raw | Diffs: previous, other | Lines: 502 ( +2, -1 )

Created: 2009-02-09 18:21:24 +0100 (5 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20090209172123

Ahandle #pragma pack(4) correctly.  Makes OSX happier.

1.173 annotated / raw | Diffs: previous, other | Lines: 501 ( +9, -2 )

Created: 2009-01-27 18:12:03 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090127171203

Add some more complex support:
- understand 8.1fi as a complex float.
- handle casts of complex.
- handle simple initializations.

1.172 annotated / raw | Diffs: previous, other | Lines: 494 ( +2, -1 )

Created: 2009-01-24 16:51:07 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090124155107

Add support for weak attribute.

1.171 annotated / raw | Diffs: previous, other | Lines: 493 ( +29, -13 )

Created: 2009-01-24 14:35:03 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090124133503

Simplify some of the declaration yacc code.
Add support for parsing a bunch of the gcc attributes:
        aligned (partly supported)
        packed (supported)
        section (dupported)
        unused (parsed)
        deprecated (parsed)
        noreturn (parsed)
        format (parsed)
        bounded (parsed)
        nonnull (parsed)
        sentinel (parsed)

1.170 annotated / raw | Diffs: previous, other | Lines: 477 ( +7, -2 )

Created: 2009-01-14 22:10:01 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090114211001

Lots of fixes regarding how attributes are parsed and follows objects.

1.169 annotated / raw | Diffs: previous, other | Lines: 472 ( +7, -10 )

Created: 2009-01-10 15:50:16 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090110145016

Better handling of type attributes, but not yet perfect.
Also fix of forward declaration of enum bug, reported by Jonathan Gray.

1.168 annotated / raw | Diffs: previous, other | Lines: 475 ( +33, -1 )

Created: 2009-01-07 21:52:02 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090107205202

Change the way types are parsed to a more suitable way.
Prepare for handling of strange attribute syntax in type definitions.

1.167 annotated / raw | Diffs: previous, other | Lines: 443 ( +2, -1 )

Created: 2009-01-07 16:35:17 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20090107153517

Repair dynamic compound literals broken at introduction of eve().
Problem reported by Jonathan Gray.

1.166 annotated / raw | Diffs: previous, other | Lines: 442 ( +1, -2 )

Created: 2008-12-14 22:15:24 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081214211524

Remove ILABEL, not needed anymore.

1.165 annotated / raw | Diffs: previous, other | Lines: 443 ( +2, -1 )

Created: 2008-12-14 18:19:50 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081214171950

Add support for variable and function attributes and put in support
to understand "section" for variables.
XXX - parts of the symtab handling will be rewritten to support
attributes fully.
While here, quiet the shift/reduce conflict that were due to NAME.

1.164 annotated / raw | Diffs: previous, other | Lines: 442 ( +7, -18 )

Created: 2008-12-12 18:31:01 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081212173101

Put symtab header into struct symtab; it's not used itself anymore.

1.163 annotated / raw | Diffs: previous, other | Lines: 453 ( +2, -2 )

Created: 2008-12-11 08:17:47 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081211071747

Allow attributes to be added before struct declarations in addition to
after.  Fix one more bug in alignment handling.

1.162 annotated / raw | Diffs: previous, other | Lines: 453 ( +2, -1 )

Created: 2008-12-10 17:54:31 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081210165431

Implement gcc-compatible type attributes aligned and packed.

1.161 annotated / raw | Diffs: previous, other | Lines: 452 ( +2, -1 )

Created: 2008-12-08 22:39:50 +0100 (5 years 10 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20081208213950

Add stabs_efile() to put an end-of-text stab entry.  Fixes bus errors by
ld on OS X 10.5.

1.160 annotated / raw | Diffs: previous, other | Lines: 451 ( +5, -2 )

Created: 2008-12-08 22:10:45 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081208211045

Build up full expression trees before evaluating them. This is a quite
invasive change, but it will help to solve a number of issues.

1.159 annotated / raw | Diffs: previous, other | Lines: 448 ( +5, -2 )

Created: 2008-12-08 08:20:54 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081208072054

Add yacc code for attributes. Give pragma variables used as type specifiers
to dclstruct() in an attribute struct instead.  Work in progress.

1.158 annotated / raw | Diffs: previous, other | Lines: 445 ( +2, -1 )

Created: 2008-11-22 17:07:35 +0100 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081122160735

Add a function getlab2 that returns a suitable label number for pass2.

1.157 annotated / raw | Diffs: previous, other | Lines: 444 ( +2, -1 )

Created: 2008-11-20 22:19:09 +0100 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081120211909

Allow for incomplete definitions of enums.
This matches both gcc extensions and traditional behaviour.

1.156 annotated / raw | Diffs: previous, other | Lines: 443 ( +4, -3 )

Created: 2008-11-15 15:02:39 +0100 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081115140239

Add support for real inlining of functions per C99.
Not yet for variables that reference to the frame pointer though.

1.155 annotated / raw | Diffs: previous, other | Lines: 442 ( +7, -1 )

Created: 2008-11-01 09:29:38 +0100 (5 years 11 months ago) | Author: mickey | Changeset: MAIN:mickey:20081101082937

allow spilling >31 regs. apprently i386 was always safe as fpu regs
are fakes. needed by hppa (and i think also powerpc) or any other arch
that employs callee-save regs of >31 numbers (per defines ;).
most of the archs are simply using ipp_regs[0] as they do have
less than 31 regs or otherwise need no spilling.
ragge@ told me to commit this in september and it seems to work (:

1.154 annotated / raw | Diffs: previous, other | Lines: 436 ( +3, -1 )

Created: 2008-10-27 22:41:24 +0100 (6 years ago) | Author: ragge | Changeset: MAIN:ragge:20081027214124

Start writing on code to actually inline functions.

1.153 annotated / raw | Diffs: previous, other | Lines: 434 ( +33, -1 )

Created: 2008-09-04 11:41:33 +0200 (6 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20080904094133

Add softfloat routines and use macros to do float manipulation.
Currently only for DEC F- and D-float.

1.152 annotated / raw | Diffs: previous, other | Lines: 402 ( +2, -2 )

Created: 2008-08-14 00:56:33 +0200 (6 years 2 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080813225633

- shrink overall size of structures when packed
- support #pragma pack(x) and #pragma pack()
- add -fpack-struct=x to force default structure packing

1.151 annotated / raw | Diffs: previous, other | Lines: 402 ( +2, -1 )

Created: 2008-08-08 14:26:45 +0200 (6 years 2 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080808122645

Introduce pass1_lastchance() which permits target-specific actions to be
performed before starting the second pass.

1.150 annotated / raw | Diffs: previous, other | Lines: 401 ( +2, -2 )

Created: 2008-07-29 15:36:19 +0200 (6 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20080729133619

Some prototype cleanup.

1.149 annotated / raw | Diffs: previous, other | Lines: 401 ( +1, -5 )

Created: 2008-07-29 15:13:08 +0200 (6 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20080729131308

Use only nametree() instead of buildtree(NAME).  Also cleanup a bunch
of use of binop nodes.

1.148 annotated / raw | Diffs: previous, other | Lines: 405 ( +9, -9 )

Created: 2008-07-28 18:16:05 +0200 (6 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20080728161605

Add a bunch of error checks to avoid strange compiler errors as a result
of user errors.

1.147 annotated / raw | Diffs: previous, other | Lines: 405 ( +2, -1 )

Created: 2008-07-28 12:04:24 +0200 (6 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20080728100424

Make inline conform to c99 syntax.

1.146 annotated / raw | Diffs: previous, other | Lines: 404 ( +1, -2 )

Created: 2008-06-25 13:50:11 +0200 (6 years 4 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080625115011

Remove newstring() prototype; it's defined in manifest.h

1.145 annotated / raw | Diffs: previous, other | Lines: 405 ( +2, -1 )

Created: 2008-06-20 15:19:03 +0200 (6 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20080620131903

Break out buildtree() for NAME nodes to a separate function.
Do not expose builtins to clocal() before they are converted.

1.144 annotated / raw | Diffs: previous, other | Lines: 404 ( +3, -0 )

Created: 2008-06-20 07:54:26 +0200 (6 years 4 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080620055426

Stack smashing protection; compatible with NetBSD's libc.  Some platforms
may require libpcc.

Tested on NetBSD/i386 and OS X 10.4 on powerpc.

1.143 annotated / raw | Diffs: previous, other | Lines: 401 ( +31, -31 )

Created: 2008-06-19 10:32:28 +0200 (6 years 4 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080619083228

Consistently don't specify parameter names in prototypes.

1.142 annotated / raw | Diffs: previous, other | Lines: 401 ( +4, -2 )

Created: 2008-04-20 11:41:38 +0200 (6 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20080420094138

Add support for xasm output values in registers and numeric arguments.
Add a few CM-separated list common functions.
Add keyword _Complex + some code to unjderstand it. No complex support
besides that.

1.141 annotated / raw | Diffs: previous, other | Lines: 399 ( +5, -1 )

Created: 2008-04-15 11:52:09 +0200 (6 years 6 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080415095209

Test before header inclusion.

1.140 annotated / raw | Diffs: previous, other | Lines: 395 ( +1, -2 )

Created: 2008-03-20 01:25:20 +0100 (6 years 7 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080320002520

Remove unused prototype.

1.139 annotated / raw | Diffs: previous, other | Lines: 396 ( +3, -1 )

Created: 2008-02-10 11:03:58 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20080210100358

Allow just line number without filename as directive.
Let gcc compat be able to ask lex to just continue; or to put back
on the input stream.
Add gcc compat support for __thread.

1.138 annotated / raw | Diffs: previous, other | Lines: 394 ( +4, -1 )

Created: 2008-02-09 17:16:52 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20080209161652

Add a few flag entries intended for target-specific additions.

1.137 annotated / raw | Diffs: previous, other | Lines: 391 ( +2, -2 )

Created: 2008-02-06 19:23:00 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20080206182300

Fix bug causing offsetof() not being evaluated as it should in an extern
initializer.  Reported by KAMADA Ken'ichi.

1.136 annotated / raw | Diffs: previous, other | Lines: 391 ( +5, -2 )

Created: 2008-02-02 17:27:50 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20080202162750

Remove the use of a late allocated array for struct members, use a
linked list instead.  Signal undeclared structs by not setting its
alignment.  Remove global instruct, use a per-struct allocated struct
instead.

1.135 annotated / raw | Diffs: previous, other | Lines: 388 ( +2, -7 )

Created: 2008-01-29 22:50:30 +0100 (6 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20080129215030

Add better struct member code from Stefan Kempf.  While here, move away
the usage of defid() for tags.  Clean up some.

1.134 annotated / raw | Diffs: previous, other | Lines: 393 ( +2, -1 )

Created: 2008-01-07 14:27:27 +0100 (6 years 9 months ago) | Author: stefan | Changeset: MAIN:stefan:20080107132727

Use proper type for ix, code and match in lookup(). ok ragge@

1.133 annotated / raw | Diffs: previous, other | Lines: 392 ( +9, -15 )

Created: 2008-01-06 16:07:06 +0100 (6 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20080106150706

Large change to the initializer handling:
- Call defloc() with the symbol table entry of the symbol to be written
 out just before all initializers/location counters (also code!).
- Add new target functions instring/inwstring to print out strings
 instead of bycode().
- Remove late printout of strings, better to do it directly (which is
 possible to do nowadays :-)
- New function defzero() for allocating uninitialized data.
- Small change to inline code to use symtab for reference, not name.

1.132 annotated / raw | Diffs: previous, other | Lines: 398 ( +10, -13 )

Created: 2008-01-01 18:17:57 +0100 (6 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20080101171757

Two changes:
- Remove yacc checks for pragmas.
 Change home-grown strtok to use the real one.
 Call mypragma() for target-specific pragma handling.
- Change symbol table entry suse to soname, we're not lint anymore.
 Store output name in soname, useful for PIC, renaming etc.
 Remove FIXDEF() macro and replace it with a mandatory function fixdef().
 Remove gcc-compat code for renaming, use soname instead.

1.131 annotated / raw | Diffs: previous, other | Lines: 401 ( +2, -1 )

Created: 2007-12-26 14:22:25 +0100 (6 years 10 months ago) | Author: stefan | Changeset: MAIN:stefan:20071226132225

New function xbcon() that creates an ICON node with given value, symtab
and type. Use it where appropriate. ok ragge@

1.130 annotated / raw | Diffs: previous, other | Lines: 400 ( +2, -1 )

Created: 2007-12-20 17:44:48 +0100 (6 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20071220164448

Fix icons() to return an CONSZ instead of int.
This function should be used more often.

1.129 annotated / raw | Diffs: previous, other | Lines: 399 ( +3, -2 )

Created: 2007-11-22 15:36:37 +0100 (6 years 11 months ago) | Author: stefan | Changeset: MAIN:stefan:20071122143636

Put the genswitch() code that is found in most backends into
the MI part. The backend version is renamed to mygenswitch()
and can provide improved translations for switch statements.

Improved implementation of the switch constraints/semantics
described in the standard.

ok ragge@, otto@

1.128 annotated / raw | Diffs: previous, other | Lines: 398 ( +6, -3 )

Created: 2007-11-18 18:24:57 +0100 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20071118172457

Rewrite enum handling.
In C99 enums are treated like INTs so convert them early to int.
Move the enum tag handling out of defid(), tags are in their own namespace.
This will be done with struct/union tags also.

1.127 annotated / raw | Diffs: previous, other | Lines: 395 ( +2, -1 )

Created: 2007-11-12 19:56:25 +0100 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20071112185625

Add funcode() as a function that is called early in buildtree and
only once.

1.126 annotated / raw | Diffs: previous, other | Lines: 394 ( +2, -2 )

Created: 2007-10-06 17:19:22 +0200 (7 years ago) | Author: ragge | Changeset: MAIN:ragge:20071006151922

Add initial support for packed/aligned/rename pragmas.
Still missing:  Support for architectures with strict alignment.
TODO: Cleanup the rename stuff so that it's not depending on gcc compat.

1.125 annotated / raw | Diffs: previous, other | Lines: 394 ( +6, -1 )

Created: 2007-09-09 12:01:01 +0200 (7 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20070909100101

Fix problem with inline functions not being written out.
Be more liberal about forward declarations; write out declarations late.
Add support for compound literals.

1.124 annotated / raw | Diffs: previous, other | Lines: 389 ( +2, -2 )

Created: 2007-08-25 07:59:33 +0200 (7 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20070825055933

Be more careful when checking prototypes.  XXX - no multilevel checking yet.
Add some code to handle incomplete/forward references better.

1.123 annotated / raw | Diffs: previous, other | Lines: 389 ( +3, -2 )

Created: 2007-08-19 21:21:14 +0200 (7 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20070819192114

Move sdebug to pass1 only.

1.122 annotated / raw | Diffs: previous, other | Lines: 388 ( +6, -1 )

Created: 2007-08-11 11:05:06 +0200 (7 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20070811090505

Add support for _Bool type.  Will be slightly rewritten later.

1.121 annotated / raw | Diffs: previous, other | Lines: 383 ( +3, -2 )

Created: 2007-07-26 11:55:58 +0200 (7 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20070726095557

Fix last bits of initializations, should work fine now.

1.120 annotated / raw | Diffs: previous, other | Lines: 382 ( +4, -4 )

Created: 2007-07-22 14:50:56 +0200 (7 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20070722125056

Remove INIT nodetype.
Now most initializations work.

1.119 annotated / raw | Diffs: previous, other | Lines: 382 ( +3, -2 )

Created: 2007-07-10 18:13:54 +0200 (7 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20070710161354

Add code to convert floats to numeric arrays. XXX should be common.
Understand initialization of floats.
Now support declaration of string-initialized extern and static vars.

1.118 annotated / raw | Diffs: previous, other | Lines: 381 ( +2, -1 )

Created: 2007-07-06 19:02:27 +0200 (7 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20070706170227

Fix more on new init code.  Can init simple arrays now.

1.117 annotated / raw | Diffs: previous, other | Lines: 380 ( +8, -3 )

Created: 2007-03-10 09:14:44 +0100 (7 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20070310081444

More progress towards better initialization code.

1.116 annotated / raw | Diffs: previous, other | Lines: 375 ( +2, -2 )

Created: 2007-02-10 16:51:37 +0100 (7 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20070210155137

Character constants are handled as unsigned. XXX - correct?
Add __func_ as keyword. Not entirely correct.

1.115 annotated / raw | Diffs: previous, other | Lines: 375 ( +5, -1 )

Created: 2006-07-15 09:34:19 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060715073419

Finish move of INCR/DECR to pass1.

1.114 annotated / raw | Diffs: previous, other | Lines: 371 ( +2, -21 )

Created: 2006-06-15 21:05:23 +0200 (8 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20060615190523

Fix string handling so that correct length for sizeof is calculated.
XXX - should be done only once.

1.113 annotated / raw | Diffs: previous, other | Lines: 390 ( +3, -1 )

Created: 2006-02-18 16:20:45 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060218152045

Fix debugging printout.  XXX still more to do.

1.112 annotated / raw | Diffs: previous, other | Lines: 388 ( +3, -1 )

Created: 2006-02-18 09:19:42 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060218081942

Start fixing so that unoptimized code works.
Start fixing so that debug code can be emitted again.

1.111 annotated / raw | Diffs: previous, other | Lines: 386 ( +2, -2 )

Created: 2006-02-16 17:46:30 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060216164630

Rewrite struct argument handling.

1.110 annotated / raw | Diffs: previous, other | Lines: 386 ( +2, -1 )

Created: 2006-01-28 08:27:12 +0100 (8 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20060128072712

Bugfixes for encoding allocations.
Fix more table entries.
Still bugs in longlong allocator.

1.109 annotated / raw | Diffs: previous, other | Lines: 385 ( +1, -3 )

Created: 2005-12-04 12:49:00 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051204114900

Add support for spilling short-lived temps.
Fix relops checking.

1.108 annotated / raw | Diffs: previous, other | Lines: 387 ( +2, -2 )

Created: 2005-09-05 19:07:16 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050905170716

Temporary checkin: rewrite of liveness analysis.

1.107 annotated / raw | Diffs: previous, other | Lines: 387 ( +1, -2 )

Created: 2005-06-28 13:32:56 +0200 (9 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20050628113256

Add min/max label numbers to ipp struct. Cleanup slightly. Document.

1.106 annotated / raw | Diffs: previous, other | Lines: 388 ( +2, -1 )

Created: 2005-05-19 22:52:55 +0200 (9 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20050519205255

Smarter handling of inline-declared functions.
Fix shift optimization bug, needs more thinking.
Reset locctr after asm().

1.105 annotated / raw | Diffs: previous, other | Lines: 387 ( +3, -1 )

Created: 2005-04-16 13:20:41 +0200 (9 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20050416112041

Add calls calldec()/extdec() to deal with declarations in MD code.

1.104 annotated / raw | Diffs: previous, other | Lines: 385 ( +3, -3 )

Created: 2005-04-16 10:33:57 +0200 (9 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20050416083357

Use an array of structs instead of ints for type sizes.

1.103 annotated / raw | Diffs: previous, other | Lines: 385 ( +2, -2 )

Created: 2005-02-20 13:40:42 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050220124042

Bugfix tempnode handling, did always assign new temp nodes.
In pass2, zero tempnode list after epilog, not after each statement.

1.102 annotated / raw | Diffs: previous, other | Lines: 385 ( +13, -1 )

Created: 2005-01-29 17:05:27 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050129160527

Move prototype data structures to pass1.h.
Fix so that the table matching will be first best match, not last.

1.101 annotated / raw | Diffs: previous, other | Lines: 373 ( +2, -1 )

Created: 2005-01-14 16:46:53 +0100 (9 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20050114154652

Move bfcode() a bit. Fix oalloc() prototype.

1.100 annotated / raw | Diffs: previous, other | Lines: 372 ( +3, -1 )

Created: 2005-01-12 23:49:40 +0100 (9 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20050112224940

Add bjobcode(), called before anything begins.

1.99 annotated / raw | Diffs: previous, other | Lines: 370 ( +2, -6 )

Created: 2004-12-30 11:35:16 +0100 (9 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20041230103516

Stabs support, update docs, clean up static handling, support for
struct initialization.

1.98 annotated / raw | Diffs: previous, other | Lines: 374 ( +3, -23 )

Created: 2004-12-20 20:02:53 +0100 (9 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20041220190252

More fixes in label chaos.

1.97 annotated / raw | Diffs: previous, other | Lines: 394 ( +25, -1 )

Created: 2004-12-20 19:27:10 +0100 (9 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20041220182709

Lots of printf changes.  Start cleaning up location counters/label settings.

1.96 annotated / raw | Diffs: previous, other | Lines: 370 ( +2, -1 )

Created: 2004-12-13 17:09:27 +0100 (9 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20041213160926

Move long init routines to pass1.

1.95 annotated / raw | Diffs: previous, other | Lines: 369 ( +9, -4 )

Created: 2004-12-11 10:12:36 +0100 (9 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20041211091236

Add a bunch of functions to get stab support.

1.94 annotated / raw | Diffs: previous, other | Lines: 364 ( +8, -1 )

Created: 2004-12-02 22:33:50 +0100 (9 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20041202213350

Add basic stabs support.  Fix register assignment bug.
Begin with stabs support.

1.93 annotated / raw | Diffs: previous, other | Lines: 357 ( +2, -8 )

Created: 2004-10-04 18:49:28 +0200 (10 years ago) | Author: ragge | Changeset: MAIN:ragge:20041004164928

Make yacc work again.

1.92 annotated / raw | Diffs: previous, other | Lines: 363 ( +8, -1 )

Created: 2004-10-03 17:36:13 +0200 (10 years ago) | Author: ragge | Changeset: MAIN:ragge:20041003153612

Make cgram.y like bison. Fix some gcc3 warnings.

1.91 annotated / raw | Diffs: previous, other | Lines: 356 ( +7, -6 )

Created: 2004-10-02 16:29:44 +0200 (10 years ago) | Author: pj | Changeset: MAIN:pj:20041002142944

Move includes down

1.90 annotated / raw | Diffs: previous, other | Lines: 355 ( +3, -6 )

Created: 2004-10-02 09:59:32 +0200 (10 years ago) | Author: ragge | Changeset: MAIN:ragge:20041002075932

Add support for initializations on stack.

1.89 annotated / raw | Diffs: previous, other | Lines: 358 ( +6, -2 )

Created: 2004-09-19 11:40:48 +0200 (10 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20040919094048

Temp checkin - move out initializations to separate file.

1.88 annotated / raw | Diffs: previous, other | Lines: 354 ( +2, -1 )

Created: 2004-06-19 11:14:27 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040619091427

Fix casting.  Add many entries to the table.
Passes 730 of 1100 tests from gcc testsuite.
Struct return do not yet work correctly.

1.87 annotated / raw | Diffs: previous, other | Lines: 353 ( +2, -1 )

Created: 2004-05-29 09:53:27 +0200 (10 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20040529075327

Split out branches separately. code generation bugfix.

1.86 annotated / raw | Diffs: previous, other | Lines: 352 ( +2, -2 )

Created: 2004-05-16 13:08:03 +0200 (10 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20040516110801

Fix redefinition of names.

1.85 annotated / raw | Diffs: previous, other | Lines: 352 ( +11, -1 )

Created: 2004-05-16 11:34:34 +0200 (10 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20040516093433

Start with gcc_compatibility stuff.  Fix x86 address bug.

1.84 annotated / raw | Diffs: previous, other | Lines: 342 ( +2, -5 )

Created: 2004-05-09 20:26:58 +0200 (10 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20040509182657

Change TEMPs to OREGs instead (discard TEMPs).

1.83 annotated / raw | Diffs: previous, other | Lines: 345 ( +1, -3 )

Created: 2003-09-12 17:14:01 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030912151401

Remove remaining unary ops.

1.82 annotated / raw | Diffs: previous, other | Lines: 347 ( +5, -3 )

Created: 2003-09-12 16:53:29 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030912145329

Remove a bunch of UNARY and make U* instead.

1.81 annotated / raw | Diffs: previous, other | Lines: 345 ( +18, -1 )

Created: 2003-09-12 16:32:53 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030912143253

UNARY AND -> ADDROF.

1.80 annotated / raw | Diffs: previous, other | Lines: 328 ( +3, -1 )

Created: 2003-09-12 15:52:44 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030912135244

Move CAST and STRING to pass1.

1.79 annotated / raw | Diffs: previous, other | Lines: 326 ( +9, -7 )

Created: 2003-09-04 22:46:44 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030904204644

Temp checkin: Move towards dynamic arrays.

1.78 annotated / raw | Diffs: previous, other | Lines: 324 ( +2, -2 )

Created: 2003-09-04 09:47:14 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030904074714

Make a common function of tempnode(), that returns a temp block.

1.77 annotated / raw | Diffs: previous, other | Lines: 324 ( +2, -1 )

Created: 2003-08-22 16:53:42 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030822145342

Discard asgops from preops.

1.76 annotated / raw | Diffs: previous, other | Lines: 323 ( +2, -1 )

Created: 2003-08-06 22:08:48 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030806200848

A bunch of fixes to be closer to x86 support.

1.75 annotated / raw | Diffs: previous, other | Lines: 322 ( +2, -2 )

Created: 2003-08-02 18:23:34 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030802162334

Fix volatile propagation.

1.74 annotated / raw | Diffs: previous, other | Lines: 322 ( +2, -1 )

Created: 2003-08-01 15:12:04 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030801131203

Start implementing qualifiers.

1.73 annotated / raw | Diffs: previous, other | Lines: 321 ( +2, -5 )

Created: 2003-07-30 19:56:25 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030730175625

Discard xdefs.

1.72 annotated / raw | Diffs: previous, other | Lines: 324 ( +1, -2 )

Created: 2003-07-30 19:38:53 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030730173853

Cleanup include file hierarchy.

1.71 annotated / raw | Diffs: previous, other | Lines: 325 ( +114, -93 )

Created: 2003-07-30 13:48:33 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030730114833

Make pass1 clean.

1.70 annotated / raw | Diffs: previous, other | Lines: 304 ( +1, -0 )

Created: 2003-07-30 10:47:30 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030730084730

More logical ops fixes. Should be functioning now.

1.69 annotated / raw | Diffs: previous, other | Lines: 303 ( +15, -0 )

Created: 2003-07-29 11:25:15 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030729092515

Last moveable checkin: Almost finished with conditional removal.

1.68 annotated / raw | Diffs: previous, other | Lines: 288 ( +0, -14 )

Created: 2003-07-29 11:20:18 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030729092018

Remove lots of C specific definitions. Pass 2 almost C-clean.

1.67 annotated / raw | Diffs: previous, other | Lines: 302 ( +0, -1 )

Created: 2003-07-29 11:16:18 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030729091618

Ignore some void definitions. Don't send useless trees to pass2.

1.66 annotated / raw | Diffs: previous, other | Lines: 303 ( +0, -6 )

Created: 2003-07-07 22:39:44 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030707203944

Remov more forgotten code.

1.65 annotated / raw | Diffs: previous, other | Lines: 309 ( +1, -0 )

Created: 2003-07-07 16:23:40 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030707142340

Small prototype cleanup. Add Caldera copyright.

1.64 annotated / raw | Diffs: previous, other | Lines: 308 ( +0, -1 )

Created: 2003-07-07 12:45:48 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030707104548

fixargs -> strargs, float conversion is done in doacall now.

1.63 annotated / raw | Diffs: previous, other | Lines: 309 ( +1, -0 )

Created: 2003-07-06 20:12:46 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030706181246

Remove a bunch of DCON dependencies/usages.

1.62 annotated / raw | Diffs: previous, other | Lines: 308 ( +2, -0 )

Created: 2003-07-06 15:23:56 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030706132356

Fix so that lcomm works in a reasonable way.

1.61 annotated / raw | Diffs: previous, other | Lines: 306 ( +0, -1 )

Created: 2003-07-03 22:52:27 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030703205227

Remove the node array. Everything now is dynamic.

1.60 annotated / raw | Diffs: previous, other | Lines: 307 ( +0, -1 )

Created: 2003-07-03 15:53:52 +0200 (11 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20030703135351

Start walking towards not using a static node table.

1.59 annotated / raw | Diffs: previous, other | Lines: 308 ( +0, -12 )

Created: 2003-06-23 23:48:14 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030623214814

Big change: send everything from pass1 via one function.

1.58 annotated / raw | Diffs: previous, other | Lines: 320 ( +1, -4 )

Created: 2003-06-23 20:50:11 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030623185010

Implement basic framework to send everything through one subroutine.

1.57 annotated / raw | Diffs: previous, other | Lines: 323 ( +3, -0 )

Created: 2003-06-22 21:39:21 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030622193921

Inline the prolog/epilog stuff.

1.56 annotated / raw | Diffs: previous, other | Lines: 320 ( +1, -1 )

Created: 2003-06-21 20:47:59 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030621184759

Put the filenames in the string save area.

1.55 annotated / raw | Diffs: previous, other | Lines: 320 ( +1, -0 )

Created: 2003-06-21 20:28:13 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030621182813

New node type LABEL, for internal labels to pass thru the optimizer.

1.54 annotated / raw | Diffs: previous, other | Lines: 319 ( +1, -1 )

Created: 2003-06-21 20:03:17 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030621180317

Make TYPE a local node type, it's only used in pass1.

1.53 annotated / raw | Diffs: previous, other | Lines: 319 ( +1, -0 )

Created: 2003-06-21 18:00:54 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030621160053

Move branch() to MI code. Generate GOTOs.

1.52 annotated / raw | Diffs: previous, other | Lines: 318 ( +4, -0 )

Created: 2003-06-21 14:33:14 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030621123314

Some small fixes for multipass.

1.51 annotated / raw | Diffs: previous, other | Lines: 314 ( +0, -1 )

Created: 2003-06-20 12:32:57 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030620103239

Remove BSS, unused.

1.50 annotated / raw | Diffs: previous, other | Lines: 315 ( +6, -8 )

Created: 2003-06-19 23:16:24 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030619211624

Remove some unneccessary string copying.

1.49 annotated / raw | Diffs: previous, other | Lines: 317 ( +8, -3 )

Created: 2003-06-19 17:49:42 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030619154942

Make the switch table dynamic.

1.48 annotated / raw | Diffs: previous, other | Lines: 312 ( +2, -0 )

Created: 2003-06-19 16:09:18 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030619140917

Fix "new-style" prototype handling.

1.47 annotated / raw | Diffs: previous, other | Lines: 310 ( +3, -1 )

Created: 2003-06-17 13:51:42 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030617115142

Fix prototype checking.

1.46 annotated / raw | Diffs: previous, other | Lines: 308 ( +1, -1 )

Created: 2003-06-17 00:29:50 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030616222950

Giant night checkin.
- Never enter symtabs into the tree if blevel > 0, use a linked list.
- Remove the old prototype checking stuff.
- Almost finished with new style prototype checking.

1.45 annotated / raw | Diffs: previous, other | Lines: 308 ( +2, -2 )

Created: 2003-06-15 23:21:53 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030615212153

Do real prototype checks in defid().
XXX - not yet recursive checks.

1.44 annotated / raw | Diffs: previous, other | Lines: 308 ( +14, -6 )

Created: 2003-06-11 16:42:26 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030611144225

Change the dim pointers to an union, to be able to store function
prototype information in the same place.

1.43 annotated / raw | Diffs: previous, other | Lines: 300 ( +0, -4 )

Created: 2003-06-10 16:28:56 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610142855

Remove the static break/continue table.

1.42 annotated / raw | Diffs: previous, other | Lines: 304 ( +9, -11 )

Created: 2003-06-10 15:57:19 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610135719

Remove the dimension table (at last!).

1.41 annotated / raw | Diffs: previous, other | Lines: 306 ( +1, -0 )

Created: 2003-06-10 14:29:27 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610122927

First step toward removing the dimtab: do type parsing.

1.40 annotated / raw | Diffs: previous, other | Lines: 305 ( +5, -4 )

Created: 2003-06-10 14:08:13 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610120813

Use lookup() for strings also.

1.39 annotated / raw | Diffs: previous, other | Lines: 304 ( +0, -2 )

Created: 2003-06-10 12:20:37 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610102037

The paramstk removed and replaced by a linked list.

1.38 annotated / raw | Diffs: previous, other | Lines: 306 ( +1, -1 )

Created: 2003-06-10 10:08:04 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030610080804

Do not use param stack for parameters, use a linked list instead.

1.37 annotated / raw | Diffs: previous, other | Lines: 306 ( +28, -8 )

Created: 2003-06-09 17:55:57 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030609155556

Large change: Replace the dimension index by a pointer to a struct containing
the related info.

1.36 annotated / raw | Diffs: previous, other | Lines: 286 ( +1, -5 )

Created: 2003-06-08 20:26:51 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030608182650

Remove unused code.

1.35 annotated / raw | Diffs: previous, other | Lines: 290 ( +10, -5 )

Created: 2003-06-08 20:03:36 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030608180336

Now supports dynamic symbol table also.

1.34 annotated / raw | Diffs: previous, other | Lines: 285 ( +7, -2 )

Created: 2003-06-07 22:26:03 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030607202603

Turn over labels to use common symbol table.

1.33 annotated / raw | Diffs: previous, other | Lines: 280 ( +1, -1 )

Created: 2003-06-07 19:52:35 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030607175235

Remove SMOS, unused for now.

1.32 annotated / raw | Diffs: previous, other | Lines: 280 ( +1, -0 )

Created: 2003-06-07 19:47:46 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030607174746

Use patricia tree for searching symbols. Currently only used for tags.

1.31 annotated / raw | Diffs: previous, other | Lines: 279 ( +3, -0 )

Created: 2003-06-06 16:49:39 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030606144939

Add a file for the symbol table management.
Change to use a patricia implementation for name string searches.
Add common routine "newstring()" that strdup:s onto the permanent stack.

1.30 annotated / raw | Diffs: previous, other | Lines: 276 ( +1, -4 )

Created: 2003-06-04 22:08:25 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030604200825

Remove a bunch of redundant code.

1.29 annotated / raw | Diffs: previous, other | Lines: 279 ( +32, -16 )

Created: 2003-06-04 21:36:06 +0200 (11 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20030604193605

Split the symbol table into four different.
This is not yet finished, some ptr->int conversions exists.

1.28 annotated / raw | Diffs: previous, other | Lines: 263 ( +1, -0 )

Created: 2003-05-31 12:34:47 +0200 (11 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20030531103446

Another step towards removing strange dependencies:
Change the node union to a struct with the elements in unions
instead of the poopsite. Keep it in node.h instead.

1.27 annotated / raw | Diffs: previous, other | Lines: 262 ( +10, -0 )

Created: 2003-05-30 23:26:12 +0200 (11 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20030530212612

First step to clean up the mix between C and the backend.

1.26 annotated / raw | Diffs: previous, other | Lines: 252 ( +1, -1 )

Created: 2003-05-29 17:17:43 +0200 (11 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20030529151743

Allow shadowing typedef names on block level by itself.
Still to fix the use of it by other than itself.

1.25 annotated / raw | Diffs: previous, other | Lines: 252 ( +2, -0 )

Created: 2003-05-28 14:00:58 +0200 (11 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20030528120058

Add routines for dynamic arrays.

1.24 annotated / raw | Diffs: previous, other | Lines: 250 ( +1, -1 )

Created: 2003-05-14 21:35:13 +0200 (11 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20030514193513

Fix so that casts of function pointers are handled wrt arguments.

1.23 annotated / raw | Diffs: previous, other | Lines: 250 ( +2, -3 )

Created: 2003-04-01 22:26:22 +0200 (11 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20030401202622

Temp checkin with more prototype fixes.

1.22 annotated / raw | Diffs: previous, other | Lines: 251 ( +2, -6 )

Created: 2003-03-29 17:57:44 +0100 (11 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20030329165744

Multiple fixes to understand typedefs in prototypes better.

1.21 annotated / raw | Diffs: previous, other | Lines: 255 ( +3, -2 )

Created: 2003-03-16 22:44:37 +0100 (11 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20030316214437

First part of prototype checking.

1.20 annotated / raw | Diffs: previous, other | Lines: 254 ( +5, -3 )

Created: 2003-03-11 22:26:20 +0100 (11 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20030311212620

Revert previous, must do it some other way.

1.19 annotated / raw | Diffs: previous, other | Lines: 252 ( +3, -5 )

Created: 2003-02-16 18:40:02 +0100 (11 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20030216174002

Fix basic function parameter casting.

1.18 annotated / raw | Diffs: previous, other | Lines: 254 ( +9, -2 )

Created: 2003-02-02 15:50:22 +0100 (11 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20030202145022

Add basic support for optimizing away unreferenced inline functions.

1.17 annotated / raw | Diffs: previous, other | Lines: 247 ( +5, -5 )

Created: 2003-01-26 23:35:57 +0100 (11 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20030126223556

Remove hflag, but still honor "hiding" warning.
Compare readonly strings so that not more than one of each kind is
written out.

1.16 annotated / raw | Diffs: previous, other | Lines: 247 ( +5, -2 )

Created: 2003-01-22 00:26:24 +0100 (11 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20030121232624

Move label handling into its own symbol table.

1.15 annotated / raw | Diffs: previous, other | Lines: 244 ( +4, -3 )

Created: 2003-01-11 12:12:05 +0100 (11 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20030111111205

Support strings written as "aaa" "bbb" for concatenation.

1.14 annotated / raw | Diffs: previous, other | Lines: 243 ( +0, -1 )

Created: 2003-01-10 23:02:56 +0100 (11 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20030110220256

Fix abstract_declarator3. Remove unused functions. Increase dimtab size
to 20000 entries. XXX - dimtab should be dynamic.

1.13 annotated / raw | Diffs: previous, other | Lines: 244 ( +4, -0 )

Created: 2002-12-05 21:03:07 +0100 (11 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20021205200307

Remove global curclass. Mark unused name entries as TNULL.

1.12 annotated / raw | Diffs: previous, other | Lines: 240 ( +1, -0 )

Created: 2002-11-23 17:06:46 +0100 (11 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20021123160646

Temp checkin: Rewriting of yacc code for ansi support. Now supports
external variable init.

1.11 annotated / raw | Diffs: previous, other | Lines: 239 ( +3, -0 )

Created: 2002-08-17 14:54:48 +0200 (12 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20020817125448

A bunch of cleanup. Add BSS save area, to use if hw needs it.

1.10 annotated / raw | Diffs: previous, other | Lines: 236 ( +2, -1 )

Created: 2002-05-20 14:30:43 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020520123043

Move closer to fully understand prototypes.

1.9 annotated / raw | Diffs: previous, other | Lines: 235 ( +0, -2 )

Created: 2002-05-11 15:00:09 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020511130009

Understand (and so far ignore) const and volatile.

1.8 annotated / raw | Diffs: previous, other | Lines: 237 ( +1, -1 )

Created: 2002-05-10 22:04:53 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020510200453

Add long long + signed.

1.7 annotated / raw | Diffs: previous, other | Lines: 237 ( +12, -1 )

Created: 2002-05-10 18:01:27 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020510160127

Prototypes now almost work.

1.6 annotated / raw | Diffs: previous, other | Lines: 226 ( +0, -1 )

Created: 2002-05-05 18:00:52 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020505160052

Add rudimentary ansi function header support.

1.5 annotated / raw | Diffs: previous, other | Lines: 227 ( +5, -1 )

Created: 2002-05-04 15:49:27 +0200 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020504134927

Rewrite the lexer using lex, should be much more readable code now.

1.4 annotated / raw | Diffs: previous, other | Lines: 223 ( +0, -4 )

Created: 2002-03-26 20:21:51 +0100 (12 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20020326192151

Remove FLEXNAMES, always long names.

1.3 annotated / raw | Diffs: previous, other | Lines: 227 ( +0, -6 )

Created: 2002-03-26 19:42:57 +0100 (12 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20020326184257

Remove the ONEPASS define, we are always only one pass.

1.2 annotated / raw | Diffs: previous, other | Lines: 233 ( +29, -29 )

Created: 2002-03-25 23:52:36 +0100 (12 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20020325225236

Make pcc compile, and generate vax code.

1.1 new annotated / raw | Lines: 233 ( +233, -0 )

Created: 2002-03-24 11:57:24 +0100 (12 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20020324105723

Initial revision

Branch point for: BSD_44

Tags: BSD_44$BP

latest revision download Branch BSD_44

1.1.1.1 annotated / raw | Diffs: previous, other | Lines: 233 ( +0, -0 )

Created: 2002-03-24 11:57:24 +0100 (12 years 7 months ago) | Author: ragge | Changeset: BSD_44:ragge:20020324105723

Ipmort of the pcc working tree.

Tags: first

FishEye: Open Source License registered to PCC.
Your maintenance has expired. You can renew your license at http://www.atlassian.com/fisheye/renew
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-10-31 00:53 +0100