...
1# `IASM` -- Interactive Assembler for Go.
2
3Dual-purpose assembly engine written in pure Golang.
4
5The `x86_64` package was ported from a Python module [`PeachPy`](https://github.com/Maratyszcza/PeachPy), with some adaption to the Go language features.
6
7**Currently, IASM only supports x86_64, because it's the only architecture I am very familiar with.**
8
9### It can be used as a dynamic assembler
10
11This can be used to implement:
12
13* JIT engine
14* Compiler backend
15* And more !
16
17See `x86_64/program_test.go` for more info.
18
19### It can also be used as a static assembler
20
21For `macOS`:
22
23```bash
24git clone https://github.com/chenzhuoyu/iasm
25cd iasm
26go build ./cmd/iasm
27./iasm -h
28./iasm -f macho -D __Darwin__ -o helloworld example/helloworld.s
29./helloworld
30```
31
32### It also contains an interactive REPL shell
33
34Just run IASM without any arguments.
35
36```bash
37./iasm
38```
View as plain text