I noticed that jak 3's compilation was spending a lot of time accessing the unordered_maps we use to store constants and symbol types.
I repurposed the EnvironmentMap originally made for GOOS for this. It turns out that we were copying the entire constant map whenever we encountered a deftype, and fixed that too.
This speeds up jak3 compiles from ~16 to 11 seconds for me.
I noticed that jak 3's compilation was spending a lot of time accessing the
unordered_map
s we use to store constants and symbol types.I repurposed the
EnvironmentMap
originally made for GOOS for this. It turns out that we were copying the entire constant map whenever we encountered adeftype
, and fixed that too.This speeds up jak3 compiles from ~16 to 11 seconds for me.