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.288 1.268 1.1 r-1-0-0 1.268.2.1 BSD_44 1.1.1.1

latest revision download Branch MAIN

1.288 annotated / raw | Diffs: previous, other | Lines: 1664 ( +55, -67 )

Created: 2014-06-01 13:33:52 +0200 (3 months 17 days ago) | Author: ragge | Changeset: MAIN:ragge:20140601113352

cleanup freetemp().  Add functions storenode/storemod to get temporary
storage, default on stack but can be overridden by MD code.
Allow for targets to provide their own INTEMP code.  Remove BITOOR.

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

Created: 2014-05-03 11:57:57 +0200 (4 months 16 days ago) | Author: ragge | Changeset: MAIN:ragge:20140503095757

Allow pcc to be compiled without PCC_DEBUG being defined.
Solves Jira#PCC-8 by Gregory McGarry.

1.286 annotated / raw | Diffs: previous, other | Lines: 1674 ( +12, -3 )

Created: 2012-12-28 17:04:03 +0100 (20 months ago) | Author: ragge | Changeset: MAIN:ragge:20121228160403

Understand %= entry in extended assembler to generate label numbers.

1.285 annotated / raw | Diffs: previous, other | Lines: 1665 ( +2, -2 )

Created: 2012-12-13 17:03:41 +0100 (21 months ago) | Author: ragge | Changeset: MAIN:ragge:20121213160341

Fix bug causing wrong extended assembler to be created if a number constraint
were given referring to a general operand.

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

Created: 2012-10-22 11:18:52 +0200 (22 months ago) | Author: plunky | Changeset: MAIN:plunky:20121022091852

mark intentional fall through on case statements
appeases lint and makes code reading easier

1.283 annotated / raw | Diffs: previous, other | Lines: 1664 ( +16, -16 )

Created: 2012-09-26 21:56:12 +0200 (23 months ago) | Author: plunky | Changeset: MAIN:plunky:20120926195612

debug output using fprintf(stdout) can be printf() since it
is interspersed with that anyway

1.282 annotated / raw | Diffs: previous, other | Lines: 1664 ( +17, -20 )

Created: 2012-09-26 20:38:57 +0200 (23 months ago) | Author: plunky | Changeset: MAIN:plunky:20120926183857

prfil is only ever stdout

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

Created: 2012-09-05 19:20:57 +0200 (2 years ago) | Author: ragge | Changeset: MAIN:ragge:20120905172057

Deal with % xasm constraint (by ignoring it).

1.280 annotated / raw | Diffs: previous, other | Lines: 1663 ( +2, -2 )

Created: 2012-09-05 18:05:12 +0200 (2 years ago) | Author: ragge | Changeset: MAIN:ragge:20120905160512

Do deljumps() even id not ssa is given.

1.279 annotated / raw | Diffs: previous, other | Lines: 1663 ( +4, -4 )

Created: 2012-04-22 23:07:41 +0200 (2 years 4 months ago) | Author: plunky | Changeset: MAIN:plunky:20120422210740

tidy up some remaining K&R function definitions

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

