Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/regular/make-llvm-bitcode-for-javascript
helper script that compiles llvm tools (llvm-as, llvm-dis, opt, etc.) to llvm Bitcode for later transformation into JavaScript by emscripten
https://github.com/regular/make-llvm-bitcode-for-javascript
emscripten llvm llvm-bitcode
Last synced: about 1 month ago
JSON representation
helper script that compiles llvm tools (llvm-as, llvm-dis, opt, etc.) to llvm Bitcode for later transformation into JavaScript by emscripten
- Host: GitHub
- URL: https://github.com/regular/make-llvm-bitcode-for-javascript
- Owner: regular
- Created: 2015-07-20T20:55:20.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-07-22T19:02:44.000Z (over 9 years ago)
- Last Synced: 2024-11-08T08:55:30.051Z (3 months ago)
- Topics: emscripten, llvm, llvm-bitcode
- Language: C
- Size: 129 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# make-llvm-bitcode-for-javascript
helper script that compiles llvm tools (llvm-as, llvm-dis, opt, etc.) to llvm Bitcode for later transformation into JavaScript by emscripten## Why?
This enables you to use llvm in the browser!
## Prerequisites
You need to have emscripten installed.
## Usage
1. download or clone an llvm source tree.
git clone [email protected]:kripken/emscripten-fastcomp.git kripken-fastcomp
2. run ./make-bitcode-for-javascript and provide the path to the llvm source tree./make-bitcode-for-javascript.sh ../kripken-fastcomp
3. Wait!4. Find .bc files in ./bitcode-for-js
```
➜ make-llvm-bitcode-for-javascript git:(master) ls bitcode-for-js
bugpoint.bc llvm-diff.bc llvm-objdump.bc opt.bc
llc.bc llvm-dis.bc llvm-pdbdump.bc pnacl-abicheck.bc
lli-child-target.bc llvm-dsymutil.bc llvm-profdata.bc pnacl-bcanalyzer.bc
lli.bc llvm-dwarfdump.bc llvm-readobj.bc pnacl-bccompress.bc
llvm-ar.bc llvm-extract.bc llvm-rtdyld.bc pnacl-bcdis.bc
llvm-as.bc llvm-link.bc llvm-size.bc pnacl-freeze.bc
llvm-bcanalyzer.bc llvm-lto.bc llvm-stress.bc pnacl-llc.bc
llvm-c-test.bc llvm-mc.bc llvm-symbolizer.bc pnacl-thaw.bc
llvm-cov.bc llvm-mcmarkup.bc macho-dump.bc verify-uselistorder.bc
llvm-cxxdump.bc llvm-nm.bc obj2yaml.bc yaml2obj.bc
```## Compile to JavaScipt
For example:
emcc -Oz -v --llvm-lto 3 llvm-as.bc -o llvm-as.js