Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync DebugInfoEnumerator's definition with LLVM 12 #84

Merged
merged 1 commit into from
Sep 13, 2021
Merged

Sync DebugInfoEnumerator's definition with LLVM 12 #84

merged 1 commit into from
Sep 13, 2021

Conversation

RyanGlScott
Copy link
Collaborator

This makes two changes to DebugInfoEnumerator to reflect its current definition as of LLVM 12:

This makes two changes to `DebugInfoEnumerator` to reflect its current
definition as of LLVM 12:

* `DIEnumerator` now has an `isUnsigned` field as of
  https://reviews.llvm.org/D42734 (LLVM 7).
* `DIEnumerator` is capable of representing arbitrary-precision integers as of
  https://reviews.llvm.org/D62475 (LLVM 12). As a consequence, I changed the
  `Int64` field of `DebugInfoEnumerator` to an `Integer`.
RyanGlScott added a commit to GaloisInc/llvm-pretty-bc-parser that referenced this pull request Sep 9, 2021
The relevant LLVM bitcode parser code is here:
https://github.com/llvm/llvm-project/blob/1bebc31c617d1a0773f1d561f02dd17c5e83b23b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp#L1386-L1408

This bumps the llvm-pretty submodule to include GaloisInc/llvm-pretty#84.
TODO: This hasn't yet been merged—update the submodule when it is.
Copy link
Collaborator

@elliottt elliottt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was going to ask if we should try to make this backwards compatible, but given that it changed in llvm-7 there's probably no need :D

@elliottt elliottt merged commit 960f32c into GaloisInc:master Sep 13, 2021
RyanGlScott added a commit to GaloisInc/llvm-pretty-bc-parser that referenced this pull request Sep 13, 2021
RyanGlScott added a commit to GaloisInc/llvm-pretty-bc-parser that referenced this pull request Sep 13, 2021
RyanGlScott added a commit to GaloisInc/llvm-pretty-bc-parser that referenced this pull request Sep 14, 2021
RyanGlScott added a commit to GaloisInc/llvm-pretty-bc-parser that referenced this pull request Sep 14, 2021
RyanGlScott added a commit to GaloisInc/crucible that referenced this pull request Sep 16, 2021
This bumps the `llvm-pretty` and `llvm-pretty-bc-parser` submodules to include
the following changes:

* GaloisInc/llvm-pretty#85 and GaloisInc/llvm-pretty-bc-parser#166, which adds
  support for the `freeze` instruction introduced in LLVM 12.
* GaloisInc/llvm-pretty#84 and GaloisInc/llvm-pretty-bc-parser#164, which allows
  parsing `DIEnumerator`s on LLVM 12 or later.
* GaloisInc/llvm-pretty#83 and GaloisInc/llvm-pretty-bc-parser#162, which allows
  parsing `DICompositeType`s on LLVM 12 or later.
* GaloisInc/llvm-pretty-bc-parser#161, which allows parsing `fcmp` instructions
  with fast-math flags.

The `freeze` instruction will require some changes in `crucible-llvm` to
accommodate, but I will do that in a subsequent commit.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants