Skip to content

Support function pointer alignment in data layouts #298

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

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

RyanGlScott
Copy link
Contributor

This bumps the llvm-pretty submodule to bring in the changes from GaloisInc/llvm-pretty#163, which allows llvm-pretty-bc-parser to support parsing function pointer alignment in data layouts (e.g., Fn32). This also adds a regression test.

Fixes #292.


Marked as a draft pending GaloisInc/llvm-pretty#163 (on which this PR depends) landing upstream.

@RyanGlScott RyanGlScott self-assigned this Jul 19, 2025
RyanGlScott added a commit to GaloisInc/crucible that referenced this pull request Jul 19, 2025
This bumps the following submodules to bring in changes necessary to support
function pointer alignment in data layouts:

* `llvm-pretty`:
  GaloisInc/llvm-pretty#163
* `llvm-pretty-bc-parser:
  GaloisInc/llvm-pretty-bc-parser#298

It also adjusts the data layout-parsing code in `crucible-llvm` accordingly.
For now, the only meaningful use of function pointer alignment in
`crucible-llvm` is in computing the `maxAlignment`.

See GaloisInc/llvm-pretty-bc-parser#292 for the
parent issue involving function pointer alignment in data layouts.
This bumps the `llvm-pretty` submodule to bring in the changes from
GaloisInc/llvm-pretty#163, which allows
`llvm-pretty-bc-parser` to support parsing function pointer alignment in data
layouts (e.g., `Fn32`). This also adds a regression test.

Fixes #292.
@RyanGlScott RyanGlScott force-pushed the T292-DataLayout-function-pointer-alignment branch from 19bd898 to 06e879c Compare July 19, 2025 22:24
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.

Unable to parse data layout: e-m:o-i64:64-i128:128-n32:64-S128-Fn32
1 participant