Extremely bad alien codegen with (optimize (space 0))
Bug #1988683 reported by
Douglas Katzman
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
New
|
Undecided
|
Unassigned |
Bug Description
SB-MD5:
But ironically when (SPACE 0) is _removed_ from the declarations, the result is exactly as expected: type checks, some SAP arithmetic entailing no allocation, and a call to memmove().
And the correct function is smaller by > 2x.
Same thing applies to the whole file. FINALIZE-MD5-STATE is about 1188 bytes with (SPACE 0) but drops to about 850 bytes with the default of (SPACE 1).
Saying that space is unimportant should at worst do nothing, not be actively harmful. Obviously something is badly specified in a POLICY guard on some transform to be so unintuitive.
To post a comment you must log in.