diff --git a/src/mono/browser/build/BrowserWasmApp.targets b/src/mono/browser/build/BrowserWasmApp.targets
index 484d3486c5eaa8..d75513604304c6 100644
--- a/src/mono/browser/build/BrowserWasmApp.targets
+++ b/src/mono/browser/build/BrowserWasmApp.targets
@@ -260,6 +260,8 @@
$(_EmccOptimizationFlagDefault)
$(EmccCompileOptimizationFlag)
+ -O2
+ $(WasmCompileOptimizationFlag)
-O2
$(WasmCompileOptimizationFlag)
$(EmccLinkOptimizationFlag)
@@ -406,6 +408,7 @@
+ <_BitcodeCompileFlags Include="$(WasmBitcodeCompileOptimizationFlag)" />
<_BitcodeCompileFlags Include="@(_EmccCommonFlags)" />
<_BitcodeCompileFlags Include="$(EmccExtraBitcodeCompilationFlags)" />
diff --git a/src/mono/wasi/build/WasiApp.targets b/src/mono/wasi/build/WasiApp.targets
index c5ecf84ad0c73c..cad25a76067295 100644
--- a/src/mono/wasi/build/WasiApp.targets
+++ b/src/mono/wasi/build/WasiApp.targets
@@ -148,6 +148,8 @@
$(_WasiClangOptimizationFlagDefault)
$(WasiClangCompileOptimizationFlag)
+ -O2
+ $(WasiClangCompileOptimizationFlag)
-O2
$(WasiClangCompileOptimizationFlag)
$(WasiClangLinkOptimizationFlag)
@@ -265,6 +267,7 @@
+ <_BitcodeCompileFlags Include="@(WasiBitcodeCompileOptimizationFlag)" />
<_BitcodeCompileFlags Include="@(_WasiClangCommonFlags)" />
<_BitcodeCompileFlags Include="$(WasiClangExtraBitcodeCompileFlags)" />
diff --git a/src/mono/wasm/build/WasmApp.Common.targets b/src/mono/wasm/build/WasmApp.Common.targets
index f06b9a1261fe5e..e9cda6ccea50e1 100644
--- a/src/mono/wasm/build/WasmApp.Common.targets
+++ b/src/mono/wasm/build/WasmApp.Common.targets
@@ -44,6 +44,8 @@
- $(EmccLinkOptimizationFlag) - Optimization flag to use for the link step
- $(EmccCompileOptimizationFlag) - Optimization flag to use for compiling native files
+ - $(WasmBitcodeCompileOptimizationFlag)
+ - Optimization flag to use for compiling bitcode files
- $(EmccFlags) - Emcc flags used for both compiling native files, and linking
- $(EmccExtraLDFlags) - Extra emcc flags for linking