Skip to content

3c no longer crashes when encountering intrinsics #633

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

Merged
merged 4 commits into from
Jun 25, 2021
Merged

3c no longer crashes when encountering intrinsics #633

merged 4 commits into from
Jun 25, 2021

Conversation

aaronjeline
Copy link
Collaborator

Previously 3c would crash if it found any use of intrinsic types: (ex: int __attribute__ ((vector_size(16))) x)
Now, 3c correctly identifies these as base type.

Since intrinsic vectors cannot contain pointers, we do not need to generate constraints around them.
(ie: int* __attribute__ ((vector_size(16))) is an invalid type).

As far as rewriting, if the instrinsics are behind a typedef, then rewriting works fine. However if they are used as raw types rewriting will fail as currently rewriting drops attributes. This is potentially addressed in #466.

This fixes issues: #632, #381, and #284

Copy link
Member

@kyleheadley kyleheadley left a comment

Choose a reason for hiding this comment

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

LGTM, but could you combine the tests into one file? They're variations on a theme and likely pass/fail together anyway.

Copy link
Collaborator

@john-h-kastner john-h-kastner left a comment

Choose a reason for hiding this comment

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

Add the test case we looked at for a pointer to the typedef'ed vector type.

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.

3 participants