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.54 1.1

latest revision download Branch MAIN

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

Created: 2014-07-01 18:52:20 +0200 (5 months 20 days ago) | Author: ragge | Changeset: MAIN:ragge:20140701165220

Also add casts for char, uchar and ushort to pointer.

Branch point for: r-1-1-0

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

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

Created: 2014-07-01 18:48:54 +0200 (5 months 20 days ago) | Author: ragge | Changeset: MAIN:ragge:20140701164854

Convert shorts to pointers. Fixes Jira#PCC-306 by Fred J. Tydeman.

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

Created: 2014-04-29 20:16:09 +0200 (7 months ago) | Author: ragge | Changeset: MAIN:ragge:20140429181609

Use movabsq for labels.
Do not emit labels as distance to indexed registers, they can be only
32-bit long.

1.51 annotated / raw | Diffs: previous, other | Lines: 1562 ( +2, -2 )

Created: 2013-02-16 18:00:14 +0100 (22 months ago) | Author: ragge | Changeset: MAIN:ragge:20130216170014

Do not emit a constant for RHS on cmpl. Fixes Jira#PCC-415 by Dara Hazeghi.

1.50 annotated / raw | Diffs: previous, other | Lines: 1562 ( +2, -2 )

Created: 2011-12-13 18:46:18 +0100 (3 years ago) | Author: ragge | Changeset: MAIN:ragge:20111213174618

Handle PCONVs of signed as well as unsigned ints to pointers.
Found in libI77 by Steve Kargl.

1.49 annotated / raw | Diffs: previous, other | Lines: 1562 ( +15, -1 )

Created: 2011-08-21 11:32:46 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110821093246

Let FCON of 0.0 be passed on to pass2 so that zeroes do not need to be
loaded from memory.

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

Created: 2011-08-03 21:19:22 +0200 (3 years 4 months ago) | Author: ragge | Changeset: MAIN:ragge:20110803191922

Accept struct return calls even if the return value is ignored.
Struct assignment must return correct argument.

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

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

Remove bitfields ops.

1.46 annotated / raw | Diffs: previous, other | Lines: 1594 ( +2, -2 )

