doc: README.md
This commit is contained in:
parent
afac87e1a9
commit
01a8281bc9
29
README.md
Normal file
29
README.md
Normal file
@ -0,0 +1,29 @@
|
||||
# pxasme
|
||||
|
||||
A single-pass x86_64 assembler that emits relocatable ELF64 objects.
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
pxasme -Src myapp.asm -Dest myapp.o
|
||||
ld -s -o myapp myapp.o
|
||||
./myapp
|
||||
```
|
||||
|
||||
## Status
|
||||
|
||||
- [X] Lexer
|
||||
- [X] "Variables" in data/rodata (u8, u16, u32, u64, sz)
|
||||
- [X] C-style addressing (bare or `&`)
|
||||
- [ ] Unified public/private, import/export syntax
|
||||
- [X] State machine parser for opcode arguments
|
||||
- [X] Parser
|
||||
- [X] mov, ret, syscall, sections, variables
|
||||
- [X] strlen($var) compile-time function
|
||||
- [ ] more isa ops
|
||||
- [X] Code generation
|
||||
- [X] Generate ELF64 binaries
|
||||
- [X] Relocations
|
||||
- [X] `R_X86_64_32S` (n.b. not PIC)
|
||||
- [X] `R_X86_64_64`
|
||||
- [ ] Freestanding mode
|
Loading…
Reference in New Issue
Block a user