[16197d] by Lutz Euler
Fix expected result for a character comparison test under non-unicode.
The test "character.pure.lisp / :case-insensitive-char-comparisons
[8a19ff] by Stas Boukarev
Fix a regression in APPEND type derivation.
Do not just test the arguments for validity by being subtypes or
Regression since f32ee7d.."Better type derivation for APPEND, NCONC,
 by Paul Khuong
Stricter precondition when strength reducing variable right shifts
Looking at the node's derived type is safer than a result type
Remove a redundant AVER too. If people call %ash/right directly and
Reported by Eric Marsden on sbcl-devel; further reduced test cases
[17dd0a] by Paul Khuong
Compute single-value-type correctly in the absence of required values
* For the longest time (at least 2003), we didn't take defaulting
Thanks to Attila Lendvai for the reasonable test case.
* Also, fix a typo in a VOP name for EQ of fixnum values.
[0b3f5c] by Paul Khuong
Revert "Fix (aref vector (+ i constant)) with i negative on x86oids"
This reverts commit 5d3a728a1d9a91e7218fe53f12f96ab63b846810.
The current code is still wrong, but better the bugs we've always had
Kept the test case, and added the one we failed on.
[0e6592] by Paul Khuong
Robustify specialised IF/IF conversion introduced in 729ce57
* When unlinking a node from its destination LVAR, always mark
* The changes make a widely-used ir1-manipulation function safer,
* Reported by James Y Knight on IRC and Fila Kolodny on Launchpad
[5d3a72] by Paul Khuong
Fix (aref vector (+ i constant)) with i negative on x86oids
* The VOPs for indexed access with constant offset take a fixnum
* Fix FOLD-INDEX-ADDRESSING: don't convert if the resulting index
* Test case by Douglas Katzman.
[808d81] by Paul Khuong
Improved SIMD-PACK manipulation VOPs on x86-64
* Tighten naive (and, in one case, wrong-looking) lifetime
* Exploit the coalescing by replacing explicit move instructions
* Microoptimise away some PSRLDQ by 0.
[ab705e] by Paul Khuong
Preserve types when swapping constant arguments and commute LOGTEST
* Add a transform to ensure any constant argument to LOGTEST is in
* Commutative-arg-swap used to often cause suboptimal code: subsequent
[60deeb] by Paul Khuong
Simpler word-sized variable right shifts on x86 and x86-64
* Known negative shifts are converted to another function that
* The transforms and VOPs are conditionalised on ash-right-vops,
* The new transforms trigger a lot of notes; this is suboptimal,
[46602b] by Paul Khuong
Evaluate global inline functions via their fdefinition
* When inlinable global functions are evaluated for value, emit
* Make sure we only generate code to refer to XEPs and fail early
* Fixes lp#1035721.
[c1ec38] by Paul Khuong
Truthful error reporting for complicated compile-time type mismatches
Type mismatches for multiple-use LVARs (i.e. resulting from conditional
Such expressions used to be reported as type mismatches with the constant
Do the same when warning about non-EQ-comparable CATCH tags.