diff options
author | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-07-03 20:48:56 +0000 |
---|---|---|
committer | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-07-03 20:48:56 +0000 |
commit | 0b390d252cdb5c220520b1c056f44b266147ea00 (patch) | |
tree | 2233dfc1db56f062c1127c334baa8f6336177cff | |
parent | ecc2e67a20ddd959048ff1d11b116f2ed28a2626 (diff) | |
download | fpc-0b390d252cdb5c220520b1c056f44b266147ea00.tar.gz |
+ fccX registers
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@36633 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | compiler/sparc/rspcon.inc | 5 | ||||
-rw-r--r-- | compiler/sparc/rspdwrf.inc | 5 | ||||
-rw-r--r-- | compiler/sparc/rspnor.inc | 2 | ||||
-rw-r--r-- | compiler/sparc/rspnum.inc | 5 | ||||
-rw-r--r-- | compiler/sparc/rsprni.inc | 17 | ||||
-rw-r--r-- | compiler/sparc/rspsri.inc | 31 | ||||
-rw-r--r-- | compiler/sparc/rspstab.inc | 5 | ||||
-rw-r--r-- | compiler/sparc/rspstd.inc | 5 | ||||
-rw-r--r-- | compiler/sparc/rspsup.inc | 5 | ||||
-rw-r--r-- | compiler/sparc64/rsp64con.inc | 4 | ||||
-rw-r--r-- | compiler/sparc64/rsp64dwrf.inc | 4 | ||||
-rw-r--r-- | compiler/sparc64/rsp64nor.inc | 2 | ||||
-rw-r--r-- | compiler/sparc64/rsp64num.inc | 4 | ||||
-rw-r--r-- | compiler/sparc64/rsp64rni.inc | 14 | ||||
-rw-r--r-- | compiler/sparc64/rsp64sri.inc | 26 | ||||
-rw-r--r-- | compiler/sparc64/rsp64stab.inc | 4 | ||||
-rw-r--r-- | compiler/sparc64/rsp64std.inc | 4 | ||||
-rw-r--r-- | compiler/sparc64/rsp64sup.inc | 4 | ||||
-rw-r--r-- | compiler/sparcgen/spreg.dat | 6 |
19 files changed, 114 insertions, 38 deletions
diff --git a/compiler/sparc/rspcon.inc b/compiler/sparc/rspcon.inc index 7489dfb3f8..6e579795cc 100644 --- a/compiler/sparc/rspcon.inc +++ b/compiler/sparc/rspcon.inc @@ -122,6 +122,11 @@ NR_PSR = tregister($05000004); NR_TBR = tregister($05000005); NR_WIM = tregister($05000006); NR_Y = tregister($05000007); +NR_ICC = tregister($05000008); +NR_FCC0 = tregister($0500000a); +NR_FCC1 = tregister($0500000b); +NR_FCC2 = tregister($0500000c); +NR_FCC3 = tregister($0500000d); NR_ASR0 = tregister($04000000); NR_ASR1 = tregister($04000001); NR_ASR2 = tregister($04000002); diff --git a/compiler/sparc/rspdwrf.inc b/compiler/sparc/rspdwrf.inc index 5c50f801f1..1ff0290f57 100644 --- a/compiler/sparc/rspdwrf.inc +++ b/compiler/sparc/rspdwrf.inc @@ -122,6 +122,11 @@ 67, 66, 64, +63, +63, +63, +63, +63, 32, 32, 32, diff --git a/compiler/sparc/rspnor.inc b/compiler/sparc/rspnor.inc index 74d41bea85..a5f247700e 100644 --- a/compiler/sparc/rspnor.inc +++ b/compiler/sparc/rspnor.inc @@ -1,2 +1,2 @@ { don't edit, this file is generated from spreg.dat } -155 +160 diff --git a/compiler/sparc/rspnum.inc b/compiler/sparc/rspnum.inc index f3ee22ab6b..3fce611779 100644 --- a/compiler/sparc/rspnum.inc +++ b/compiler/sparc/rspnum.inc @@ -122,6 +122,11 @@ NR_PSR, NR_TBR, NR_WIM, NR_Y, +NR_ICC, +NR_FCC0, +NR_FCC1, +NR_FCC2, +NR_FCC3, NR_ASR0, NR_ASR1, NR_ASR2, diff --git a/compiler/sparc/rsprni.inc b/compiler/sparc/rsprni.inc index 487c8b6b74..23ffeacae2 100644 --- a/compiler/sparc/rsprni.inc +++ b/compiler/sparc/rsprni.inc @@ -114,11 +114,6 @@ 112, 113, 114, -123, -124, -125, -126, -127, 128, 129, 130, @@ -146,6 +141,11 @@ 152, 153, 154, +155, +156, +157, +158, +159, 115, 116, 117, @@ -153,4 +153,9 @@ 119, 120, 121, -122 +122, +123, +124, +125, +126, +127 diff --git a/compiler/sparc/rspsri.inc b/compiler/sparc/rspsri.inc index 1cec588a2b..1d12185cd2 100644 --- a/compiler/sparc/rspsri.inc +++ b/compiler/sparc/rspsri.inc @@ -1,36 +1,36 @@ { don't edit, this file is generated from spreg.dat } -123, -124, -133, -134, -135, -136, -137, +128, +129, 138, 139, 140, 141, 142, -125, 143, 144, 145, 146, 147, +130, 148, 149, 150, 151, 152, -126, 153, 154, -127, -128, -129, -130, +155, +156, +157, 131, +158, +159, 132, +133, +134, +135, +136, +137, 83, 84, 93, @@ -113,6 +113,10 @@ 42, 43, 44, +124, +125, +126, +127, 33, 116, 115, @@ -132,6 +136,7 @@ 30, 31, 32, +123, 17, 18, 19, diff --git a/compiler/sparc/rspstab.inc b/compiler/sparc/rspstab.inc index 5c50f801f1..1ff0290f57 100644 --- a/compiler/sparc/rspstab.inc +++ b/compiler/sparc/rspstab.inc @@ -122,6 +122,11 @@ 67, 66, 64, +63, +63, +63, +63, +63, 32, 32, 32, diff --git a/compiler/sparc/rspstd.inc b/compiler/sparc/rspstd.inc index aed5aec9d0..e84b68d8c5 100644 --- a/compiler/sparc/rspstd.inc +++ b/compiler/sparc/rspstd.inc @@ -122,6 +122,11 @@ '%tbr', '%wim', '%y', +'%icc', +'%fcc0', +'%fcc1', +'%fcc2', +'%fcc3', '%asr0', '%asr1', '%asr2', diff --git a/compiler/sparc/rspsup.inc b/compiler/sparc/rspsup.inc index 7a1a7cd18c..fb780a7336 100644 --- a/compiler/sparc/rspsup.inc +++ b/compiler/sparc/rspsup.inc @@ -122,6 +122,11 @@ RS_PSR = $04; RS_TBR = $05; RS_WIM = $06; RS_Y = $07; +RS_ICC = $08; +RS_FCC0 = $0a; +RS_FCC1 = $0b; +RS_FCC2 = $0c; +RS_FCC3 = $0d; RS_ASR0 = $00; RS_ASR1 = $01; RS_ASR2 = $02; diff --git a/compiler/sparc64/rsp64con.inc b/compiler/sparc64/rsp64con.inc index 9f5069191d..016dfca34f 100644 --- a/compiler/sparc64/rsp64con.inc +++ b/compiler/sparc64/rsp64con.inc @@ -140,6 +140,10 @@ NR_WIM = tregister($05000006); NR_Y = tregister($05000007); NR_ICC = tregister($05000008); NR_XCC = tregister($05000009); +NR_FCC0 = tregister($0500000a); +NR_FCC1 = tregister($0500000b); +NR_FCC2 = tregister($0500000c); +NR_FCC3 = tregister($0500000d); NR_ASR0 = tregister($04000000); NR_ASR1 = tregister($04000001); NR_ASR2 = tregister($04000002); diff --git a/compiler/sparc64/rsp64dwrf.inc b/compiler/sparc64/rsp64dwrf.inc index e7a45fe81a..8e85feb7b3 100644 --- a/compiler/sparc64/rsp64dwrf.inc +++ b/compiler/sparc64/rsp64dwrf.inc @@ -140,6 +140,10 @@ 64, 63, 62, +63, +63, +63, +63, 32, 32, 32, diff --git a/compiler/sparc64/rsp64nor.inc b/compiler/sparc64/rsp64nor.inc index ee19aaff6c..a7bdacb98f 100644 --- a/compiler/sparc64/rsp64nor.inc +++ b/compiler/sparc64/rsp64nor.inc @@ -1,2 +1,2 @@ { don't edit, this file is generated from spreg.dat } -173 +177 diff --git a/compiler/sparc64/rsp64num.inc b/compiler/sparc64/rsp64num.inc index f8a025114c..054fd1d7d5 100644 --- a/compiler/sparc64/rsp64num.inc +++ b/compiler/sparc64/rsp64num.inc @@ -140,6 +140,10 @@ NR_WIM, NR_Y, NR_ICC, NR_XCC, +NR_FCC0, +NR_FCC1, +NR_FCC2, +NR_FCC3, NR_ASR0, NR_ASR1, NR_ASR2, diff --git a/compiler/sparc64/rsp64rni.inc b/compiler/sparc64/rsp64rni.inc index 8051852a4c..2e5999dcc5 100644 --- a/compiler/sparc64/rsp64rni.inc +++ b/compiler/sparc64/rsp64rni.inc @@ -130,10 +130,6 @@ 128, 129, 130, -141, -142, -143, -144, 145, 146, 147, @@ -162,6 +158,10 @@ 170, 171, 172, +173, +174, +175, +176, 131, 132, 133, @@ -171,4 +171,8 @@ 137, 138, 139, -140 +140, +141, +142, +143, +144 diff --git a/compiler/sparc64/rsp64sri.inc b/compiler/sparc64/rsp64sri.inc index 2729e625e9..b558eea29b 100644 --- a/compiler/sparc64/rsp64sri.inc +++ b/compiler/sparc64/rsp64sri.inc @@ -1,36 +1,36 @@ { don't edit, this file is generated from spreg.dat } -141, -142, -151, -152, -153, -154, +145, +146, 155, 156, 157, 158, 159, 160, -143, 161, 162, 163, 164, +147, 165, 166, 167, 168, 169, 170, -144, 171, 172, -145, -146, -147, +173, +174, 148, +175, +176, 149, 150, +151, +152, +153, +154, 99, 100, 109, @@ -129,6 +129,10 @@ 42, 43, 44, +141, +142, +143, +144, 33, 132, 131, diff --git a/compiler/sparc64/rsp64stab.inc b/compiler/sparc64/rsp64stab.inc index e7a45fe81a..8e85feb7b3 100644 --- a/compiler/sparc64/rsp64stab.inc +++ b/compiler/sparc64/rsp64stab.inc @@ -140,6 +140,10 @@ 64, 63, 62, +63, +63, +63, +63, 32, 32, 32, diff --git a/compiler/sparc64/rsp64std.inc b/compiler/sparc64/rsp64std.inc index 3ed960594e..f6faee0052 100644 --- a/compiler/sparc64/rsp64std.inc +++ b/compiler/sparc64/rsp64std.inc @@ -140,6 +140,10 @@ '%y', '%icc', '%xcc', +'%fcc0', +'%fcc1', +'%fcc2', +'%fcc3', '%asr0', '%asr1', '%asr2', diff --git a/compiler/sparc64/rsp64sup.inc b/compiler/sparc64/rsp64sup.inc index c5b1c29f2f..76b50b1f3c 100644 --- a/compiler/sparc64/rsp64sup.inc +++ b/compiler/sparc64/rsp64sup.inc @@ -140,6 +140,10 @@ RS_WIM = $06; RS_Y = $07; RS_ICC = $08; RS_XCC = $09; +RS_FCC0 = $0a; +RS_FCC1 = $0b; +RS_FCC2 = $0c; +RS_FCC3 = $0d; RS_ASR0 = $00; RS_ASR1 = $01; RS_ASR2 = $02; diff --git a/compiler/sparcgen/spreg.dat b/compiler/sparcgen/spreg.dat index 7b146e5250..d79e85902d 100644 --- a/compiler/sparcgen/spreg.dat +++ b/compiler/sparcgen/spreg.dat @@ -152,8 +152,12 @@ PSR,$05,$00,$04,%psr,65,65 TBR,$05,$00,$05,%tbr,67,67 WIM,$05,$00,$06,%wim,66,66 Y,$05,$00,$07,%y,64,64 -ICC,$05,$00,$08,%icc,63,63,SPARC64 +ICC,$05,$00,$08,%icc,63,63 XCC,$05,$00,$09,%xcc,62,62,SPARC64 +FCC0,$05,$00,$0a,%fcc0,63,63 +FCC1,$05,$00,$0b,%fcc1,63,63 +FCC2,$05,$00,$0c,%fcc2,63,63 +FCC3,$05,$00,$0d,%fcc3,63,63 ; Ancillary State Registers ASR0,$04,$00,$00,%asr0,32,32 |