Releases: lewtec/leaven
Releases · lewtec/leaven
Release list
0.1.0
Changelog
- 4f672ce feat(cli): restore stdin help and package default
- e1aaad6 feat(cli): run leaven through lewkit x/cmd
- 6c1ba3e fix(cli): parse --input on the spec
- 29208f0 fix(cli): pass --input from csmith harness
- 39c83ca fix(cli): take the .ll path as a positional
- f2053fe refactor(cli): drop atomic write and lewkit-only tests
- 5b61b2b refactor(cli): parse then Run, drop App clone
- e0ee30b refactor(cli): run leaven through App after versionCmd drop
- d5a40d9 rm huge logo from releases
Released by GoReleaser.
0.0.2
Changelog
- 9e52ea4 Add -package flag for generated Go package name.
- e59421f Add IR sanity fixtures for anon struct names and unreachable.
- fba7fe1 Add a couple of vector instructions and __memcpy_chk.
- d0cf067 Add a test
- 4fffef1 Add binarytrees benchmark as a test, and fix malloc breakage.
- 5ce9546 Add children-before-heap Subtree fixture with runtime run checks.
- f2df508 Add csmith differential fuzz tests with mise clang 14.
- 87f0b87 Add disclaimer.
- ec8e456 Add fannkuch-redux test.
- ca95df4 Add forgotten parentheses.
- 5240820 Add fprintf/abort/realloc libc stubs; map glibc _IO_FILE to os.File.
- 9b646f4 Add getchar
- 633a665 Add license and readme.
- 8007207 Add malloc and calloc to libc package.
- 0a575a9 Add mandelbrot test.
- 36ac9b7 Add memmove and memset to libc package.
- e28c467 Add nbody test.
- 7a2caa4 Add note about GC-related panics.
- dd96805 Add scripts/fuzz-janitor-loop.sh for fuzz then catalog harvest.
- 6494d87 Add source.c for every IR fixture (regression C repros).
- b189232 Add spectral-norm test.
- 36b6903 Add string functions from PDClib.
- ce713a7 Add strlen and GoString.
- eab2f5c Add varargs support.
- a00e7e4 Add vector support to some instructions.
- b3dc391 Allocate correctly-typed, garbage-colledted memory.
- 940bd01 Attempt to support truncating to odd bit sizes (like i3).
- 4d18e79 Be a little smarter about taking the address of globals.
- 5d1e1a5 Convert bool to int.
- b0764a7 Correct typo
- 6ce0018 Detect unsafe pointer casts.
- efdd8bd Do all munging of type names in one place.
- ee95e7d Don't dereference global symbols.
- 5485b81 Don't emit declarations of anonymous union types.
- bcf2752 Fix Go keywords, i8→i1 bool trunc, auto-imports; add go_issues fixture.
- 1abf3b8 Fix csmith fuzz failures: printf, udiv/urem, bitcast, labels, i64.
- 137e9ad Fix function-pointer bitcasts; map iswlower/iswupper.
- ee76927 Fix mid-function void ret; map iswalpha/iswdigit.
- 046d2ba Fix unreachable emission: real tab, not backslash-t.
- f3608d1 Fix variable name that I forgot to update.
- f292e64 Get rid of "found bad pointer in Go heap" errors.
- d0ca426 Handle constant.Index in getelementptr.
- 1d11cee Handle float32 infinities.
- ab97755 Handle negative constants in pointer arithmetic.
- 16829cd Handle signed int constants better.
- 37da0fc Implement __memset_chk
- 72ff374 Implement __strcat_chk
- b0b6cb3 Implement alloca with make rather than malloc.
- 0b8320e Implement ashr
- 364224e Implement extractelement
- 30265dc Implement inttoptr
- 6110954 Implement printf in libc package.
- d60f775 Implement puts() and fadd
- c11a073 Inital support for vectors.
- fd66828 Initial commit.
- 3416cd3 Janitor: clear fmt.Errorf/%w and tabled sentinel backlog.
- 3ebeb3f Janitor: typed timeout errors and cleaner csmith tool resolution.
- 6cf5fae Make alloca type-safe.
- df04443 Make byteSlice work on 32-bit systems.
- e072bb6 Make libc.Realloc copy old bytes (tree-sitter new_node).
- cc6d79d Map fputs/fputc, iswspace, and llvm.memmove intrinsic.
- 52ba694 Map free→libc.Free and __assert_fail→libc.AssertFail.
- 8bcf918 Map nonstandard int widths to Go ints; reject widths over 64.
- de25348 Map strlen to libc.Strlen (haskell scanners).
- beed247 Map system stdarg/stdio: va_start/end, vsnprintf, snprintf, fdopen, fclose.
- 2d1ff1d Map wctype/exit; rename locals that shadow funcs or types.
- 46ca199 Merge branch 'master' of https://github.com/andybalholm/leaven
- 059e92b Merge pull request #13 from lewtec/20260809-assimilate-trees
- 1a77df4 Merge pull request #2 from mewpull/issue-1
- dbf31a1 Merge pull request #4 from mewpull/llir-v0.3.0
- d2e4394 Merge pull request #5 from mewpull/update-to-llir-llvm-0.3.1
- b6160e5 Misc. new features.
- 7b638c8 More disclaimer
- bc9e499 More issues with signed int constants.
- a028d74 Move most of the logic from main to a separate function.
- bf5bb7b Remove dots from names of anonymous constants.
- 43c1439 Replace dots in variable names with underscores.
- 092b9ad Represent tagged pointer unions as uintptr (tree-sitter Subtree).
- 19337df Rewrite library functions when used as values (free fnptr).
- 4e7a199 Sanitize clang type names like anon.1 to valid Go identifiers.
- 2981d19 Sanitize hyphens in LLVM names for Go identifiers.
- d025381 Skip csmith cases that hang natively instead of failing.
- 7763959 Start my libc package with mset_pattern16
- 082f6b9 Store IR sanity fixtures one folder each with expect.json tables.
- da546a5 Support atomicrmw (strip clang align; map add/sub/xchg to sync/atomic).
- 0d94a9b Support constant icmp/zext/sext/trunc expressions.
- b152e98 Support extractvalue/insertvalue; allow all pointer bitcasts.
- 2848143 Support float types.
- b9e8bb4 Support inttoptr/ptrtoint for tagged-pointer patterns.
- 402eb45 Support named blocks.
- a0c77f3 Support various new features.
- 84bc4e1 Support vectors in add and trunc
- 37d8408 Suppress unused-variable errors.
- 46fe83c Translate LLVM unreachable to panic("unreachable").
- 48a362d Translate and and or instructions on booleans.
- a9bb0ba Translate array constants.
- bd916f5 Translate bitcast expression.
- e1f95fb Translate boolean constants.
- 6fe34e7 Translate fcmp instruction.
- 75841f2 Translate fcmp with fancy NaN behavior.
- bdae70c Translate fdiv and fsub instructions.
- 063b430 Translate float constants.
- 6461c90 Translate fmul instruction.
- 5830430 Translate fpext instruction.
- bf040ea Translate fptosi instruction.
- 2a0d3b3 Translate fptrunc instruction.
- af3fbed Translate getelementptr constant expressions.
- 66104a0 Translate null pointer constant.
- c877b50 Translate printf as noarch.Printf (from elliotchance/c2go).
- 6e8dfbb Translate putchar and ldexp functions
- dfcab4a Translate sdiv instruction.
- c4b71bf Translate sitofp instruction.
- c37e31f Translate some math functions.
- c17ff81 Translate uitofp instruction.
- cba9511 Transpile strcmp from mustl libc.
- f2f0cb6 Unblock tree-sitter core go build end-to-end.
- 3787e1d Update llir package.
- b84a6ad Update llvm packag...
0.0.1
Changelog
- 9e52ea4 Add -package flag for generated Go package name.
- e59421f Add IR sanity fixtures for anon struct names and unreachable.
- fba7fe1 Add a couple of vector instructions and __memcpy_chk.
- d0cf067 Add a test
- 4fffef1 Add binarytrees benchmark as a test, and fix malloc breakage.
- 5ce9546 Add children-before-heap Subtree fixture with runtime run checks.
- f2df508 Add csmith differential fuzz tests with mise clang 14.
- 87f0b87 Add disclaimer.
- ec8e456 Add fannkuch-redux test.
- ca95df4 Add forgotten parentheses.
- 5240820 Add fprintf/abort/realloc libc stubs; map glibc _IO_FILE to os.File.
- 9b646f4 Add getchar
- 633a665 Add license and readme.
- 8007207 Add malloc and calloc to libc package.
- 0a575a9 Add mandelbrot test.
- 36ac9b7 Add memmove and memset to libc package.
- e28c467 Add nbody test.
- 7a2caa4 Add note about GC-related panics.
- dd96805 Add scripts/fuzz-janitor-loop.sh for fuzz then catalog harvest.
- 6494d87 Add source.c for every IR fixture (regression C repros).
- b189232 Add spectral-norm test.
- 36b6903 Add string functions from PDClib.
- ce713a7 Add strlen and GoString.
- eab2f5c Add varargs support.
- a00e7e4 Add vector support to some instructions.
- b3dc391 Allocate correctly-typed, garbage-colledted memory.
- 940bd01 Attempt to support truncating to odd bit sizes (like i3).
- 4d18e79 Be a little smarter about taking the address of globals.
- 5d1e1a5 Convert bool to int.
- b0764a7 Correct typo
- 6ce0018 Detect unsafe pointer casts.
- efdd8bd Do all munging of type names in one place.
- ee95e7d Don't dereference global symbols.
- 5485b81 Don't emit declarations of anonymous union types.
- bcf2752 Fix Go keywords, i8→i1 bool trunc, auto-imports; add go_issues fixture.
- 1abf3b8 Fix csmith fuzz failures: printf, udiv/urem, bitcast, labels, i64.
- 137e9ad Fix function-pointer bitcasts; map iswlower/iswupper.
- ee76927 Fix mid-function void ret; map iswalpha/iswdigit.
- 046d2ba Fix unreachable emission: real tab, not backslash-t.
- f3608d1 Fix variable name that I forgot to update.
- f292e64 Get rid of "found bad pointer in Go heap" errors.
- d0ca426 Handle constant.Index in getelementptr.
- 1d11cee Handle float32 infinities.
- ab97755 Handle negative constants in pointer arithmetic.
- 16829cd Handle signed int constants better.
- 37da0fc Implement __memset_chk
- 72ff374 Implement __strcat_chk
- b0b6cb3 Implement alloca with make rather than malloc.
- 0b8320e Implement ashr
- 364224e Implement extractelement
- 30265dc Implement inttoptr
- 6110954 Implement printf in libc package.
- d60f775 Implement puts() and fadd
- c11a073 Inital support for vectors.
- fd66828 Initial commit.
- 3416cd3 Janitor: clear fmt.Errorf/%w and tabled sentinel backlog.
- 3ebeb3f Janitor: typed timeout errors and cleaner csmith tool resolution.
- 6cf5fae Make alloca type-safe.
- df04443 Make byteSlice work on 32-bit systems.
- e072bb6 Make libc.Realloc copy old bytes (tree-sitter new_node).
- cc6d79d Map fputs/fputc, iswspace, and llvm.memmove intrinsic.
- 52ba694 Map free→libc.Free and __assert_fail→libc.AssertFail.
- 8bcf918 Map nonstandard int widths to Go ints; reject widths over 64.
- de25348 Map strlen to libc.Strlen (haskell scanners).
- beed247 Map system stdarg/stdio: va_start/end, vsnprintf, snprintf, fdopen, fclose.
- 2d1ff1d Map wctype/exit; rename locals that shadow funcs or types.
- 46ca199 Merge branch 'master' of https://github.com/andybalholm/leaven
- 059e92b Merge pull request #13 from lewtec/20260809-assimilate-trees
- 1a77df4 Merge pull request #2 from mewpull/issue-1
- dbf31a1 Merge pull request #4 from mewpull/llir-v0.3.0
- d2e4394 Merge pull request #5 from mewpull/update-to-llir-llvm-0.3.1
- b6160e5 Misc. new features.
- 7b638c8 More disclaimer
- bc9e499 More issues with signed int constants.
- a028d74 Move most of the logic from main to a separate function.
- bf5bb7b Remove dots from names of anonymous constants.
- 43c1439 Replace dots in variable names with underscores.
- 092b9ad Represent tagged pointer unions as uintptr (tree-sitter Subtree).
- 19337df Rewrite library functions when used as values (free fnptr).
- 4e7a199 Sanitize clang type names like anon.1 to valid Go identifiers.
- 2981d19 Sanitize hyphens in LLVM names for Go identifiers.
- d025381 Skip csmith cases that hang natively instead of failing.
- 7763959 Start my libc package with mset_pattern16
- 082f6b9 Store IR sanity fixtures one folder each with expect.json tables.
- da546a5 Support atomicrmw (strip clang align; map add/sub/xchg to sync/atomic).
- 0d94a9b Support constant icmp/zext/sext/trunc expressions.
- b152e98 Support extractvalue/insertvalue; allow all pointer bitcasts.
- 2848143 Support float types.
- b9e8bb4 Support inttoptr/ptrtoint for tagged-pointer patterns.
- 402eb45 Support named blocks.
- a0c77f3 Support various new features.
- 84bc4e1 Support vectors in add and trunc
- 37d8408 Suppress unused-variable errors.
- 46fe83c Translate LLVM unreachable to panic("unreachable").
- 48a362d Translate and and or instructions on booleans.
- a9bb0ba Translate array constants.
- bd916f5 Translate bitcast expression.
- e1f95fb Translate boolean constants.
- 6fe34e7 Translate fcmp instruction.
- 75841f2 Translate fcmp with fancy NaN behavior.
- bdae70c Translate fdiv and fsub instructions.
- 063b430 Translate float constants.
- 6461c90 Translate fmul instruction.
- 5830430 Translate fpext instruction.
- bf040ea Translate fptosi instruction.
- 2a0d3b3 Translate fptrunc instruction.
- af3fbed Translate getelementptr constant expressions.
- 66104a0 Translate null pointer constant.
- c877b50 Translate printf as noarch.Printf (from elliotchance/c2go).
- 6e8dfbb Translate putchar and ldexp functions
- dfcab4a Translate sdiv instruction.
- c4b71bf Translate sitofp instruction.
- c37e31f Translate some math functions.
- c17ff81 Translate uitofp instruction.
- cba9511 Transpile strcmp from mustl libc.
- f2f0cb6 Unblock tree-sitter core go build end-to-end.
- 3787e1d Update llir package.
- b84a6ad Update llvm packag...
