diff options
author | chriseth <chris@ethereum.org> | 2016-11-26 01:07:10 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-26 01:07:10 +0800 |
commit | 9c2ed33e9aa2e2f037cbe4fa7491bf4bd8b5616b (patch) | |
tree | 1cc882f0bbf43817fa6fb1aa380aaa651aceff03 | |
parent | d7677826d478efde1d9ded200fb40255aa082672 (diff) | |
parent | 7bbaeedc317096ef89a10c87313f15b020d5adee (diff) | |
download | dexon-solidity-9c2ed33e9aa2e2f037cbe4fa7491bf4bd8b5616b.tar.gz dexon-solidity-9c2ed33e9aa2e2f037cbe4fa7491bf4bd8b5616b.tar.zst dexon-solidity-9c2ed33e9aa2e2f037cbe4fa7491bf4bd8b5616b.zip |
Merge pull request #1342 from ethereum/emscripten-codesize
Emscripten code size improvements [WIP TEST]
-rw-r--r-- | cmake/EthCompilerSettings.cmake | 3 | ||||
-rwxr-xr-x | scripts/travis-emscripten/build_emscripten.sh | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/cmake/EthCompilerSettings.cmake b/cmake/EthCompilerSettings.cmake index 0c307288..c734423b 100644 --- a/cmake/EthCompilerSettings.cmake +++ b/cmake/EthCompilerSettings.cmake @@ -155,6 +155,9 @@ if (("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU") OR ("${CMAKE_CXX_COMPILER_ID}" MA if (EMSCRIPTEN) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --memory-init-file 0 -O3 -s LINKABLE=1 -s DISABLE_EXCEPTION_CATCHING=0 -s NO_EXIT_RUNTIME=1 -s ALLOW_MEMORY_GROWTH=1 -s NO_DYNAMIC_EXECUTION=1") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdata-sections -ffunction-sections -Wl,--gc-sections") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s NO_FILESYSTEM=1 -s AGGRESSIVE_VARIABLE_ELIMINATION=1") add_definitions(-DETH_EMSCRIPTEN=1) endif() endif() diff --git a/scripts/travis-emscripten/build_emscripten.sh b/scripts/travis-emscripten/build_emscripten.sh index f5374a33..a6eb01a0 100755 --- a/scripts/travis-emscripten/build_emscripten.sh +++ b/scripts/travis-emscripten/build_emscripten.sh @@ -95,4 +95,8 @@ emmake make -j 4 cd .. cp build/solc/soljson.js ./ +OUTPUT_SIZE=`ls -la build/solc/soljson.js` + +echo "Emscripten output size: ${OUTPUT_SIZE}" + echo -en 'travis_fold:end:compiling_solidity\\r' |