petrbalvin
f1960febdc
feat(lint): add unused-label and invalid-textflag rules
...
Assisted-by: MiMo V2.5 Pro
2026-08-21 00:35:21 +02:00
petrbalvin
ae550cc05a
fix(asm): add cross-package GOOBJ resolution for riscv64, loong64, arm64
...
Assisted-by: MiMo V2.5 Pro
2026-08-21 00:35:21 +02:00
petrbalvin
cc50035375
fix(cmd): update asm help text to list arm64 as supported
...
Assisted-by: MiMo V2.5 Pro
2026-08-21 00:35:21 +02:00
petrbalvin
8054fff9ac
chore: prepare release v0.31.1
...
Test / vet (push) Successful in 47s
Release / build (amd64, linux) (push) Successful in 55s
Release / build (arm64, linux) (push) Successful in 51s
Release / build (loong64, linux) (push) Successful in 46s
Release / build (riscv64, linux) (push) Successful in 42s
Test / test (push) Successful in 2m29s
Release / release (push) Successful in 19s
Test / build (push) Successful in 42s
Assisted-by: MiMo V2.5 Pro
2026-08-20 22:35:11 +02:00
petrbalvin
6a79c35bf7
fix(version): bump version to 0.31.0 in justfile and main.go
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 22:35:11 +02:00
petrbalvin
6f4f2096e9
chore: prepare release v0.31.0
Release / build (amd64, linux) (push) Successful in 42s
Release / build (arm64, linux) (push) Successful in 40s
Release / build (loong64, linux) (push) Successful in 42s
Release / build (riscv64, linux) (push) Successful in 45s
Release / release (push) Successful in 18s
2026-08-20 16:24:33 +02:00
petrbalvin
56630f8624
chore(toolchain): upgrade to Go 1.27
Test / vet (push) Successful in 1m5s
Test / test (push) Successful in 2m33s
Test / build (push) Successful in 40s
2026-08-20 16:03:26 +02:00
petrbalvin
459f4a2b6e
fix(test): add arm64 encoding tests for Go 1.26 coverage compatibility
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 15:44:23 +02:00
petrbalvin
5d66343488
fix(goobj): make R_DWTXTADDR_U4 relocation type Go-version-aware
...
The relocation type number shifted between Go 1.26 (103) and Go 1.27
(106)
because new LoongArch relocations were inserted. Detect the Go version
at
runtime and use the correct value.
2026-08-20 15:35:39 +02:00
petrbalvin
48334c4d5a
docs: remove completed roadmap phases, fix licence description
2026-08-20 15:01:57 +02:00
petrbalvin
7629963cab
chore: fix project conventions — .gitignore, CHANGELOG categories, docs naming
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 14:47:39 +02:00
petrbalvin
97951cbeb6
feat(asm): extend arm64 encoder with atomics, bitfield, SIMD and more test kernels
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 14:31:15 +02:00
petrbalvin
6e73f59e78
feat(asm): extend arm64 encoder with FP, conditional select, CRC32 and tests
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 14:07:12 +02:00
petrbalvin
4221ec5741
feat(asm): add AArch64 arm64 encoder with ground-truth verification
...
Assisted-by: MiMo V2.5 Pro
2026-08-20 13:33:39 +02:00
petrbalvin
01dcc3b86e
revert(toolchain): restore go1.26 in CI
Test / vet (push) Successful in 43s
Test / test (push) Failing after 1m55s
Test / build (push) Skipped
Release / build (amd64, linux) (push) Successful in 40s
Release / build (arm64, linux) (push) Successful in 37s
Release / build (loong64, linux) (push) Successful in 38s
Release / build (riscv64, linux) (push) Successful in 58s
Release / release (push) Successful in 22s
2026-08-13 18:34:20 +02:00
petrbalvin
b08885bd31
chore(release): prepare v0.30.0
...
Test / vet (push) Failing after 17s
Test / test (push) Skipped
Test / build (push) Skipped
Assisted-by: DeepSeek V4 Pro
2026-08-13 18:27:12 +02:00
petrbalvin
c05c53452f
fix(asm): encode RISC-V CALL sym(SB) as JAL
...
Test / vet (push) Successful in 47s
Test / test (push) Failing after 2m9s
Test / build (push) Skipped
Assisted-by: DeepSeek V4 Pro
2026-08-13 18:12:22 +02:00
petrbalvin
681a449c01
fix(asm): match RISC-V branch and jump encodings
2026-08-13 17:57:10 +02:00
petrbalvin
31a2cee382
fix(asm): materialise RISC-V MOV immediates
Test / vet (push) Successful in 44s
Test / test (push) Failing after 1m56s
Test / build (push) Skipped
2026-08-13 17:41:16 +02:00
petrbalvin
3bc7c18bc3
fix(asm): materialise large RISC-V immediates
...
Assisted-by: DeepSeek V4 Pro
2026-08-13 16:04:08 +02:00
petrbalvin
f0512a4e1c
fix(asm): complete RISC-V compressed loads/stores and word arithmetic
...
Assisted-by: DeepSeek V4 Pro
2026-08-13 15:42:38 +02:00
petrbalvin
373c09f725
fix(asm): correct RISC-V operand order and complete RVC compression
...
Assisted-by: DeepSeek V4 Pro
2026-08-13 15:13:31 +02:00
petrbalvin
b78b6c5004
fix(asm): correct RISC-V frame layout and RVC encodings
...
Assisted-by: GLM 5.2
2026-08-13 14:41:57 +02:00
petrbalvin
9b5c878f9e
feat(asm): emit RISC-V GOOBJ with the shared emitter
...
Assisted-by: DeepSeek V4 Pro
2026-08-13 12:07:29 +02:00
petrbalvin
31ee8e7941
feat(asm): add LoongArch encoder with ELF and GOOBJ emission
...
Assisted-by: DeepSeek V4 Pro
2026-08-13 11:24:44 +02:00
petrbalvin
2d1176e045
feat(asm): resolve external GOOBJ symbols from archive data
Test / vet (push) Successful in 1m2s
Test / test (push) Failing after 2m5s
Test / build (push) Skipped
2026-08-08 16:18:56 +02:00
petrbalvin
2a27a3a52b
docs: add BSD-3-Clause headers to generated files and update CI docs
2026-08-07 22:43:40 +02:00
petrbalvin
cde7d0f96a
docs: document watchpoint slot tracking and update debugger commands
2026-08-07 22:27:49 +02:00
petrbalvin
d7ee1b78d4
feat: drop Mach-O and macOS support, Linux-only
2026-08-07 22:20:26 +02:00
petrbalvin
30c53565a7
build: align just test coverage gate with CI package list
...
Test / vet (push) Successful in 43s
Release / build (amd64, linux) (push) Successful in 41s
Release / build (arm64, linux) (push) Successful in 38s
Release / build (loong64, linux) (push) Successful in 39s
Release / build (riscv64, linux) (push) Successful in 38s
Test / test (push) Successful in 1m58s
Release / release (push) Successful in 18s
Test / build (push) Successful in 37s
Assisted-by: GLM 5.2
2026-08-07 21:34:09 +02:00
petrbalvin
ebd8ab8a3c
test: gate go-libraries integration tests behind -tags=integration
...
Test / vet (push) Successful in 44s
Test / test (push) Successful in 2m8s
Test / build (push) Successful in 40s
Assisted-by: GLM 5.2
2026-08-07 21:28:24 +02:00
petrbalvin
176d856f67
docs: remove go-libraries kernel references from README and CHANGELOG
Test / vet (push) Successful in 45s
Test / test (push) Failing after 2m1s
Test / build (push) Skipped
2026-08-07 21:10:16 +02:00
petrbalvin
eace06bbd6
fix(verify): remove all go-libraries kernel dependencies from tests
2026-08-07 21:06:14 +02:00
petrbalvin
f97bea61c5
test(verify): add FuzzResult.String and arrayLen tests to lift coverage over 80%
...
Test / vet (push) Successful in 49s
Test / test (push) Failing after 2m14s
Test / build (push) Skipped
Assisted-by: GLM 5.2
2026-08-05 23:16:52 +02:00
petrbalvin
19b37569c0
fix(verify): fix flaky JIT tests with global buffers and KeepAlive
Test / vet (push) Successful in 49s
Test / test (push) Failing after 2m9s
Test / build (push) Skipped
2026-08-05 23:09:54 +02:00
petrbalvin
23b3d3e152
docs: fold development changes into v0.29.0, document --call/--buf/--map
2026-08-05 21:15:05 +02:00
petrbalvin
b0c62be8ce
feat(verify): add --call and --buf flags for single-function invocation
...
Assisted-by: GLM 5.2
2026-08-05 20:46:39 +02:00
petrbalvin
ece0d3f127
feat(cli): add --map flag to diff for comparing differently-named
...
functions
2026-08-05 20:20:47 +02:00
petrbalvin
ad6e3360df
feat: release v0.29.0 with RISC-V GOOBJ, debugger enhancements, and new
...
Test / vet (push) Successful in 47s
Test / test (push) Failing after 2m4s
Test / build (push) Skipped
CLI commands
2026-08-05 20:08:56 +02:00
petrbalvin
49566de7fb
feat(asm): add did-you-mean suggestions for undefined labels
...
Assisted-by: DeepSeek V4 Pro
2026-08-05 18:52:00 +02:00
petrbalvin
6228d77566
feat(cli): add gasm profile command for basic-block structure
...
Assisted-by: DeepSeek V4 Pro
2026-08-05 16:41:00 +02:00
petrbalvin
c0e280ee3c
feat(cli): add gasm diff command for comparing assembly encodings
...
Assisted-by: DeepSeek V4 Pro
2026-08-05 14:23:00 +02:00
petrbalvin
2d45dbf7ff
feat(lsp): add go-to-definition for labels
2026-08-05 11:08:00 +02:00
petrbalvin
8ddac0135e
feat(asm): add GOOBJ emission for RISC-V
2026-08-05 09:27:00 +02:00
petrbalvin
f58a4fe51d
feat(debug): add named buffer allocation with pattern filling
Test / vet (push) Successful in 45s
Test / test (push) Successful in 1m58s
Test / build (push) Successful in 42s
2026-08-04 23:55:25 +02:00
petrbalvin
5cb7e3e231
feat(verify): combine ABI checks with fuzzing for deep-path testing
2026-08-04 22:26:04 +02:00
petrbalvin
36bbc0c13b
feat(verify): store crashing input in FuzzResult for reproducibility
...
Test / vet (push) Successful in 44s
Test / test (push) Successful in 1m59s
Test / build (push) Successful in 36s
Assisted-by: DeepSeek V4 Pro
2026-08-04 21:58:53 +02:00
petrbalvin
32afa3449f
feat(debug): add YMM vector register display via PTRACE_GETFPREGS
...
Assisted-by: DeepSeek V4 Pro
2026-08-04 21:55:28 +02:00
petrbalvin
2ab6b9eb84
ci: add Gitea CI workflows and release pipeline
...
Test / vet (push) Successful in 44s
Release / build (amd64, linux) (push) Successful in 39s
Release / build (arm64, linux) (push) Successful in 38s
Release / build (loong64, linux) (push) Successful in 39s
Release / build (riscv64, linux) (push) Successful in 39s
Test / test (push) Successful in 1m58s
Release / release (push) Successful in 18s
Test / build (push) Successful in 37s
Assisted-by: DeepSeek V4 Pro
2026-08-03 19:42:05 +02:00
petrbalvin
f41a86b660
feat(asm): add RISC-V ELF relocatable object emission and SB relocation
...
support
2026-08-03 08:51:00 +02:00
petrbalvin
7721353d44
feat(asm): add RVC compression for branches, arithmetic, and FP
...
Assisted-by: DeepSeek V4 Pro
2026-08-03 01:08:00 +02:00
petrbalvin
243b087116
feat(riscv): add MOV pseudo-instruction and RVC compressed encoding
...
Assisted-by: DeepSeek V4 Pro
2026-08-02 18:22:00 +02:00
petrbalvin
eee7a6d4a4
feat(riscv): add RISC-V RV64A, FP and CSR instruction support
...
Assisted-by: Kimi K3
2026-08-02 11:45:00 +02:00
petrbalvin
801fb963c9
fix(verify): enlarge fuzz buffers so slice-based kernels can be fuzzed
...
directly
2026-08-02 06:12:00 +02:00
petrbalvin
a2acc9b5a3
feat(riscv): add prologue, epilogue and frame pseudo-register support
...
Assisted-by: Kimi K3
2026-08-02 00:18:00 +02:00
petrbalvin
f860bf8ce6
feat(asm): add RISC-V encoder with RV64I/RV64M instruction formats
...
Assisted-by: Kimi K3
2026-08-01 19:51:00 +02:00
petrbalvin
e7df5e5225
test(debug): add unit tests for condition evaluation, line lookup and
...
RFLAGS decoding
Assisted-by: MiniMax M3
2026-08-01 14:33:00 +02:00
petrbalvin
d114b3412c
feat(debug): complete the interactive debugger with disassembly, breakpoints, watchpoints and execution control
...
Assisted-by: DeepSeek V4 Pro
2026-08-01 09:47:00 +02:00
petrbalvin
c77d68018c
docs: add the full documentation surface — AGENTS, CONTRIBUTING, cli and development references
...
Assisted-by: DeepSeek V4 Flash
2026-08-01 05:22:00 +02:00
petrbalvin
89d633f4bb
feat(debug): add interactive ptrace debugger MVP — single-step, regs, breakpoints, labels
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-01 02:34:00 +02:00
petrbalvin
f20e0bf1e7
fix(verify): subprocess isolation for --fuzz, partial functions report CRASH gracefully
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
1a45b66139
feat(verify): add universal --fuzz differential testing driven by // func signatures
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
382efe538a
feat(verify): add universal --ground-truth verification against go tool asm
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
f8d28a42ba
feat(verify): complete the analyze family and add stereo16 differential tests
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
51a2854d7f
feat(verify): add analyzeO2/Res and decodeMono24 differential tests
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
c234c3dd5b
feat(verify): add analyzeO1Range and fastStereoSums differential tests
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
9262990ce5
feat(verify): extend differential tests to go-flac and AVX-512, add --abi/--profile CLI flags
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
d9f6167a4d
feat(verify): add basic-block enumeration and path-diversity profiling
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
f5088c52fc
feat(verify): add runtime ABI checks with sentinel registers and red-zone canary
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
f52e23f1bc
feat(verify): add differential fuzz testing against a portable Go reference
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
c9775c2b95
feat(verify): add the JIT execution substrate and gasm verify subcommand
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
5af12e15ac
feat(asm): add the GPR-interchanging conversions, completing the amd64 EVEX set
...
Assisted-by: Qwen 3.8 Max Preview
2026-08-02 23:11:30 +02:00
petrbalvin
db8e3fc160
docs: record the deferred GOOBJ external-symbols decision
2026-08-02 23:11:30 +02:00
petrbalvin
1312122a99
feat(asm): complete the EVEX conversions, narrowing and mask-vector moves
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-20 16:05:08 +02:00
petrbalvin
11f962fbcc
feat(asm): add the EVEX FP helper tail and gather/scatter with VSIB
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-19 15:58:48 +02:00
petrbalvin
ee68859beb
feat(asm): add the wider EVEX set and the rounding, SAE and broadcast suffixes
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-18 15:47:59 +02:00
petrbalvin
0920edb092
feat(asm): emit GOOBJ objects that link directly with the Go toolchain
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-17 18:57:04 +02:00
petrbalvin
900c9772b1
feat(asm): emit linkable ELF and Mach-O objects with external symbols
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-16 20:52:20 +02:00
petrbalvin
b914c0e390
feat(asm): add the EVEX floating-point and conversion set
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-15 17:13:28 +02:00
petrbalvin
0f3146ff2c
feat(asm): add EVEX masking, zeroing and the AVX-512 F/BW integer set
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-14 21:03:26 +02:00
petrbalvin
9370f9c3ee
feat(cli): standard --help and --version with per-command usage
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-13 19:50:38 +02:00
petrbalvin
e98680597d
feat(fmt): go-fmt-style recursive formatting and canonical blank-line layout
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-12 21:24:41 +02:00
petrbalvin
1a01870695
fix(lint): calibrate register-clobber to the Go ABI and add legacy SSE moves
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-11 17:36:52 +02:00
petrbalvin
458cfb626e
feat(asm): add EVEX/AVX-512 encoding and assemble the AVX-512 kernel byte-identically
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-10 13:20:49 +02:00
petrbalvin
56ecc39539
feat(asm): assemble static symbols and the whole go-flac AVX2 kernel byte-identically
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-09 15:56:03 +02:00
petrbalvin
a82f575aee
feat(asm): byte-identical go-flac AVX2 assembly with scalar families and jump relaxation
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-08 12:51:35 +02:00
petrbalvin
39870f91f6
feat(asm): add VEX shuffle, extract, permute, move and FP forms
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-07 13:57:53 +02:00
petrbalvin
d5a4a6de45
feat: gasm-devkit 0.1.0 — GAsm lexer, parser, linter, formatter, LSP and amd64 assembler
...
Assisted-by: Qwen 3.8 Max Preview
2026-07-06 09:49:50 +02:00