

@15080

8 years 
gb 
@+ vinsn macro doesn't invalidate regmap. (Spent several days
trying …



@15079

8 years 
gb 
NX1%PTRTOINT: %PTRTOINT's result is of *NXTARGETNATURALTYPE*.



@15078

8 years 
gb 
NX2SELECTFPRCANDIDATES: don't use FPR if var isn't SETQed.



@15077

8 years 
gb 
FLOAT: don't coerce doublefloat to single if 2nd arg not supplied.



@15076

8 years 
gb 
VINSNSEQUENCEHASSOMEATTRIBUTEP.



@15075

8 years 
gb 
Make 'vpush1' and 'vpop1' instructions, don't define them as lap …



@15067

8 years 
gb 
Provide definitions (real ones or stubs) of the 4 functions that have …



@15066

8 years 
gb 
When allocating "untargeted" temporary registers, heuristically try to …



@15059

8 years 
gb 
Same as r15058, for x86.



@15058

8 years 
gb 
In ARM2INLINENUMCMP, don't map the condition codes to T/NIL if
we're …



@15052

8 years 
gb 
When processing self tailcalls in X862SELFCALL: don't skip a
form …



@15051

8 years 
gb 
nx2.lisp: New function NX2VARNOTREFFEDBYFORMP. Walks acode, …



@15050

8 years 
gb 
In NX2AFUNCALLOCATEGLOBALREGISTERS, increase var weight if …



@15042

8 years 
gb 
Actually pass the afunc arg to NX2AFUNCALLOCATEGLOBALREGISTERS.



@15041

8 years 
gb 
Work in progress.



@15040

8 years 
gb 
NX1FORM and friends (including alphatizers) take a "context" …



@15039

8 years 
gb 
NXCONSVAR inits VARLOCALBITS slot.



@15038

