Skip to content

Revise Usual Arithmetic Conversions#311

Merged
llvm-beanz merged 1 commit into
microsoft:mainfrom
llvm-beanz:cbieneman/expr.conv-fixes
Sep 16, 2024
Merged

Revise Usual Arithmetic Conversions#311
llvm-beanz merged 1 commit into
microsoft:mainfrom
llvm-beanz:cbieneman/expr.conv-fixes

Conversation

@llvm-beanz
Copy link
Copy Markdown
Collaborator

There are a few discrepancies between what I originally wrote here and what DXC does. These changes adjust to the actual behavior and more closely align with implicit conversion sequences.

Fixes #308

There are a few discrepancies between what I originally wrote here and
what DXC does. These changes adjust to the actual behavior and more
closely align with implicit conversion sequences.

Fixes microsoft#308
Comment thread specs/language/expressions.tex
Comment thread specs/language/expressions.tex
llvm-beanz added a commit to llvm-beanz/llvm-project that referenced this pull request Sep 13, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating `vector<T,1>` to `T` early to allow other transformations.

Fixes llvm#106253
Copy link
Copy Markdown
Collaborator

@tex3d tex3d left a comment

Choose a reason for hiding this comment

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

Ok for now with follow-up of #319 for the vec1/scalar issues.

@llvm-beanz llvm-beanz merged commit 8b2b3df into microsoft:main Sep 16, 2024
llvm-beanz added a commit to llvm/llvm-project that referenced this pull request Sep 26, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating `vector<T,1>` to `T` early to allow other transformations.

Fixes #106253
llvm-beanz added a commit to llvm-beanz/llvm-project that referenced this pull request Sep 27, 2024
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating vector<T,1> to T early to allow other transformations.

Fixes llvm#106253

../clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
llvm-beanz added a commit to llvm/llvm-project that referenced this pull request Sep 27, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating vector<T,1> to T early to allow other transformations.

Fixes #106253

Re-lands #108659
Sterling-Augustine pushed a commit to Sterling-Augustine/llvm-project that referenced this pull request Sep 27, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating `vector<T,1>` to `T` early to allow other transformations.

Fixes llvm#106253
puja2196 pushed a commit to puja2196/LLVM-tutorial that referenced this pull request Sep 30, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating `vector<T,1>` to `T` early to allow other transformations.

Fixes #106253
puja2196 pushed a commit to puja2196/LLVM-tutorial that referenced this pull request Sep 30, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating vector<T,1> to T early to allow other transformations.

Fixes #106253

Re-lands #108659
puja2196 pushed a commit to puja2196/LLVM-tutorial that referenced this pull request Oct 2, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating `vector<T,1>` to `T` early to allow other transformations.

Fixes #106253
puja2196 pushed a commit to puja2196/LLVM-tutorial that referenced this pull request Oct 2, 2024
HLSL has a different set of usual arithmetic conversions for vector
types to resolve a common type for binary operator expressions.

This PR implements the current spec proposal from:
microsoft/hlsl-specs#311

There is one case that may need additional handling for implicitly
truncating vector<T,1> to T early to allow other transformations.

Fixes #106253

Re-lands #108659
llvm-beanz added a commit to llvm-beanz/hlsl-specs that referenced this pull request Feb 9, 2025
There are a few discrepancies between what I originally wrote here and
what DXC does. These changes adjust to the actual behavior and more
closely align with implicit conversion sequences.

Fixes microsoft#308
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.

Document Usual Arithmetic Conversions

4 participants