summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-extract-value-from-type.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-08-16 22:47:35 -0700
committerGitHub <noreply@github.com>2023-08-17 13:47:35 +0800
commit216fc18661fd6e05053b4cc864396e6017e85b04 (patch)
tree48dfd4aef767694f3063d3c79bcc0a1e3c184346 /source/slang/slang-ir-extract-value-from-type.cpp
parenta0ee2bf671d61d1e2b561db3966e57ffc802040f (diff)
Create storage types of different layouts for SPIRV emit. (#3116)
* Create storage types of different layouts for SPIRV emit. * Fix. * Fix. * Fix. * Update expected failure list. --------- Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-ir-extract-value-from-type.cpp')
-rw-r--r--source/slang/slang-ir-extract-value-from-type.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/slang/slang-ir-extract-value-from-type.cpp b/source/slang/slang-ir-extract-value-from-type.cpp
index fa8c6e441..ba3b73736 100644
--- a/source/slang/slang-ir-extract-value-from-type.cpp
+++ b/source/slang/slang-ir-extract-value-from-type.cpp
@@ -42,8 +42,8 @@ FindLeafValueResult findLeafValueAtOffset(
{
IRIntegerValue fieldOffset = 0;
IRSizeAndAlignment fieldLayout;
- CHECK(getNaturalSizeAndAlignment(targetReq, field->getFieldType(), &fieldLayout));
- CHECK(getNaturalOffset(targetReq, field, &fieldOffset));
+ CHECK(getNaturalSizeAndAlignment(field->getFieldType(), &fieldLayout));
+ CHECK(getNaturalOffset(field, &fieldOffset));
if (fieldOffset + fieldLayout.size > offset)
{
if (fieldOffset > offset)
@@ -81,7 +81,7 @@ FindLeafValueResult findLeafValueAtOffset(
auto arrayType = as<IRArrayType>(dataType);
auto elementType = arrayType->getElementType();
IRSizeAndAlignment elementLayout;
- CHECK(getNaturalSizeAndAlignment(targetReq, elementType, &elementLayout));
+ CHECK(getNaturalSizeAndAlignment(elementType, &elementLayout));
if (elementLayout.getStride() == 0)
{
result.leafValue = builder.getIntValue(builder.getUIntType(), 0);
@@ -106,7 +106,7 @@ FindLeafValueResult findLeafValueAtOffset(
auto vectorType = as<IRVectorType>(dataType);
auto elementType = vectorType->getElementType();
IRSizeAndAlignment elementLayout;
- CHECK(getNaturalSizeAndAlignment(targetReq, elementType, &elementLayout));
+ CHECK(getNaturalSizeAndAlignment(elementType, &elementLayout));
uint32_t index =
elementLayout.getStride() == 0 ? 0 : (uint32_t)(offset / elementLayout.getStride());
auto elementValue = builder.emitElementExtract(
@@ -129,7 +129,7 @@ FindLeafValueResult findLeafValueAtOffset(
auto columnCount = as<IRIntLit>(matrixType->getColumnCount())->value.intVal;
auto rowType = builder.getVectorType(elementType, matrixType->getColumnCount());
IRSizeAndAlignment rowLayout;
- CHECK(getNaturalSizeAndAlignment(targetReq, rowType, &rowLayout));
+ CHECK(getNaturalSizeAndAlignment(rowType, &rowLayout));
uint32_t rowIndex = rowLayout.getStride() == 0
? 0
: (uint32_t)(offset / (columnCount * rowLayout.getStride()));
@@ -266,7 +266,7 @@ IRInst* extractValueAtOffset(
{
auto dataType = src->getDataType();
IRSizeAndAlignment typeLayout;
- SLANG_RETURN_NULL_ON_FAIL(getNaturalSizeAndAlignment(targetReq, dataType, &typeLayout));
+ SLANG_RETURN_NULL_ON_FAIL(getNaturalSizeAndAlignment(dataType, &typeLayout));
if (offset + size > typeLayout.size)
{
return builder.getIntValue(builder.getIntType(), 0);