8 years 
gb 
Add VARLOCALBITS slot to VAR istruct; tracks local (per function,
if …



@15037

8 years 
gb 
Replace (NX2ALLOCATEGLOBALREGISTERS ,@severalafuncslotvalues) …



@15035

8 years 
gb 
In X862TWOUNTARGETEDREGFORMS: if we're called with a nonzero …



@15032

8 years 
gb 
In X862{THREE,FOUR}UNTARGETEDREGFORMS: when a destination register …



@15024

8 years 
gb 
x8664vinsns.lisp: don't (necessarily) clobber ra0 in PUSHLABEL …



@15022

8 years 
gb 
vinsn.lisp: add two new slots to the VINSN struct, to track GPRs and …



@15017

8 years 
gb 
MISCREFCBIT and MISCREFCBITFIXNUM vinsns (both ppc32 and …



@15016

8 years 
gb 
In ARM2AREF3 and ARM2ASET3, be more careful about finding a node …



@15013

8 years 
gz 
Only store *fcompstreamposition* in compiler warnings if it's …



@15007

8 years 
gb 
armasm.lisp: define the canonical (ARMv6T2+) nop instruction.
…



@15006

8 years 
gb 
Short version: D'oh!
Longer version:
Enable *x862generatecasejump* …



@15005

8 years 
gb 
Disable *X86GENERATECASEJUMP* until it works better …



@15004

8 years 
gb 
Do some cases of CASE (and similar constructs) in constant time by …



@15000

8 years 
rme 
In r14968, we overloaded a couple of slots in the x86 xcf
in order to …



@14999

8 years 
gb 
x8664vinsns: actually commit the file.
x8632vinsns: in CJMP vinsn, …



@14998

8 years 
gb 
Conditionally (using *x862generatecasejump*, which defaults to false …



@14994

8 years 
gb 
in x862aref3: don't compare a constant K to dim2 unless we're sure …



@14989

8 years 
gb 
In NX1TRANSITIVELYPUNTBINDINGS, zero out out (VARREFS VAR) after …



@14983

8 years 
gb 
NXADJUSTSETQCOUNT: the value of the VARREFS slot isn't necessarily …



@14982

8 years 
gb 
We've traditionally tried to estimate the number of …



@14980

8 years 
gb 
Add (%nx1operator div2) to *numericacodeops*; this allows us to
do …



@14979

8 years 
gb 
x8632 REQUIRECHARACTER vinsn: how you extract the low byte of a …



@14978

8 years 
gb 
Cutandpaste errors are also known as bugs in "typo propagation".



@14972

8 years 
gb 
Support keeping floattyped variable values in nonvolatile FPRs on …



@14970

8 years 
gb 
In ARM2ELIDEPUSHES: we only have 8 nonvolatile DOUBLEFLOAT registers.



@14969

8 years 
gb 
Try to speed up some cases involving selfcalls where the number
of …



@14967

8 years 
rme 
Same story as r14966, but for x862elidepushes.



@14966

8 years 
rme 
In arm2elidepushes, instead of pushing/popping a doublefloat …



@14959

8 years 
gb 
%HARDREGSPECVALUE masks its argument by the platformspecific
value …



@14958

8 years 
rme 
Make regssetinvinsnsequence work.



@14957

8 years 
gb 
fldmiad definition: count operand is :DRCOUNT
PARSEIMM16OPERAND: …



@14956

8 years 
gb 
In SAVESTACKARGSFRAME: want to use X8664::NODESIZE if targeting …



@14955

8 years 
gb 
ARMCONSTANTINDEX: (CDR (ASSOC ...)), not (ASSOC ...).



@14954

8 years 
rme 
temppushsinglefloat: :tsp attribute => :csp (no tsp on ARM).



@14951

8 years 
rme 
Add a couple instructions, correct some instruction
masks for the …



@14948

8 years 
gb 
Fix cutandpaste mishaps.



@14945

8 years 
rme 
Add fmacd instruction. (We could add similar others easily
when the …



@14943

8 years 
gb 
%FIXNUM{REFSET}DOUBLEFLOAT support in x86 backends.



@14942

8 years 
gb 
%FIXNUM{REFSET}DOUBLEFLOAT support in PPC backends.



@14941

8 years 
gb 
CASE optimizations were accidentally enabled in the last commit;
they …



@14940

8 years 
gb 
In things defined by DEFARM2SFOP and DEFARM2DFOP, try to ensure …



@14939

8 years 
gb 
Change the rules a bit to allow the LR to point to arbitrary …



@14938

8 years 
gb 
PUSHFPRS, POPFPRS: save/restore nonvolatile FPRs (as doubles) …



@14922

8 years 
gb 
In ARM disassembler, print apparent fixnumvalued operands using
QUOTE …



@14909

8 years 
gb 
Back out of r14899 (ARM backend changes): at least one of those …



@14899

8 years 
gb 
Try to allow some cases of self calls to skip argcount checks, …



@14898

8 years 
gb 
CJMP vinsn generates prologue for a computed jump.



@14897

8 years 
gb 
push/pop multiple FPRs.



@14893

8 years 
gb 
ACODECONSTANTP returns (values constantvalue constantp), not
what …



@14890

8 years 
gb 
Add NX2RECONSTRUCTCASE: if an IF form appears to be the expansion of …



@14852

8 years 
rme 
When assembling for a 32bit x86 target, use the modrm encoding (and …



@14848

8 years 
gb 
Fix transposed args in FPRMASKFORVREG.



@14847

8 years 
gb 
Coercing a DOUBLEFLOAT to a SINGLEFLOAT can overflow; provide
"safe" …



@14846

8 years 
gb 
Missed some (fairly visible) cases where ARM FPR targeting had to
be …



@14843

8 years 
gb 
Provide some help in determining arithmeticerror operation/operands …



@14838

8 years 
gb 
Partial support for determining arithmeticerror operation/operands
on …



@14834

8 years 
gb 
Redo the common FPRtracking/targeting, so that aliased FPRs (as on …



@14823

8 years 
gb 
Save the (C) nonvolatile FPRs (d8d15, which are aliased to s16s31) …



@14822

8 years 
gb 
Use acode optimizers in x86 backend.



@14819

8 years 
gz 
Add codenoteacodestart/endpos



@14810

8 years 
rme 
Repair bad indentation from copyandpaste in x86printdilap.



@14809

8 years 
rme 
New parameter ccl::*disassembleverbose*.
In the x86 disassembler, …



@14807

8 years 
gb 
Define and export the functions ALLOWHEAPALLOCATION and …



@14793

8 years 
gb 
Add a new "strictstructuretypechecking" hook to compilerpolicy …



@14787

8 years 
gb 
Try to straighten out ARM2GETFLOAT and supporting vinsns.



@14780

8 years 
gb 
In ACODEOPTIMIZESUB2, actually generate some code for the …



@14778

8 years 
gb 
Constantfold in ACODEOPTIMIZEMINUS1; call it in the ARM backend.



@14777

8 years 
gb 
Floatingpoint negation in the x86 backends; this time, don't depend …



@14776

8 years 
gb 
Floatingpoint negation in the x86 backends.



@14775

8 years 
gb 
Unary fp negation in the PPC backend, and in acode.



@14774

8 years 
gb 
Back out of r14758, too.



@14773

8 years 
gb 
Back out of r14759.



@14772

8 years 
rme 
Teach lisp assembler about mla (multiply accumulate). Use it in …



@14771

8 years 
gb 
Use the LR to point into doublefloat vectors when getting/setting …



@14768

8 years 
gb 
!ALLOCEABICFRAME: can save a few instructions, since the size
of …



@14765

8 years 
gb 
Print the relative PC every few instructions.



@14764

8 years 
gb 
The CHECKNARGS ARM lapmacro has handled the case when min and max …



@14763

8 years 
gb 
Floatingpoint negation.
Tighten up some FP memory access stuff.
Use …



@14762

8 years 
gb 
Floatingpoint negation.
Tighten up some FP memory access stuff.
Use …



@14761

8 years 
gb 
Don't use LOADTIMEVALUE in new REQUIRESTRUCTURETYPE stuff, since …



@14759

8 years 
gb 
Treat unary  as subtraction from 0, maybe turn that to negation in …



@14758

8 years 
gb 
In ACODEOPTIMIZESUB2, turn subtraction from 0 into negation.



@14757

8 years 
gb 
New operators for %SINGLEFLOATNEGATE, %DOUBLEFLOATNEGATE.