Created: 2011-04-14 18:29:43 +0200 (3 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20110414162943

fistpl -> fistpq. Fixes Jira#PCC-300 by Fred J. Tydeman.

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

Created: 2011-02-18 18:08:31 +0100 (3 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20110218170831

Byte mod give results in ah, not in dl.  Since amd64 should not care about
high bytes of regs just move it to lower and be done.
Fixes Jira#PCC-241 by Fred J. Tydeman.

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.44 annotated / raw | Diffs: previous, other | Lines: 1594 ( +2, -2 )

Created: 2011-01-26 13:58:32 +0100 (3 years 10 months ago) | Author: ragge | Changeset: MAIN:ragge:20110126125512

fst cannot deal with long double, so do a fstpt + fldt instead.
Fixes Jira#PCC-216 by Fred J. Tydeman.

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

Created: 2011-01-16 17:54:12 +0100 (3 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20110116165412

Fix cast from unsigned to long double, found by running tint2flt.c test
program from Fred J. Tydeman.

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

Created: 2010-12-26 18:26:03 +0100 (3 years 11 months ago) | Author: ragge | Changeset: MAIN:ragge:20101226172603

Handle imaginary types as argument or return values.
Also accept cast to the same floating type.

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

Created: 2010-12-04 20:42:22 +0100 (4 years ago) | Author: ragge | Changeset: MAIN:ragge:20101204194222

andq cannot have 64-bit constant arguments. Fixes Jira#PCC-196 by andre f.

1.40 annotated / raw | Diffs: previous, other | Lines: 1562 ( +2, -2 )

Created: 2010-11-28 13:40:03 +0100 (4 years ago) | Author: ragge | Changeset: MAIN:ragge:20101128124003

Always reference an address pc-relative, so also the xor address for xorp.

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

Created: 2010-11-27 17:04:29 +0100 (4 years ago) | Author: ragge | Changeset: MAIN:ragge:20101127160429

Fix handling on NaN compares by checking the parity bit after comparision.
Simplify x87 compares; on amd64 we can use fucomi instruction which sets
the usual status register bits as with xmm instructions.
Bugs reported by Nelson H. F. Beebe on pcc-list, and use his test programs
to reproduce the bugs.

1.38 annotated / raw | Diffs: previous, other | Lines: 1562 ( +5, -5 )

Created: 2010-11-18 19:12:10 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101118181210

Store constants to do xor on float regs for sign change.
Fixed Jira#PCC-187 by Nicolas Joly.

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

Created: 2010-11-11 21:50:19 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101111205019

Cast from int to ldouble were broken.  Fixes Jira#PCC-184 by Nicolas Joly.

1.36 annotated / raw | Diffs: previous, other | Lines: 1560 ( +3, -3 )

Created: 2010-11-06 11:40:43 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101106104043

xmm compare sets different flags in the status register than integer compare,
so it must be handled separately.  Fixes bug reported by Steve Kargl
on pcc-list.

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

Created: 2010-11-05 16:55:51 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101105155551

Do not emit broken assembler for bitfields.

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

Created: 2010-11-02 20:51:03 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101102195103

Older binutils cannot handle leal, and since neither FreeBSD nor OpenBSD
have new enough binutils we'll disable emission of leal for now.

1.33 annotated / raw | Diffs: previous, other | Lines: 1554 ( +20, -5 )

Created: 2010-10-31 20:38:28 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101031193828

Fix table bug; cannot load x87 fp stack from general registers.
Extracted by Steve Kargl.

1.32 annotated / raw | Diffs: previous, other | Lines: 1539 ( +38, -20 )

Created: 2010-10-31 19:12:32 +0100 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101031181232

Add some more ldouble casts, that I forgot to checkin yesterday.

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

Created: 2010-10-30 12:20:58 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101030102058

Fix ldouble -> long.

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

Created: 2010-10-30 12:13:24 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101030101324

Fix cast ldouble -> int and smaller.

1.29 annotated / raw | Diffs: previous, other | Lines: 1488 ( +9, -9 )

Created: 2010-10-30 11:48:51 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101030094851

Add support for float/double cast to ulong.
fix char multiplication.

1.28 annotated / raw | Diffs: previous, other | Lines: 1488 ( +30, -4 )

Created: 2010-10-26 22:30:00 +0200 (4 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20101026203000

Fix long double sign change, as reported by Steve kargl.
While here, fix cast of long double to (u)long.

1.27 annotated / raw | Diffs: previous, other | Lines: 1462 ( +15, -1 )

Created: 2010-10-19 22:19:33 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101019201933

Add conversions for int to long double.  Requested by Steve kargl on pcc-list.

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

Created: 2010-10-19 22:05:54 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101019200554

Add missing long double indirection load.  Reported by Steve Kargl on pcc-list.

1.25 annotated / raw | Diffs: previous, other | Lines: 1442 ( +24, -1 )

Created: 2010-10-19 21:49:46 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101019194946

Add support for long double calls. Reported by Steve kargl etc. on pcc-list.

1.24 annotated / raw | Diffs: previous, other | Lines: 1419 ( +2, -2 )

Created: 2010-10-19 18:24:48 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101019162448

Do not allow constants for imulq.  Constants less than 32-bit could be
allowed but deal with that rule later.  Bug found by Steve Kargl.

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

Created: 2010-10-16 15:33:23 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101016133323

STASG may have right leg only in registers. Supposed to fix PCC-171 by
Altamiranus.

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

Created: 2010-10-16 14:38:07 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101016123806

Fix (hopefully) the last problems with PIC code. Someday a small
optimization could be done by generating movl instead of leal for static
variables (saves one byte) and direct calls for static functions (saves a
few more bytes).

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

Created: 2010-10-02 11:45:20 +0200 (4 years 2 months ago) | Author: ragge | Changeset: MAIN:ragge:20101002094520

Add builtin support (via rep movsq) for struct copies; this also allows
for structs as arguments.

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

Created: 2010-09-20 22:01:02 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100920200102

Support PCONV on unsigned ints.
Make spalloc() align stack on allocation.

1.19 annotated / raw | Diffs: previous, other | Lines: 1400 ( +43, -1 )

Created: 2010-09-20 19:01:48 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100920170148

Add +-*/ support.  Now long double spport seems to work.

1.18 annotated / raw | Diffs: previous, other | Lines: 1358 ( +62, -3 )

Created: 2010-09-19 22:55:15 +0200 (4 years 3 months ago) | Author: ragge | Changeset: MAIN:ragge:20100919205515

Start addition of long double to amd64.  This uses x87 fp stack unit.

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

Created: 2010-06-04 08:48:53 +0200 (4 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20100604064853

Can only have memory on one side of ucomisd.

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

Created: 2010-05-02 19:05:26 +0200 (4 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20100502170526

amd64 cannot handle imemdiate constants for 64-bit simple ops.
Fixes Jira#PCC-134 by Nicolas Joly.

1.15 annotated / raw | Diffs: previous, other | Lines: 1303 ( +9, -9 )

Created: 2010-04-07 16:45:49 +0200 (4 years 8 months ago) | Author: ragge | Changeset: MAIN:ragge:20100407144549

Fix struct argument/return bugs.  Add PIC support.

1.14 annotated / raw | Diffs: previous, other | Lines: 1303 ( +2, -2 )

Created: 2009-10-30 16:34:50 +0100 (5 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20091030153450

Give 32-bit register to movl instruction.  Fixes Jira#PCC-100 by Dara Hazeghi.

1.13 annotated / raw | Diffs: previous, other | Lines: 1303 ( +2, -2 )

Created: 2009-10-30 16:19:27 +0100 (5 years 1 month ago) | Author: ragge | Changeset: MAIN:ragge:20091030151927

Allow moving of TEMPs to regs. Fixes Jira#PCC-99 by Dara Hazeghi.

1.12 annotated / raw | Diffs: previous, other | Lines: 1303 ( +3, -3 )

Created: 2009-07-06 14:14:17 +0200 (5 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20090706121417

Always print out 64-bit reg for cvtts?2siq.  Fixes Jira#PCC-64 reported
by Nicolas Joly.

1.11 annotated / raw | Diffs: previous, other | Lines: 1303 ( +2, -2 )

Created: 2009-06-24 19:29:56 +0200 (5 years 5 months ago) | Author: ragge | Changeset: MAIN:ragge:20090624172956

Wrong order of arguments to sub.  Fixes Jira#PCC-62 by Chris Kuethe.

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

Created: 2009-06-20 09:21:26 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090620072126

Remove illegal table entry.  Fix bug where wrong node were output.

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

Created: 2009-06-11 18:57:43 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090611165743

A few table bugfixes.  Add support for long bitfields.

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

Created: 2009-05-30 15:20:10 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090530132010

Some table fixes.  Add special for comparing 64-bit register with 32-bit
constants.

1.7 annotated / raw | Diffs: previous, other | Lines: 1290 ( +7, -7 )

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

Handle DIV/MOD correctly.  Use correct stack alignment in function calls
and prolog.

1.6 annotated / raw | Diffs: previous, other | Lines: 1290 ( +8, -8 )

Created: 2009-05-24 21:20:52 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090524192052

Support integer arguments on stack.  Repair ninval() to handle long.
Bugfix code generation and table.

1.5 annotated / raw | Diffs: previous, other | Lines: 1290 ( +46, -159 )

Created: 2009-05-24 15:20:13 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090524132013

Rewrite args in bfcode().  Change the table floats to sse.

1.4 annotated / raw | Diffs: previous, other | Lines: 1403 ( +111, -233 )

Created: 2009-05-24 10:43:31 +0200 (5 years 6 months ago) | Author: ragge | Changeset: MAIN:ragge:20090524084331

Cut down number of casts and merge them, more to come.
Convert longlong to long for internal use.
Begin with argument classification code (tedious!).

1.3 annotated / raw | Diffs: previous, other | Lines: 1525 ( +47, -33 )

Created: 2009-05-22 16:39:35 +0200 (5 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20090522143935

Remove some more unneccessary instructions.

1.2 annotated / raw | Diffs: previous, other | Lines: 1511 ( +244, -301 )

Created: 2009-05-22 14:19:59 +0200 (5 years 7 months ago) | Author: ragge | Changeset: MAIN:ragge:20090522121959

Change table register classes and remove a bunch of redundant instructions,
more to come here.
Clear eax before a call, needed for varargs.
Currently assume all registers are live at call.

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

Created: 2008-11-27 06:25:15 +0100 (6 years ago) | Author: mickey | Changeset: MAIN:mickey:20081127052515

work-in-progress amd64 port; done w/ support from bsdfund

FishEye: Open Source License registered to PCC.
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-12-22 15:54 +0100