petrbalvin
|
bfb7701db1
|
feat(amd64): emit the quad-register EVEX families
Assisted-by: GLM 5.3 Flash
|
2026-09-21 02:02:19 +02:00 |
|
petrbalvin
|
e8b6ff5d7c
|
fix(parser): fold a signed parenthesised displacement expression
Test / test (push) Failing after 2m21s
Assisted-by: GLM 5.3 Flash
|
2026-09-21 00:45:33 +02:00 |
|
petrbalvin
|
1456907000
|
feat(riscv64,loong64): operand tail, float DATA and honest port classification
Assisted-by: GLM 5.3 Flash
|
2026-09-21 00:44:47 +02:00 |
|
petrbalvin
|
522e6f2ae8
|
feat(parser): bracket register ranges, index-only VSIB and bare trailing immediates
Assisted-by: GLM 5.3 Flash
|
2026-09-20 22:02:19 +02:00 |
|
petrbalvin
|
81d4bd81e4
|
test(verify): register the wave kernels
Test / test (push) Failing after 2m20s
Assisted-by: GLM 5.3 Flash
|
2026-09-20 21:17:31 +02:00 |
|
petrbalvin
|
687678a2ea
|
feat(elf): emit data relocations on arm64, riscv64 and loong64
Assisted-by: GLM 5.3 Flash
|
2026-09-20 21:17:20 +02:00 |
|
petrbalvin
|
b0f9071bf5
|
feat(arm64): whole-vector moves, bookkeeping ops and truncating-move lowering
Assisted-by: GLM 5.3 Flash
|
2026-09-20 21:17:20 +02:00 |
|
petrbalvin
|
81e2673923
|
feat(amd64): encode the AVX-512 and BMI corpus families
Assisted-by: GLM 5.3 Flash
|
2026-09-20 21:17:20 +02:00 |
|
petrbalvin
|
241e7256f6
|
fix(arm64): reject bare BTI with a diagnostic and accept the full family
Assisted-by: GLM 5.3 Flash
|
2026-09-20 19:15:05 +02:00 |
|
petrbalvin
|
6556b85abf
|
feat(asm): symbol-valued DATA, division slash in symbols and plain semicolons
Assisted-by: GLM 5.3 Flash
|
2026-09-20 19:15:05 +02:00 |
|
petrbalvin
|
289cabe993
|
feat(loong64): encode the full LSX and LASX table
Assisted-by: GLM 5.3 Flash
|
2026-09-20 19:14:43 +02:00 |
|
petrbalvin
|
dce5d31462
|
feat(amd64): LOCK and REP prefixes, literal data pseudo-ops and ADJSP
Assisted-by: GLM 5.3 Flash
|
2026-09-20 14:25:47 +02:00 |
|
petrbalvin
|
9dc3987e02
|
feat(riscv64,loong64): PCALIGN, branch relaxation and operand shapes
Assisted-by: GLM 5.3 Flash
|
2026-09-20 14:25:47 +02:00 |
|
petrbalvin
|
9b238a525a
|
feat(arm64): wide immediates, SIMD compare and system operand forms
Assisted-by: GLM 5.3 Flash
|
2026-09-20 14:25:47 +02:00 |
|
petrbalvin
|
0629f5e2df
|
feat(arm64): assemble PCALIGN padding and BYTE literal bytes
Test / test (push) Successful in 2m16s
Assisted-by: GLM 5.3 Flash
|
2026-09-20 11:49:05 +02:00 |
|
petrbalvin
|
6c672567f3
|
feat(amd64): assemble the double-shift and static-SB operand shapes
Assisted-by: GLM 5.3 Flash
|
2026-09-20 11:40:39 +02:00 |
|
petrbalvin
|
de5d9f358e
|
feat(riscv64,loong64): encode AMO atomics, vector slices and bit ops
Assisted-by: GLM 5.3 Flash
|
2026-09-20 06:44:51 +02:00 |
|
petrbalvin
|
ca3fdce0e0
|
feat(arm64): encode pairs, atomics, crypto, system and NEON slices
Assisted-by: GLM 5.3 Flash
|
2026-09-20 06:44:51 +02:00 |
|
petrbalvin
|
fc2d92eabd
|
feat(amd64): encode the GOROOT instruction families
Assisted-by: GLM 5.3 Flash
|
2026-09-20 06:44:51 +02:00 |
|
petrbalvin
|
f15ff66fb1
|
fix(riscv64): accept the g spelling of the goroutine register
Assisted-by: GLM 5.3
|
2026-09-20 00:38:24 +02:00 |
|
petrbalvin
|
187e4856d3
|
feat(amd64): encode the mixed-width extend family and PMOVMSKB
Assisted-by: GLM 5.3
|
2026-09-20 00:38:24 +02:00 |
|
petrbalvin
|
d315a998ce
|
fix(arm64): store-exclusive operand order and large-frame parity
Assisted-by: GLM 5.3
|
2026-09-20 00:38:24 +02:00 |
|
petrbalvin
|
87b1081c53
|
fix(goobj): external package and symbol indices and arm64 pair relocations
Assisted-by: GLM 5.3
|
2026-09-19 23:49:13 +02:00 |
|
petrbalvin
|
f3c8510a58
|
fix(elf): relocation records, DWARF tables and per-architecture frame data
Assisted-by: GLM 5.3
|
2026-09-19 23:49:13 +02:00 |
|
petrbalvin
|
ebdf14939f
|
fix(loong64): FP immediates through R30 and unsigned branch forms
Assisted-by: GLM 5.3
|
2026-09-19 23:49:13 +02:00 |
|
petrbalvin
|
79a2c16bac
|
fix(riscv64): compressed store offsets, FENCE and branch range checks
Assisted-by: GLM 5.3
|
2026-09-19 23:49:13 +02:00 |
|
petrbalvin
|
401386956c
|
fix(arm64): encode shifts, divides and multiplies and align sizes with emission
Assisted-by: GLM 5.3
|
2026-09-19 23:49:07 +02:00 |
|
petrbalvin
|
4258131a3a
|
fix(amd64): correct guard displacements, frameless FP offsets and immediate ranges
Assisted-by: GLM 5.3
|
2026-09-19 23:49:07 +02:00 |
|
petrbalvin
|
ac1c05c793
|
fix(lexer): tokenise the flag separator and handle NUL and invalid UTF-8
Assisted-by: GLM 5.3
|
2026-09-19 23:48:47 +02:00 |
|
petrbalvin
|
f37f183577
|
feat(riscv64): GOROOT instruction shapes, DATA order and offset expressions
Assisted-by: GLM 5.3 Flash
|
2026-09-19 19:58:43 +02:00 |
|
petrbalvin
|
23c001be51
|
feat(asm): encode indirect JMP and CALL on all four architectures
Assisted-by: GLM 5.3 Flash
|
2026-09-19 19:17:07 +02:00 |
|
petrbalvin
|
0078f7be5c
|
style: purge em dashes from the produced text
Assisted-by: GLM 5.3 Flash
|
2026-09-16 23:12:31 +02:00 |
|
petrbalvin
|
40476546df
|
fix(asm): close the oracle parity gaps in frame addressing and calls
|
2026-09-14 23:25:14 +02:00 |
|
petrbalvin
|
70218e84ba
|
feat(asm): emit the loong64 stack-split guard for big frames
|
2026-09-14 22:38:58 +02:00 |
|
petrbalvin
|
db50b98179
|
feat(asm): emit the loong64 stack-split guard for small and medium frames
|
2026-09-14 21:21:58 +02:00 |
|
petrbalvin
|
2e2c0b82a0
|
feat(asm): emit the riscv64 stack-split guard and fix large-frame addressing
|
2026-09-14 21:09:13 +02:00 |
|
petrbalvin
|
8dc1e98ca1
|
feat(asm): emit the arm64 stack-split guard and morestack block
|
2026-09-14 20:49:03 +02:00 |
|
petrbalvin
|
1d8e68c574
|
feat(asm): emit the amd64 stack-split guard and morestack block
|
2026-09-14 20:35:55 +02:00 |
|
petrbalvin
|
1691c81095
|
style: replace em and en dashes across sources
|
2026-09-14 18:22:18 +02:00 |
|
petrbalvin
|
953c258d6a
|
fix(asm): make arm64 and loong64 relocations match the toolchain
|
2026-09-14 18:22:00 +02:00 |
|
petrbalvin
|
c6f0286732
|
fix(asm): encode amd64 frame adjustments above 127 bytes with imm32
|
2026-09-14 18:22:00 +02:00 |
|
petrbalvin
|
56ad158772
|
fix: restore iota blocks, asm --format flag and prose after the syntax pass
Test / vet (push) Successful in 48s
Test / test (push) Successful in 2m35s
Test / build (push) Successful in 40s
|
2026-08-29 17:12:53 +02:00 |
|
petrbalvin
|
9beff4ae85
|
style: modernize to splitseq, cut, min, maps.copy and range-over-int
|
2026-08-29 16:04:32 +02:00 |
|
petrbalvin
|
eacf33d0f7
|
fix: staticcheck and deadcode findings repo-wide, modernize counting loops
|
2026-08-29 15:25:15 +02:00 |
|
petrbalvin
|
685b150ecf
|
feat(lint): flag table-known instructions the encoder cannot emit
|
2026-08-29 13:42:47 +02:00 |
|
petrbalvin
|
6699ebd34f
|
feat(asm): add prefetch hint encoding
Test / vet (push) Successful in 51s
Test / test (push) Successful in 2m37s
Test / build (push) Successful in 41s
|
2026-08-29 10:42:15 +02:00 |
|
petrbalvin
|
ba4d961b20
|
fix(asm): ADDQ imm8 frame adjust for 128-255 byte frames
|
2026-08-28 22:11:24 +02:00 |
|
petrbalvin
|
78b12dd427
|
fix(asm): match go tool asm encodings and strictness
|
2026-08-28 19:55:25 +02:00 |
|
petrbalvin
|
19a26e049b
|
feat(asm): add vpcmp compare, full opmask set, legacy sse integers and bswap
Test / vet (push) Successful in 47s
Test / test (push) Successful in 2m35s
Test / build (push) Successful in 41s
Assisted-by: GLM 5.3
|
2026-08-27 22:41:03 +02:00 |
|
petrbalvin
|
163480e283
|
feat(amd64): encode scalar/double conversion ops (CVTSS2SD/CVTSD2SS/CVTPS2PD/CVTPD2PS)
|
2026-08-27 22:02:11 +02:00 |
|