mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-30 19:03:16 +03:00
Reformulate some JS to work around a buggy/broken code transformation in one of the Emscripten-driven code optimizers.
FossilOrigin-Name: e1249369d5ec1c582c280b1f578b35d53637fdf1cbd97c16d5ed95b136b83e56
This commit is contained in:
@ -79,7 +79,7 @@ SQLITE_OPT = \
|
||||
ifneq (,$(filter release,$(MAKECMDGOALS)))
|
||||
emcc_opt ?= -Oz -g3 -flto
|
||||
else
|
||||
emcc_opt ?= -O0 -g
|
||||
emcc_opt ?= -O0 -g3
|
||||
# ^^^^ build times for -O levels higher than 0 are painful at
|
||||
# dev-time.
|
||||
endif
|
||||
@ -414,18 +414,18 @@ push-fiddle: $(fiddle_files)
|
||||
.PHONY: o0 o1 o2 o3 os oz
|
||||
o-xtra :=
|
||||
#o-xtra += -flto
|
||||
o0:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-O0 $(o-xtra)" fiddle_opt=-O0
|
||||
o1:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-O1 $(o-xtra)" fiddle_opt=-O1
|
||||
o2:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-O2 $(o-xtra)" fiddle_opt=-O2
|
||||
o3:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-O3 $(o-xtra)" fiddle_opt=-O3
|
||||
os:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-Os $(o-xtra)" fiddle_opt=-Os
|
||||
oz:
|
||||
$(MAKE) clean; $(MAKE) -e "emcc_opt=-Oz $(o-xtra)" fiddle_opt=-Oz
|
||||
o0: clean
|
||||
$(MAKE) -e "emcc_opt=-O0 $(o-xtra)" fiddle_opt=-O0
|
||||
o1: clean
|
||||
$(MAKE) -e "emcc_opt=-O1 $(o-xtra)" fiddle_opt=-O1
|
||||
o2: clean
|
||||
$(MAKE) -e "emcc_opt=-O2 $(o-xtra)" fiddle_opt=-O2
|
||||
o3: clean
|
||||
$(MAKE) -e "emcc_opt=-O3 $(o-xtra)" fiddle_opt=-O3
|
||||
os: clean
|
||||
$(MAKE) -e "emcc_opt=-Os $(o-xtra)" fiddle_opt=-Os
|
||||
oz: clean
|
||||
$(MAKE) -e "emcc_opt=-Oz $(o-xtra)" fiddle_opt=-Oz
|
||||
|
||||
########################################################################
|
||||
# Sub-makes...
|
||||
|
@ -179,8 +179,10 @@ self.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
|
||||
'openFlags', 'prepareFlags', 'resultCodes',
|
||||
'syncFlags', 'udfFlags', 'version'
|
||||
]){
|
||||
for(const [k,v] of Object.entries(wasm.ctype[t])){
|
||||
capi[k] = v;
|
||||
for(const e of Object.entries(wasm.ctype[t])){
|
||||
// ^^^ [k,v] there triggers a buggy code transormation via one
|
||||
// of the Emscripten-driven optimizers.
|
||||
capi[e[0]] = e[1];
|
||||
}
|
||||
}
|
||||
/* Bind all registered C-side structs... */
|
||||
|
Reference in New Issue
Block a user