<commit_before>[![Build Status](https://travis-ci.org/WebAssembly/wasm-e2e.svg?branch=master)](https://travis-ci.org/WebAssembly/wasm-e2e)

# wasm-e2e

This repository contains tools and scripts to compile C/C++ to a WebAssembly
binary format, and run it.

Currently this includes:
- LLVM: for compiling C source to the ".s" format, which is the current
  output of WebAssembly by the LLVM backend.
- wasmate: for converting ".s" to the S-expression format as defined in the
  [spec repo](https://github.com/WebAssembly/spec).
- sexpr-wasm: for converting the S-expression format to the v8-native binary
  format.
- v8-native: for running the binary.

At this time, the contents of this repository are under development and known
to be incomplet and inkorrect.

Participation is welcome, though many of the changes will need to be landed in
other repositories.

## Cloning/Updating

Clone the repo, update the submodules, and update LLVM:

```
$ git clone https://github.com/WebAssembly/wasm-e2e
$ git submodule update --init
$ scripts/update-llvm.sh
```

LLVM is not included as a submodule because it is quite large and requires a
repo to be installed inside another repo. The `update-llvm.sh` script clones
with `--depth 5000` to reduce the download size.

Updating the repo is almost the same:

```
$ git pull origin
$ git submodule update
$ scripts/update-llvm.sh
```

## Building

To build all the tools:

```
$ scripts/build-all.sh
```

You can also build each component separately:<commit_msg>Correct README: git pull origin master<commit_after>[![Build Status](https://travis-ci.org/WebAssembly/wasm-e2e.svg?branch=master)](https://travis-ci.org/WebAssembly/wasm-e2e)

# wasm-e2e

This repository contains tools and scripts to compile C/C++ to a WebAssembly
binary format, and run it.

Currently this includes:
- LLVM: for compiling C source to the ".s" format, which is the current
  output of WebAssembly by the LLVM backend.
- wasmate: for converting ".s" to the S-expression format as defined in the
  [spec repo](https://github.com/WebAssembly/spec).
- sexpr-wasm: for converting the S-expression format to the v8-native binary
  format.
- v8-native: for running the binary.

At this time, the contents of this repository are under development and known
to be incomplet and inkorrect.

Participation is welcome, though many of the changes will need to be landed in
other repositories.

## Cloning/Updating

Clone the repo, update the submodules, and update LLVM:

```
$ git clone https://github.com/WebAssembly/wasm-e2e
$ git submodule update --init
$ scripts/update-llvm.sh
```

LLVM is not included as a submodule because it is quite large and requires a
repo to be installed inside another repo. The `update-llvm.sh` script clones
with `--depth 5000` to reduce the download size.

Updating the repo is almost the same:

```
$ git pull origin master
$ git submodule update
$ scripts/update-llvm.sh
```

## Building

To build all the tools:

```
$ scripts/build-all.sh
```

You can also build each component separately:
{'fraction_non_alphanumeric': 0.0932762030323006, 'fraction_numerical': 0.0065919578114700065, 'mean_word_length': 4.152801358234296, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4381086', 'n_tokens_mistral': 932, 'n_tokens_neox': 894, 'n_words': 379}