Changelog for llvm-pretty-bc-parser-0.5.1.0
Revision history for llvm-pretty-bc-parser
0.5.1.0 (October 2025)
- Support parsing data layout strings that specify function pointer alignment.
- Implement
CST_CODE_STRING, allowing the parsing of bitcode files containing strings without null terminators (as may be generated by languages other than C).
0.5.0.0 (March 2025)
-
Data.LLVM.BitCodenow defines funtions (whose names all end with*WithWarnings) that return any parser-related warnings (ParseWarnings) alongside the parsedModule. Users can decide whether or not to display these warnings (e.g., by printing them tostderrusingppParseWarnings).The existing functions which do not return warnings have been deprecated in favor of the their
*WithWarningsvariants. -
The functions in
Data.LLVM.BitCodeno longer produce a fatal error when encountering metadata records of unexpected sizes. Instead, these are now treated as warnings.
0.4.2.0 (August 2024)
-
Add support for GHC 9.8 and drop official support of 9.2.
-
Add support for new atomic operations in LLVM 9+.
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-parserwill still fill in the types of certain instructions with non-opaque pointer types (e.g., the type of memory to store in astoreinstruction), 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
DIDerivedTypenodes produced by Apple Clang on macOS. - Fix a bug in which the DWARF address space field of a
DIDerivedTypenode was parsed incorrectly. - Fix a bug in which constant
fcmp/icmpexpressions would parse their operands incorrectly.
- Fix a bug in which the parser would fail to parse