diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..c12874f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,20 @@ +# Revision history for llvm-pretty-bc-parser + +## 0.4.1.0 (January 2024) + +* Add preliminary support for LLVM versions up through 16. +* Require building with `llvm-pretty-0.12.*`. +* Add preliminary support for parsing opaque pointers. For now, + `llvm-pretty-bc-parser` will still fill in the types of certain instructions + with non-opaque pointer types (e.g., the type of memory to store in a `store` + instruction), so be wary of this if you are parsing a bitcode file that + contains opaque pointers. See also the discussion in + https://github.com/GaloisInc/llvm-pretty-bc-parser/issues/262. +* Improve the runtime performance of the parser. +* A variety of bugfixes. Some notable fixes include: + * Fix a bug in which the parser would fail to parse `DIDerivedType` nodes + produced by Apple Clang on macOS. + * Fix a bug in which the DWARF address space field of a `DIDerivedType` node + was parsed incorrectly. + * Fix a bug in which constant `fcmp`/`icmp` expressions would parse their + operands incorrectly. diff --git a/flake.lock b/flake.lock index d134645..1bc3a04 100644 --- a/flake.lock +++ b/flake.lock @@ -110,11 +110,11 @@ "llvm-pretty-src": { "flake": false, "locked": { - "lastModified": 1695743075, - "narHash": "sha256-RRh26tuRDksdWrPDGyoaBnsoPARWL8qa2PTMFtu7900=", + "lastModified": 1706635035, + "narHash": "sha256-d6roSOu6FMa/z/Rlio1TO+kJ09vx34gOz0NDhfMrF0o=", "owner": "elliottt", "repo": "llvm-pretty", - "rev": "8124fc0265b6ca5fde5812c789f40b2ea54af678", + "rev": "e7b2bf1371e51bbc9e7a35070ae311b5a4b2c387", "type": "github" }, "original": { diff --git a/llvm-pretty b/llvm-pretty index 8124fc0..e7b2bf1 160000 --- a/llvm-pretty +++ b/llvm-pretty @@ -1 +1 @@ -Subproject commit 8124fc0265b6ca5fde5812c789f40b2ea54af678 +Subproject commit e7b2bf1371e51bbc9e7a35070ae311b5a4b2c387 diff --git a/llvm-pretty-bc-parser.cabal b/llvm-pretty-bc-parser.cabal index 58ba2dd..22cbf1f 100644 --- a/llvm-pretty-bc-parser.cabal +++ b/llvm-pretty-bc-parser.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 Name: llvm-pretty-bc-parser -Version: 0.4.0.0.99 +Version: 0.4.1.0.99 License: BSD-3-Clause License-file: LICENSE Author: Trevor Elliott @@ -18,7 +18,7 @@ Description: Extra-source-files: disasm-test/tests/*.ll -extra-doc-files: README.md +extra-doc-files: CHANGELOG.md, README.md Flag fuzz Description: Enable fuzzing harness @@ -75,7 +75,7 @@ Library bytestring >= 0.10, containers >= 0.4, fgl >= 5.5, - llvm-pretty >= 0.11.0.0.101 && < 0.12, + llvm-pretty >= 0.12.0.0.99 && < 0.13, mtl >= 2.2.2, pretty >= 1.0.1, uniplate >= 1.6,