X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=OPTIMIZATIONS;h=a702c7d2ba18edf5f3899d312027286d0664fcdd;hb=1aa73454bf741850a2c7c2df326470727acec6ad;hp=d8d018f3f164a5a9d57343e495ce1b445627ca77;hpb=d04b59670ab69405c4115ea3caac99fd62a4b7ab;p=sbcl.git diff --git a/OPTIMIZATIONS b/OPTIMIZATIONS index d8d018f..a702c7d 100644 --- a/OPTIMIZATIONS +++ b/OPTIMIZATIONS @@ -218,3 +218,17 @@ SBCL cannot derive upper bound for I and uses generic arithmetic here: (So the constraint propagator or a possible future SSA-convertor should know the connection between an NLE and its CLEANUP.) +-------------------------------------------------------------------------------- +#27 +Initialization of stack-allocated arrays is inefficient: we always +fill the vector with zeroes, even when it is not needed (as for +platforms with conservative GC or for arrays of unboxed objectes) and +is performed later explicitely. +-------------------------------------------------------------------------------- +#28 +a. Accessing raw slots in structure instances is more inefficient than +it could be; if we placed raw slots before the header word, we would +not need to do arithmetic at runtime to access them. (But beware: +this would complicate handling of the interior pointer). + +b. (Also note that raw slots are currently disabled on HPPA) \ No newline at end of file