Created: 2012-03-22 19:51:41 +0100 (2 years 5 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.277 annotated / raw | Diffs: previous, other | Lines: 1664 ( +4, -3 )

Created: 2011-12-24 11:59:04 +0100 (2 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20111224105904

If a table entry has special needs but no explicit result register, we must
obey to what the register allocator has given us instead of ignoring it.
Fixes Jira#PCC-384 by D C Gosnell.

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

Created: 2011-08-12 21:24:40 +0200 (3 years 1 month ago) | Author: plunky | Changeset: MAIN:plunky:20110812192440

remove obsolete '-l' option to ccom, and unused 'lflag' variable

1.275 annotated / raw | Diffs: previous, other | Lines: 1664 ( +2, -2 )

Created: 2011-08-12 21:20:24 +0200 (3 years 1 month ago) | Author: plunky | Changeset: MAIN:plunky:20110812192024

consistency in variable names for compiler settings

1.274 annotated / raw | Diffs: previous, other | Lines: 1664 ( +21, -19 )

Created: 2011-07-13 13:39:11 +0200 (3 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20110713113911

Handle the situation where the offset register for a spilled variable is
not the frame pointer.

1.273 annotated / raw | Diffs: previous, other | Lines: 1662 ( +13, -71 )

Created: 2011-05-29 15:19:06 +0200 (3 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20110529131906

Remove bitfield stuff.  Always align spilled variables on at least int.

1.272 annotated / raw | Diffs: previous, other | Lines: 1720 ( +3, -3 )

Created: 2011-05-10 22:20:48 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110510202048

A too narrow sanity check.  Fixes Jira#PCC-346 by Nicolas Joly, bug reports
on pcc-list by Steve Kargl etc...

1.271 annotated / raw | Diffs: previous, other | Lines: 1720 ( +46, -1 )

Created: 2011-05-04 20:02:32 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110504180232

Get back allo() and make NTEMP work again.

1.270 annotated / raw | Diffs: previous, other | Lines: 1675 ( +17, -5 )

Created: 2011-05-03 13:20:20 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110503112020

Ensure that a register move before an instruction is emitted is to a needed
register if present.  Fixes Jira#PCC-339 by Iain Hibbert.

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

Created: 2011-03-15 18:20:52 +0100 (3 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20110315172052

Ignore xasm modifier '%', which is only there for optimization.

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

Created: 2011-01-27 20:20:56 +0100 (3 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20110127192056

If a "g" xasm constraint is given and the argument is a constant, change it
to an "i" so that it doesn't get put into a register. Solves a problem
with sloppy programmers that do not specify types of constants.

Branch point for: r-1-0-0

Tags: r-1-0-0$BP

1.267 annotated / raw | Diffs: previous, other | Lines: 1657 ( +8, -4 )

Created: 2011-01-11 13:48:23 +0100 (3 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20110111124823

Allow for more than one letter in xasm constraints.

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

Created: 2010-12-04 20:17:17 +0100 (3 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20101204191717

The input and output registers may be of different types even if '0'
constraint is used in xasm. Fixes Jira#PCC-201 by andre f.

1.265 annotated / raw | Diffs: previous, other | Lines: 1651 ( +2, -2 )

Created: 2010-11-24 18:36:43 +0100 (3 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20101124173643

Fix bug where a named constant were erroneously optimized away in a
comparision statement.  Fixes Jira#PCC-190 by Nicolas Joly.

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

Created: 2010-11-05 16:52:52 +0100 (3 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20101105155252

Just ignore initial statements that are not recognized as reg-mem moves.

1.263 annotated / raw | Diffs: previous, other | Lines: 1648 ( +3, -3 )

Created: 2010-10-10 11:31:48 +0200 (3 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20101010093148

Only convert ADDROF if it is referencing a TEMP node.

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

Created: 2010-06-16 12:48:05 +0200 (4 years 3 months ago) | Author: mickey | Changeset: MAIN:mickey:20100616104805

fix an uninitialised var warning from gcc

1.261 annotated / raw | Diffs: previous, other | Lines: 1647 ( +11, -5 )

Created: 2010-06-12 10:28:13 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100612082813

Take care of bitfield type in ffld() when targets misses bitfield
instructions.  Fixes Jira#PCC-47 by Jordan Earls.

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

Created: 2010-05-21 18:10:03 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100521161003

Run deljumps again after the ssa pass to cleanup the code before doing
register allocation.

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

Created: 2010-05-01 13:43:16 +0200 (4 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20100501114316

Remove some #if 0'ed code that is phased out.

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

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

kill some commons; ragge@ ok

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

Created: 2009-12-20 15:33:08 +0100 (4 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20091220143308

STASG must be treaded as ASSIGN in sanity checks.

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

Created: 2009-11-14 17:04:16 +0100 (4 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20091114160416

Only try to shortcut the conditional code generation if the operands are
of types +-*/%&|^>><<, otherwise side effects may be lost.  Bug found
by Jonathan Gray.

1.255 annotated / raw | Diffs: previous, other | Lines: 1650 ( +2, -2 )

Created: 2009-09-05 12:26:54 +0200 (5 years ago) | Author: ragge | Changeset: MAIN:ragge:20090905102654

Must add moves before and after a +r xasm directive even if the node is
in a temporary; the temporary may need to be spilled.

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

Created: 2009-08-17 21:22:00 +0200 (5 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20090817192200

Allocate enough of off-by-one-allowed argument index array for xasm.

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

Created: 2009-08-16 17:54:37 +0200 (5 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20090816155437

gcc seems to allow reference to one argument past end of argument
list in extended assembler, so we have to do it also.

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

Created: 2009-08-15 09:03:43 +0200 (5 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20090815070343

Frint out shift and size for bitfields in debug traces.

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

Created: 2009-08-13 10:01:28 +0200 (5 years 1 month ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20090813080125

Add -Wtruncate option which detects truncation of types during assignment.
Let pcc compile with this option enabled.

Inspired by similar warning in the Microsoft compiler.

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

Created: 2009-03-14 23:21:18 +0100 (5 years 6 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20090314222118

Replace c++-style comments.

1.249 annotated / raw | Diffs: previous, other | Lines: 1638 ( +2, -2 )

Created: 2009-02-11 16:53:57 +0100 (5 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20090211155357

Do not check for label boundaries if left node of a GOTO is a NAME.
Fixes problem with assigned GOTOs in f77.

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

Created: 2008-12-03 08:08:40 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20081203070840

When searching for arguments, traverse forward until the first DEFLAB
is found instead of just assuming that a DEFLAB is following PROLOG.

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

Created: 2008-11-26 18:32:44 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20081126173244

Ignore XASM nodes when traversing for argument node numbers.
This hack will go away the day a function context is given to pass2.

1.246 annotated / raw | Diffs: previous, other | Lines: 1633 ( +15, -12 )

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

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

1.245 annotated / raw | Diffs: previous, other | Lines: 1630 ( +4, -8 )

Created: 2008-11-18 17:21:30 +0100 (5 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20081118162130

Cleanup the implementation of tempalloc().
Add support for setting marks and releasing marks on the temp heap,
to free memory early.
While here, remove clause 3 from my license.

1.244 annotated / raw | Diffs: previous, other | Lines: 1634 ( +146, -41 )

Created: 2008-11-16 22:17:41 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081116211741

Do all conversion if ADDROF and TEMPs in reader, instead of having
duplicate code in optim2.

1.243 annotated / raw | Diffs: previous, other | Lines: 1529 ( +13, -13 )

Created: 2008-11-16 14:30:16 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081116133016

Add an extra argument to walkf() so that we can avoid using static vars
in a bunch of places.

1.242 annotated / raw | Diffs: previous, other | Lines: 1529 ( +38, -37 )

Created: 2008-11-16 12:52:41 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081116115241

Move a bunch of static variables used all over pass2 to a struct p2env
instead.  This simplifies passing information between different parts
of the second pass.

1.241 annotated / raw | Diffs: previous, other | Lines: 1528 ( +65, -9 )

Created: 2008-11-15 10:34:43 +0100 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081115093443

Add checks at the entrance of pass2 for the existance of referenced
internal labels.

1.240 annotated / raw | Diffs: previous, other | Lines: 1472 ( +22, -6 )

Created: 2008-10-25 11:08:39 +0200 (5 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20081025090839

A few memory ops fixes:
- Handle them like ASSIGN nodes when it comes to moves.
- Give the correct node type to hopcode() instead of ASSIGN so that
 the correct op will be written.

1.239 annotated / raw | Diffs: previous, other | Lines: 1456 ( +12, -14 )

Created: 2008-10-05 17:55:31 +0200 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081005155531

Remove some unused defines.  Change return values for swmatch().
Store cookie used when matching in su field.

1.238 annotated / raw | Diffs: previous, other | Lines: 1458 ( +3, -3 )

Created: 2008-10-05 10:06:52 +0200 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081005080652

Initial support for Dead Code Elimination.  Not working yet.

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

Created: 2008-10-02 08:50:41 +0200 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20081002065041

Do not ignore ASSIGN nodes between the same register if FORCC exists in
the cookie.  XXX - should instead keep in the node what the result
should be.

1.236 annotated / raw | Diffs: previous, other | Lines: 1457 ( +39, -10 )

Created: 2008-09-27 09:34:35 +0200 (5 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20080927073435

Add code to find RMW memory ops.  This will be a benefit for CISC targets.
Change syntax of shumul() to take shape as an argument and return result.
A bunch of other potential bugs that should be adressed and checked.

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

Created: 2008-08-08 14:24:16 +0200 (6 years 1 month ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080808122416

Ensure macro argument names are unique.  Fixes compilation on OS X.

1.234 annotated / raw | Diffs: previous, other | Lines: 1428 ( +3, -13 )

Created: 2008-07-30 17:41:05 +0200 (6 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20080730154105

Allow xasm "g" constraints to be spilled if necessary.
Fixes bug reported by gmcgarry.

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

Created: 2008-07-30 11:47:14 +0200 (6 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20080730094714

Give the target the possibility to decide what to do with numerical xasm
references.  This is mostly used by i386.

1.232 annotated / raw | Diffs: previous, other | Lines: 1430 ( +70, -24 )

Created: 2008-06-30 10:21:37 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080630082137

Xasm fixes:
- Understand 'g' constraint.
- Handle 'm' better.
- Deal with struct as argument.

1.231 annotated / raw | Diffs: previous, other | Lines: 1384 ( +9, -3 )

Created: 2008-06-29 16:28:55 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080629142855

Add support for xasm constraint 'p'; by just converting it to r.
Use strchr() instead of homegrown version.

1.230 annotated / raw | Diffs: previous, other | Lines: 1378 ( +24, -10 )

Created: 2008-06-29 15:45:10 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080629134510

Duplicate strings before they are modified for xasm.
Add support for i constraint.  Not finished with shared constraints yet.

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

Created: 2008-06-27 14:09:07 +0200 (6 years 2 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080627120907

Don't pass assembler string as format string to printf().

1.228 annotated / raw | Diffs: previous, other | Lines: 1364 ( +63, -46 )

Created: 2008-06-25 21:33:21 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080625193321

Lots of additions to extended assembler, among them:
- support for operand in memory ("m")
- support to change printed type of argument.
- support for register constraints.

1.227 annotated / raw | Diffs: previous, other | Lines: 1347 ( +45, -15 )

Created: 2008-06-24 21:35:56 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080624193556

Cleanup parts of the extended assembler code.
Teach r constraint about +.
Add support for n constraint.

1.226 annotated / raw | Diffs: previous, other | Lines: 1317 ( +21, -6 )

Created: 2008-06-22 17:25:00 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080622152459

Add xasm support for:
- + constraint (same input and output argument)
- target-specific register names
- memory and cc constraints

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

Created: 2008-06-22 09:00:27 +0200 (6 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20080622070027

Accept %% in extended assembler.

1.224 annotated / raw | Diffs: previous, other | Lines: 1300 ( +9, -9 )

Created: 2008-06-19 09:41:12 +0200 (6 years 2 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080619074112

Rename local variables which shadow globals.  Remove "inline" from functions to
improve portability to HP/UX.

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

Created: 2008-05-16 04:02:15 +0200 (6 years 4 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080516020215

Initialise NODE::n_su on recycled node.

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

Created: 2008-05-16 04:00:17 +0200 (6 years 4 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080516020017

handle \t and \n in extended assembler

1.221 annotated / raw | Diffs: previous, other | Lines: 1291 ( +52, -18 )

Created: 2008-04-20 11:41:38 +0200 (6 years 4 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.220 annotated / raw | Diffs: previous, other | Lines: 1257 ( +5, -1 )

Created: 2008-04-15 12:00:43 +0200 (6 years 5 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080415095232

Compile without PCC_DEBUG

1.219 annotated / raw | Diffs: previous, other | Lines: 1253 ( +6, -5 )

Created: 2008-03-20 01:28:15 +0100 (6 years 5 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20080320002815

Don't create OREGs here.  Create SP-relative addressing and let canon()
convert it to OREG later.

Fixes problems where invalid OREGs were generated because notoff() was
never invoked.

1.218 annotated / raw | Diffs: previous, other | Lines: 1252 ( +5, -5 )

Created: 2008-03-05 19:54:34 +0100 (6 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20080305185434

More verbose debug printout.

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

Created: 2008-02-20 17:59:15 +0100 (6 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20080220165915

Move the insertion of \t\n around asm() statements to the parse section.

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

Created: 2008-02-10 20:22:21 +0100 (6 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20080210192221

First try at supporting gcc-compatible extended assembler. Can generate
simple expressions like asm("foo %1 %2" : : "r"((char)1), "r"(2)); correct.

1.215 annotated / raw | Diffs: previous, other | Lines: 1128 ( +3, -11 )

Created: 2008-02-09 12:09:38 +0100 (6 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20080209110938

Move the debug reg printout to regs.c, it is dependent of register
allocator internals.

1.214 annotated / raw | Diffs: previous, other | Lines: 1136 ( +4, -4 )

Created: 2007-12-30 11:31:51 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20071230103150

Change number of TEMP nodes to be stored in rval, not lval, to be
consistent with REG/OREG nodes.
Add macro regno() to reference the reg/tempnum value.

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

Created: 2007-12-26 13:23:22 +0100 (6 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20071226122322

Make it possible for FCONs to pass on to pass2.

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

Created: 2007-12-11 13:14:12 +0100 (6 years 9 months ago) | Author: mickey | Changeset: MAIN:mickey:20071211121412

better check for n_reg/n_regw in e2print (fixes a sigsegv)

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

Created: 2007-11-28 04:02:08 +0100 (6 years 9 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20071128030208

Debug check for target-dependent code: ensure that the node has a right node
before checking it.

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

Created: 2007-11-23 16:53:20 +0100 (6 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20071123155320

Only call findops() if BINODE in case we're shortcutting FORCC check.

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

Created: 2007-11-16 23:41:22 +0100 (6 years 10 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20071116224122

Remove macro MYCANON().  The backend will always provde the function.

1.208 annotated / raw | Diffs: previous, other | Lines: 1131 ( +24, -9 )

Created: 2007-11-16 00:35:04 +0100 (6 years 10 months ago) | Author: gmcgarry | Changeset: MAIN:gmcgarry:20071115233504

Before generating an instruction for a compare node, check to see if the
left subtree can generate an instruction with FORCC.

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

Created: 2007-10-29 15:13:08 +0100 (6 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20071029141308

Allow ADDROF to fall through to table, for PIC code generation.

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

Created: 2007-10-23 20:38:25 +0200 (6 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20071023183825

Fix FLD node type for code generation, so that it is useful again for
architectures with bitfield instructions, like vax and hppa :-)

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

Created: 2007-10-23 11:49:03 +0200 (6 years 10 months ago) | Author: mickey | Changeset: MAIN:mickey:20071023094903

fix segfault in CDEBUG() use of rnames

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

Created: 2007-10-01 17:27:54 +0200 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20071001152753

Small optim by Stefan Kempf.

1.203 annotated / raw | Diffs: previous, other | Lines: 1112 ( +21, -12 )

Created: 2007-09-24 19:49:54 +0200 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20070924174954

Add support for signed bitfields, this has been missing ~forever.
Bug reported by TAKAHASHI Tamotsu.

1.202 annotated / raw | Diffs: previous, other | Lines: 1103 ( +2, -2 )

Created: 2007-09-24 18:23:39 +0200 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20070924162336

Fix bitfield overflow bug, reported by TAKAHASHI Tamotsu.

1.201 annotated / raw | Diffs: previous, other | Lines: 1103 ( +13, -8 )

Created: 2007-09-21 18:06:41 +0200 (6 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20070921160641

Repair delusesless() so that it will prepend subexpressions correctly.

1.200 annotated / raw | Diffs: previous, other | Lines: 1098 ( +4, -4 )

Created: 2007-09-15 09:37:46 +0200 (7 years ago) | Author: ragge | Changeset: MAIN:ragge:20070915073738

Patches to support OpenBSD + some sanity fixes, from Chad Loder and with
only minor changes by myself.

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

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

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

1.198 annotated / raw | Diffs: previous, other | Lines: 1096 ( +3, -3 )

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

Remove INIT nodetype.
Now most initializations work.

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

Created: 2006-10-07 11:19:34 +0200 (7 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20061007091934

Make the compiler compile under linux.

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

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

Finish move of INCR/DECR to pass1.

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

Created: 2006-07-12 10:09:55 +0200 (8 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20060712080955

Remove remaining Z{R,L,1} from table and zzzcode().
Clear n_su in mklnode(). XXX - shouldn't be needed.

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

Created: 2006-07-03 17:00:44 +0200 (8 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20060703150044

Optimize away unsigned DIV and MOD to shift and and.
Treat INCR/DECR instructions as assigns to catch side effects.

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

Created: 2006-06-17 16:23:53 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060617142350

Add incl/decl.
Start working on using double indexing.

1.192 annotated / raw | Diffs: previous, other | Lines: 1195 ( +2, -2 )

Created: 2006-06-13 08:14:30 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060613061430

Add edges also when assigning temporaries.
Fix bug where edx/edi could be mixed.
Fix code generation bug where SCONV longlong->int could get wrong leaf.

1.191 annotated / raw | Diffs: previous, other | Lines: 1195 ( +7, -5 )

Created: 2006-06-10 10:25:32 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060610082531

Add comments about how liveness analysis works.
Fix bug where ASSIGN moves were not emitted.
Fix erroneous table entry for floats as arguments.
Add move for long long type casts.

1.190 annotated / raw | Diffs: previous, other | Lines: 1193 ( +35, -59 )

Created: 2006-06-08 18:45:15 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060608164515

Change ASSIGN return value reclaiming.  Now compiles and runs csh.

1.189 annotated / raw | Diffs: previous, other | Lines: 1217 ( +5, -5 )

Created: 2006-06-04 11:49:58 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060604094958

Fix su clearance bug, add moves for some casts.

1.188 annotated / raw | Diffs: previous, other | Lines: 1217 ( +64, -21 )

Created: 2006-06-03 16:53:48 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060603145348

Support special needs again. Emit move insns at correct positions.

1.187 annotated / raw | Diffs: previous, other | Lines: 1174 ( +12, -69 )

Created: 2006-06-03 13:42:44 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060603114243

Fix two liveness analysis bugs.  Soem cleanup.  Add assertion for
funny SCONVs.

1.186 annotated / raw | Diffs: previous, other | Lines: 1231 ( +7, -4 )

Created: 2006-05-27 09:32:06 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060527073206

MOre work on new liveness analysis.

1.185 annotated / raw | Diffs: previous, other | Lines: 1228 ( +29, -7 )

Created: 2006-05-25 16:43:01 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060525144301

More work on new insn generator, now handles ASSIGN.

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

Created: 2006-05-25 10:04:56 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060525080456

More work on new insn matching.

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

Created: 2006-05-21 09:17:59 +0200 (8 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20060521071759

A few fixes for matching.

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

Created: 2006-05-13 08:35:36 +0200 (8 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20060513063536

More fixes for the UMUL code generation.

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

Created: 2006-04-22 09:25:19 +0200 (8 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20060422072518

More work on the OREG handling.

1.180 annotated / raw | Diffs: previous, other | Lines: 1190 ( +43, -147 )

Created: 2006-04-08 09:22:24 +0200 (8 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20060408072224

Temp checkin.

1.179 annotated / raw | Diffs: previous, other | Lines: 1294 ( +78, -55 )

Created: 2006-04-01 15:19:18 +0200 (8 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20060401131915

Move out handling of UMUL into separate function.
Split oreg2 into one checking and one converting function.

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

Created: 2006-03-26 09:14:28 +0200 (8 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20060326071428

Add #defines for going down left/right.

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

Created: 2006-03-18 09:18:34 +0100 (8 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20060318081833

Rewrite findops().  Some work on R2REGS.

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

Created: 2006-02-26 19:44:05 +0100 (8 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20060226184405

Comment out INCR/DECR in table, they do not work as intended.
Fix problem with erroneout move to reg 0 in assign statements.
Now compiles and runs the shells.

1.175 annotated / raw | Diffs: previous, other | Lines: 1255 ( +11, -10 )

Created: 2006-02-19 23:22:26 +0100 (8 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20060219222226

Fix stabs generation.  Fix function call argument emitting order.
Change one erroneous error message.  Cleanup location counters slightly.

1.174 annotated / raw | Diffs: previous, other | Lines: 1254 ( +24, -71 )

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

Rewrite struct argument handling.

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

Created: 2006-02-05 19:30:51 +0100 (8 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20060205183051

Many fixes to table.  One register class assignment allocation fix.
Cleanup.   Still one spill bug to fix.

1.172 annotated / raw | Diffs: previous, other | Lines: 1297 ( +127, -68 )

Created: 2006-02-04 18:43:46 +0100 (8 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20060204174346

Rewrite function argument handling entirely. Remove hardops.

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

Created: 2006-02-01 13:58:15 +0100 (8 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20060201125809

Fix COLORMAP(), and remove a bunch of unneeded #ifdefs.

1.170 annotated / raw | Diffs: previous, other | Lines: 1256 ( +37, -18 )

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

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

1.169 annotated / raw | Diffs: previous, other | Lines: 1237 ( +19, -5 )

Created: 2006-01-12 22:35:23 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060112213522

Many bugfixes, now compiles and runs programs in /bin again.

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

Created: 2006-01-07 18:04:59 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060107170457

Fix a newly-introduced liveness-analysis bug.

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

Created: 2006-01-06 13:47:34 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060106124734

Do better edgecheck for precolored registers.

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

Created: 2006-01-01 17:17:02 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20060101161701

Avoid extra moves for indexed registers in OREGs.
Only allow folding into OREG if no register moves are involved.

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

Created: 2005-12-30 15:23:54 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20051230142351

Almost all definitions for register allocator now auto generated.

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

Created: 2005-12-29 21:48:16 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20051229204814

Rewrite MD register definition entirely.  Preprocess it in mkext.

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

Created: 2005-12-29 16:40:18 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20051229154018

Change how preallocated regs work.

1.162 annotated / raw | Diffs: previous, other | Lines: 1216 ( +22, -50 )

Created: 2005-12-22 10:57:28 +0100 (8 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20051222095728

Fix genswitch(). More bugfixes.

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

Created: 2005-12-11 09:10:32 +0100 (8 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20051211081032

Fix liveness calculation bug.
Change ASSIGN table syntax slightly.

1.160 annotated / raw | Diffs: previous, other | Lines: 1202 ( +24, -109 )

Created: 2005-12-08 21:10:38 +0100 (8 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20051208201038

Many more fixes...

1.159 annotated / raw | Diffs: previous, other | Lines: 1287 ( +4, -101 )

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

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

1.158 annotated / raw | Diffs: previous, other | Lines: 1384 ( +32, -97 )

Created: 2005-11-20 22:48:42 +0100 (8 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20051120214841

More multiclass fixes.  Now almost works.

1.157 annotated / raw | Diffs: previous, other | Lines: 1449 ( +3, -3 )

Created: 2005-11-12 16:20:25 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051112152022

More fixes for multiclass.

1.156 annotated / raw | Diffs: previous, other | Lines: 1449 ( +88, -19 )

Created: 2005-11-12 09:27:42 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051112082742

More work on multiclass.

1.155 annotated / raw | Diffs: previous, other | Lines: 1380 ( +22, -9 )

Created: 2005-11-06 23:13:28 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051106221328

More fixes to multiclass, liveness analysis almost works now.

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

Created: 2005-11-06 18:15:16 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051106171516

Mostly fixes for long temporaries.

1.153 annotated / raw | Diffs: previous, other | Lines: 1366 ( +4, -4 )

Created: 2005-11-05 16:37:56 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051105153753

Fix basic code generation.

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

Created: 2005-11-05 09:17:40 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051105081740

More fixes for MULTICLASS.  Can almost generate trivial sequences.

1.151 annotated / raw | Diffs: previous, other | Lines: 1356 ( +108, -3 )

Created: 2005-11-04 07:56:32 +0100 (8 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20051104065632

More work on multiclass.

1.150 annotated / raw | Diffs: previous, other | Lines: 1251 ( +20, -588 )

Created: 2005-09-17 09:58:40 +0200 (9 years ago) | Author: ragge | Changeset: MAIN:ragge:20050917075840

Temp checkin: Start walking towards class-allocated registers.

1.149 annotated / raw | Diffs: previous, other | Lines: 1819 ( +100, -14 )

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

Temporary checkin: rewrite of liveness analysis.

1.148 annotated / raw | Diffs: previous, other | Lines: 1733 ( +20, -19 )

Created: 2005-08-04 08:30:49 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050804063049

Add a large amount of debug printouts.
More work on rewriting trees for spill.

1.147 annotated / raw | Diffs: previous, other | Lines: 1732 ( +21, -4 )

Created: 2005-08-01 18:33:32 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050801163332

Clean up how live/gen/kill/in/out works.
Convert FORCE to instruction sequence in clocal.
Function graph coloring now works.

1.146 annotated / raw | Diffs: previous, other | Lines: 1715 ( +8, -5 )

Created: 2005-07-30 14:00:34 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050730120034

A few bug fixes for newreg.

1.145 annotated / raw | Diffs: previous, other | Lines: 1712 ( +3, -3 )

Created: 2005-07-30 10:54:59 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050730085459

Fix temp usage bugs.

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

Created: 2005-07-27 22:24:32 +0200 (9 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20050727202432

Make code generator understand TEMPs.
Split up basic blocks in gen/kill.

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

Created: 2005-06-30 15:05:38 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050630130538

Remove unused var.

1.142 annotated / raw | Diffs: previous, other | Lines: 1712 ( +36, -55 )

Created: 2005-06-29 21:33:16 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050629193316

Correct move insn generation. Change heuristic for doing su traversal
calculation.

1.141 annotated / raw | Diffs: previous, other | Lines: 1731 ( +35, -11 )

Created: 2005-06-29 19:59:46 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050629175946

Add newreg-moves at code generation.

1.140 annotated / raw | Diffs: previous, other | Lines: 1707 ( +16, -5 )

Created: 2005-06-29 16:58:09 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050629145809

More fixes for special needs.

1.139 annotated / raw | Diffs: previous, other | Lines: 1696 ( +24, -7 )

Created: 2005-06-29 14:40:08 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050629124008

Add NSPECIAL code for instructions with special needs.

1.138 annotated / raw | Diffs: previous, other | Lines: 1679 ( +2, -2 )

Created: 2005-06-29 09:12:41 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050629071241

Fix deljumps.  Start working on full-function register assignment.

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

Created: 2005-06-28 15:29:00 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050628132900

Start reworking deljumps.

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

Created: 2005-06-28 09:16:45 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050628071645

Start working on store.

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

Created: 2005-06-27 15:40:14 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050627134014

Use correct register define.

1.134 annotated / raw | Diffs: previous, other | Lines: 1680 ( +15, -6 )

Created: 2005-06-27 13:45:36 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050627114536

More graph coloring fixes.

1.133 annotated / raw | Diffs: previous, other | Lines: 1671 ( +17, -5 )

Created: 2005-06-24 10:45:32 +0200 (9 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20050624084531

Resurrect rmove() for reg->reg moves, and add support for it in gencode.
Change some list representations.

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

Created: 2005-06-18 13:30:13 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050618113013

Help for graph-coloringen.

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

Created: 2005-06-11 09:38:41 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050611073841

Add allocation if newreg.

1.130 annotated / raw | Diffs: previous, other | Lines: 1649 ( +34, -69 )

Created: 2005-05-22 15:55:01 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050522135501

Cleanup slightly by using common routines instead.

1.129 annotated / raw | Diffs: previous, other | Lines: 1684 ( +6, -6 )

Created: 2005-05-22 12:45:47 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050522104546

Change ccom to take -x parameters to tell it which optimizations to use.
Let cc convert -O options to suitable -x options.
While here, cleanup pass2 prolog/epilog code a bit.

1.128 annotated / raw | Diffs: previous, other | Lines: 1684 ( +2, -262 )

Created: 2005-05-21 16:54:33 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050521145433

Set NEW_READER as default.  Now the pass2 flow is predictable.

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

Created: 2005-05-21 16:29:22 +0200 (9 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20050521142921

Enable -O.
Fix stack allocation bug in variable declarations.
Handle segfaults more gracefully.
Add extra check in saveip.
Print out asm()s outside blocks already in pass1.

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

Created: 2005-05-15 23:06:35 +0200 (9 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20050515210634

Fix cpp. fix BREG strengthening.  Now (almost) compiler NetBSD again.

1.125 annotated / raw | Diffs: previous, other | Lines: 1941 ( +49, -86 )

Created: 2005-04-03 16:58:52 +0200 (9 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20050403145852

Fix so that stack allocation works with NEW_READER.

1.124 annotated / raw | Diffs: previous, other | Lines: 1978 ( +172, -6 )

Created: 2005-04-02 16:48:17 +0200 (9 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20050402144817

More work on new reader code.

1.123 annotated / raw | Diffs: previous, other | Lines: 1812 ( +62, -11 )

Created: 2005-04-02 09:56:17 +0200 (9 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20050402075617

Start reworking pass2 entry.

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

Created: 2005-03-06 16:40:33 +0100 (9 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20050306154033

Start working on a graph-coloring register allocator.

1.121 annotated / raw | Diffs: previous, other | Lines: 1741 ( +13, -8 )

Created: 2005-02-20 13:40:42 +0100 (9 years 6 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.120 annotated / raw | Diffs: previous, other | Lines: 1736 ( +1, -10 )

Created: 2005-02-18 17:48:59 +0100 (9 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20050218164859

Use local versions of queue macros.
Do compile-time calculation of bit set sizes.
Remove LOCCTR as interpass type, location counters are only output in pass1.

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

Created: 2005-02-13 15:49:39 +0100 (9 years 7 months ago) | Author: pj | Changeset: MAIN:pj:20050213144939

Null struct, not function

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

Created: 2005-02-13 15:36:51 +0100 (9 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20050213143651

Zero tempnode list before using it.

1.117 annotated / raw | Diffs: previous, other | Lines: 1744 ( +2, -2 )

Created: 2005-02-05 16:55:49 +0100 (9 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20050205155549

More fixes to deal with TEMP.

1.116 annotated / raw | Diffs: previous, other | Lines: 1744 ( +26, -5 )

Created: 2005-02-05 15:39:07 +0100 (9 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20050205143907

Resurrect TEMP nodes.

1.115 annotated / raw | Diffs: previous, other | Lines: 1723 ( +2, -2 )

Created: 2005-01-29 17:05:27 +0100 (9 years 7 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.114 annotated / raw | Diffs: previous, other | Lines: 1723 ( +3, -3 )

Created: 2005-01-21 16:24:10 +0100 (9 years 7 months ago) | Author: pj | Changeset: MAIN:pj:20050121152410

Move TAILCALL to macdefs

1.113 annotated / raw | Diffs: previous, other | Lines: 1723 ( +58, -10 )

Created: 2005-01-20 22:24:14 +0100 (9 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20050120212414

Fix prolog/epilog.  Framework for tailcall optimization.

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

Created: 2005-01-13 16:26:47 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050113152647

Add more debug pprintouts.

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

Created: 2005-01-11 15:27:08 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050111142708

Remove newblk and rstatus stuff.

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

Created: 2005-01-10 17:49:37 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050110164937

M<ore updates to the A/B register stuff.

1.109 annotated / raw | Diffs: previous, other | Lines: 1681 ( +12, -2 )

Created: 2005-01-09 15:28:54 +0100 (9 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20050109142853

Add support for Breg's.
XXX - Should be done in a better way.

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

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

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

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

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

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

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

Created: 2004-09-04 13:12:25 +0200 (10 years ago) | Author: ragge | Changeset: MAIN:ragge:20040904111225

Fix inline assembler printout. Add one more type combination case.

1.105 annotated / raw | Diffs: previous, other | Lines: 1668 ( +62, -6 )

Created: 2004-06-21 10:19:47 +0200 (10 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20040621081946

Add more entries to the table. Make void->char conversion MI.
Make struct returns work.

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

Created: 2004-06-19 11:14:27 +0200 (10 years 2 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.103 annotated / raw | Diffs: previous, other | Lines: 1610 ( +40, -54 )

Created: 2004-06-05 10:22:42 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040605082242

Change call generation to MD, needed for struct returns.
Add a bunch of math stuff.

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

Created: 2004-05-30 12:16:32 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040530101629

Add writes to field destinations.

1.101 annotated / raw | Diffs: previous, other | Lines: 1620 ( +3, -3 )

Created: 2004-05-30 09:50:15 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040530075015

Begin deal with bitfield stuff.

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

Created: 2004-05-29 16:11:49 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040529141145

Numerous fixes.

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

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

Split out branches separately. code generation bugfix.

1.98 annotated / raw | Diffs: previous, other | Lines: 1705 ( +33, -2 )

Created: 2004-05-26 20:17:58 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040526181758

Add more x86 stuff; now compiles ls.  Fix hardops.

1.97 annotated / raw | Diffs: previous, other | Lines: 1674 ( +83, -5 )

Created: 2004-05-25 17:52:37 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040525155236

Add support for hardops + some longlongs to x86.

1.96 annotated / raw | Diffs: previous, other | Lines: 1596 ( +50, -158 )

Created: 2004-05-20 15:26:19 +0200 (10 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20040520132618

Many bugfixes, mostly x86.  Now compiles 'cat' cleanly.

1.95 annotated / raw | Diffs: previous, other | Lines: 1704 ( +43, -2 )

Created: 2004-05-18 16:29:37 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040518142937

Change tshape() slightly (for ease).  Many bugfixes for x86.
Can now compile and run cc.c on x86.

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

Created: 2004-05-15 14:14:43 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040515121433

Fix gcc 3.3.3 warnings. Check temp/nontemp regs usage in regs.c.

1.93 annotated / raw | Diffs: previous, other | Lines: 1662 ( +9, -9 )

Created: 2004-05-15 10:06:17 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040515080617

Remove NDLEFT/NDRIGHT + all dest code in table.  Fix reg allocation so that
non-temp registers may be used all way through. Still stuff to do here.

1.92 annotated / raw | Diffs: previous, other | Lines: 1662 ( +12, -6 )

Created: 2004-05-13 21:33:47 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040513193347

Now register assignment works as expected.

1.91 annotated / raw | Diffs: previous, other | Lines: 1656 ( +3, -149 )

Created: 2004-05-10 23:35:58 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040510213558

Remove rest of TEMPs. Start adding a separate optimize step.

1.90 annotated / raw | Diffs: previous, other | Lines: 1802 ( +45, -15 )

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

Change TEMPs to OREGs instead (discard TEMPs).

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

Created: 2004-05-07 18:49:35 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040507164935

Fix removal of dead expressions.

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

Created: 2004-05-06 22:38:22 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040506203822

Fix sucomp.  Now compiles old kernel fine :-)

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

Created: 2004-05-06 20:15:39 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040506181539

More reg and table fixes.

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

Created: 2004-05-05 22:26:18 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040505202618

More table and register additions.

1.85 annotated / raw | Diffs: previous, other | Lines: 1684 ( +16, -3 )

Created: 2004-05-05 08:33:12 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040505063311

More fixes.

1.84 annotated / raw | Diffs: previous, other | Lines: 1671 ( +11, -12 )

Created: 2004-05-04 23:15:39 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040504211539

More support for register allocations. Ask offstar to tell success.
Add some insns to the table.

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

Created: 2004-05-03 17:42:38 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040503154238

Fix ++ operators.

1.82 annotated / raw | Diffs: previous, other | Lines: 1669 ( +16, -2 )

Created: 2004-05-02 23:41:17 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040502214117

Fix so that OREGs work more useable.

1.81 annotated / raw | Diffs: previous, other | Lines: 1655 ( +9, -3 )

Created: 2004-05-02 12:19:11 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040502101911

Fix SU calculation buf. Add more regs entries.

1.80 annotated / raw | Diffs: previous, other | Lines: 1649 ( +10, -4 )

Created: 2004-05-01 13:00:38 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040501110038

Clean up table. Large rewrite of regs. Bugfixes.

1.79 annotated / raw | Diffs: previous, other | Lines: 1643 ( +31, -12 )

Created: 2004-04-29 22:24:24 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040429202424

More bugfixes.

1.78 annotated / raw | Diffs: previous, other | Lines: 1624 ( +43, -13 )

Created: 2004-04-29 18:30:49 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040429163048

Remove allo.c. Fix more missing genregs entries.

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

Created: 2004-04-28 22:49:47 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040428204947

Fix incr/decr operator rewriting.

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

Created: 2004-04-26 23:05:30 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040426210530

Add some more cases to register assignment.

1.75 annotated / raw | Diffs: previous, other | Lines: 1562 ( +25, -7 )

Created: 2004-04-25 23:24:18 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040425212417

Start adding register assignment rules. Can now generate simple code.

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

Created: 2004-04-20 17:49:46 +0200 (10 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20040420154946

Fix allocation of temporary registers.

1.73 annotated / raw | Diffs: previous, other | Lines: 1542 ( +1, -37 )

Created: 2004-04-18 14:14:35 +0200 (10 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20040418121435

Add reg distribution.

1.72 annotated / raw | Diffs: previous, other | Lines: 1578 ( +119, -619 )

Created: 2003-12-15 23:02:06 +0100 (10 years 9 months ago) | Author: ragge | Changeset: MAIN:ragge:20031215220206

Temporary checkin, lots of removed code.

1.71 annotated / raw | Diffs: previous, other | Lines: 2078 ( +117, -32 )

Created: 2003-11-13 16:59:46 +0100 (10 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20031113155946

Fix better error messages and send them to stdout.

1.70 annotated / raw | Diffs: previous, other | Lines: 1993 ( +85, -30 )

Created: 2003-11-12 17:42:27 +0100 (10 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20031112164226

Fix function calls.

1.69 annotated / raw | Diffs: previous, other | Lines: 1938 ( +489, -38 )

Created: 2003-11-12 13:13:11 +0100 (10 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20031112121311

Fix lot of code generation stuff. Now produces simple code correctly.

1.68 annotated / raw | Diffs: previous, other | Lines: 1487 ( +20, -20 )

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

Remove remaining unary ops.

1.67 annotated / raw | Diffs: previous, other | Lines: 1487 ( +16, -16 )

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

Remove a bunch of UNARY and make U* instead.

1.66 annotated / raw | Diffs: previous, other | Lines: 1487 ( +1, -16 )

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

Move CAST and STRING to pass1.

1.65 annotated / raw | Diffs: previous, other | Lines: 1502 ( +44, -28 )

Created: 2003-09-12 15:30:56 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030912133056

A bunch of temporary changes.

1.64 annotated / raw | Diffs: previous, other | Lines: 1486 ( +22, -16 )

Created: 2003-09-10 09:46:52 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030910074652

Fix shape bug in reader.

1.63 annotated / raw | Diffs: previous, other | Lines: 1480 ( +115, -3 )

Created: 2003-09-09 21:41:58 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030909194158

Start working on assign ops.

1.62 annotated / raw | Diffs: previous, other | Lines: 1368 ( +3, -3 )

Created: 2003-09-09 14:20:53 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030909122053

Remove the now useless setrew() stuff. Match now uses the
autogenerated tables.

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

Created: 2003-09-09 11:41:32 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030909094132

Rename setnbin -> setbin.

1.60 annotated / raw | Diffs: previous, other | Lines: 1369 ( +52, -55 )

Created: 2003-09-09 11:36:55 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030909093655

Fix so that logical operators work as expected.

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

Created: 2003-09-08 13:44:56 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030908114456

Disable conditional evaluation in new style.

1.58 annotated / raw | Diffs: previous, other | Lines: 1370 ( +3, -3 )

Created: 2003-09-08 10:57:49 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030908085749

Fix erroneous freeing of constants.

1.57 annotated / raw | Diffs: previous, other | Lines: 1370 ( +126, -13 )

Created: 2003-09-08 10:27:33 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030908082733

Make relops use new code.

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

Created: 2003-09-02 16:37:21 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030902143721

Remove last ASG ops.

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

Created: 2003-09-02 16:27:43 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030902142743

RS/LS now common code.

1.54 annotated / raw | Diffs: previous, other | Lines: 1294 ( +16, -2 )

Created: 2003-09-02 14:39:21 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030902123921

Syntax change: NAREGs are required to be in contiguous registers.
If allo() fails, force regs into memory. XXX - bad design.

1.53 annotated / raw | Diffs: previous, other | Lines: 1280 ( +17, -5 )

Created: 2003-09-02 10:13:51 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030902081351

offstar() somewhat more.

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

Created: 2003-09-01 16:55:59 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030901145559

Adapt DIV to new world.

1.51 annotated / raw | Diffs: previous, other | Lines: 1267 ( +7, -4 )

Created: 2003-09-01 16:08:05 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030901140805

AND/OR/ER to new world order.

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

Created: 2003-09-01 14:08:03 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030901120803

Fix so that PLUS/MINUS works with the new world order.

1.49 annotated / raw | Diffs: previous, other | Lines: 1236 ( +192, -56 )

Created: 2003-09-01 10:28:54 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030901082854

Temp checkin: add new instruction research code.

1.48 annotated / raw | Diffs: previous, other | Lines: 1100 ( +69, -8 )

Created: 2003-08-25 13:08:56 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030825110855

Temporary (and large) checkin:
Expand table to three elements.
Invent new match functions: nmatch() and chkmatch().

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

Created: 2003-08-23 14:25:46 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030823122546

Remove +=-style ops before putting them out to pass2.

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

Created: 2003-08-21 19:33:33 +0200 (11 years ago) | Author: ragge | Changeset: MAIN:ragge:20030821173333

Reinsert delay(), now only used for incr/decr operations.

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

Created: 2003-08-16 16:58:06 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030816145806

Must align before calling freetemp(). XXX - fix this.

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

Created: 2003-08-15 18:19:37 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030815161937

DO not use globals for auto offset, use provided parameters.

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

Created: 2003-08-09 15:15:25 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030809131525

Put LHS in a temp register here, instead of doing it in setbin().

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

Created: 2003-08-09 11:47:33 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030809094732

FIx branches. Start working on conditionals.

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

Created: 2003-08-05 11:27:55 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030805092755

Fix a bunch of bugs. Kernel now boots (partly) again.

1.40 annotated / raw | Diffs: previous, other | Lines: 967 ( +64, -25 )

Created: 2003-08-04 16:12:02 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030804141159

Add a bunch of optimizings:
- Put prologue/epilogue on correct places.
- Fall-through to epilogue.
- Don't generate stack saving code if the stack is not used.

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

Created: 2003-08-04 12:59:57 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030804105953

Handle genswitch() as asm statements. Now the basic optimizing should work.

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

Created: 2003-08-04 11:15:03 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030804091503

Return after putting return value in register, otherwise it will be
done twice.

1.37 annotated / raw | Diffs: previous, other | Lines: 926 ( +82, -24 )

Created: 2003-08-03 23:15:59 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030803211559

Share stack alloc stuff between passes. First optimizing stuff.

1.36 annotated / raw | Diffs: previous, other | Lines: 868 ( +4, -50 )

Created: 2003-08-03 19:18:23 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030803171823

Remove cbranch().

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

Created: 2003-08-03 17:00:37 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030803150037

Fix real const optimizer for conditionals. Needs more work though.

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

Created: 2003-08-03 12:49:39 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030803104938

Fix the branch code to be correct, not reversed.
Slightly change the conditional generation.

1.33 annotated / raw | Diffs: previous, other | Lines: 911 ( +2, -2 )

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

Start implementing qualifiers.

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

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

Discard xdefs.

1.31 annotated / raw | Diffs: previous, other | Lines: 910 ( +34, -6 )

Created: 2003-07-30 15:25:56 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030730132556

reader is now clean.

1.30 annotated / raw | Diffs: previous, other | Lines: 882 ( +23, -62 )

Created: 2003-07-30 13:27:48 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030730112747

Make manifest 4.4-clean and reader almost-clean.

1.29 annotated / raw | Diffs: previous, other | Lines: 921 ( +15, -64 )

Created: 2003-07-30 11:48:58 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030730094858

Remove more redundant code.

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

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

More logical ops fixes. Should be functioning now.

1.27 annotated / raw | Diffs: previous, other | Lines: 979 ( +3, -7 )

Created: 2003-07-29 22:03:01 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030729200301

More fixes of logical ops.

1.26 annotated / raw | Diffs: previous, other | Lines: 983 ( +17, -245 )

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

Last moveable checkin: Almost finished with conditional removal.

1.25 annotated / raw | Diffs: previous, other | Lines: 1211 ( +16, -12 )

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

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

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

Created: 2003-07-29 11:16:19 +0200 (11 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20030729091618

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

1.23 annotated / raw | Diffs: previous, other | Lines: 1210 ( +69, -5 )

Created: 2003-07-13 14:37:29 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030713123729

Check in an embryo of the intial ,:?||&& pass2 removal.

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

Created: 2003-07-07 20:37:09 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030707183709

Remove IP_INIT.

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

Created: 2003-07-05 11:00:11 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030705090010

Fix remaining stuff to allow for an optimize pass.

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

Created: 2003-07-03 20:10:04 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030703181004

Fix remaining discovered bugs.

1.19 annotated / raw | Diffs: previous, other | Lines: 1146 ( +21, -23 )

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

Start walking towards not using a static node table.

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

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

Big change: send everything from pass1 via one function.

1.17 annotated / raw | Diffs: previous, other | Lines: 1140 ( +26, -2 )

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

Implement basic framework to send everything through one subroutine.

1.16 annotated / raw | Diffs: previous, other | Lines: 1116 ( +4, -4 )

Created: 2003-06-22 15:56:31 +0200 (11 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20030622135631

Move prolog/epilog generation to pass2.

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

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

Put the filenames in the string save area.

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

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

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

1.13 annotated / raw | Diffs: previous, other | Lines: 1104 ( +191, -191 )

Created: 2003-05-31 12:34:47 +0200 (11 years 3 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.12 annotated / raw | Diffs: previous, other | Lines: 1104 ( +10, -10 )

Created: 2002-12-31 12:29:17 +0100 (11 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20021231112917

Cleanup. Handle yacc files better.

1.11 annotated / raw | Diffs: previous, other | Lines: 1104 ( +7, -5 )

Created: 2002-10-23 17:46:56 +0200 (11 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20021023154656

Some readability cleanup.

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

Created: 2002-10-21 19:57:27 +0200 (11 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20021021175727

Cleanup, add come debug printouts.

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

Created: 2002-09-29 18:52:21 +0200 (11 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20020929165221

Remove rest of "onepass" glue.

1.8 annotated / raw | Diffs: previous, other | Lines: 1102 ( +60, -46 )

Created: 2002-09-26 22:41:52 +0200 (11 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20020926204151

Lots of cleanup.

1.7 annotated / raw | Diffs: previous, other | Lines: 1088 ( +16, -10 )

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

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

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

Created: 2002-05-05 19:45:51 +0200 (12 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20020505174551

Move main() to separate file. Discard that "dual-main" trick.

1.5 annotated / raw | Diffs: previous, other | Lines: 1170 ( +0, -187 )

Created: 2002-03-26 20:56:48 +0100 (12 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20020326195648

Remove NOMAIN define.

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

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

Remove FLEXNAMES, always long names.

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

Created: 2002-03-26 19:42:57 +0100 (12 years 5 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: 1388 ( +128, -87 )

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

Make pcc compile, and generate vax code.

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

Created: 2002-03-24 11:57:24 +0100 (12 years 5 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: 1347 ( +0, -0 )

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

Ipmort of the pcc working tree.

Tags: first

latest revision download Branch r-1-0-0

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

Created: 2011-03-15 18:23:18 +0100 (3 years 6 months ago) | Author: ragge | Changeset: r-1-0-0:ragge:20110315172318

Pull up 1.269 from mainline.

Branch point for: r-1-0-1

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

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-09-18 17:43 +0200