HLSL: Fix #1208: accept both int and uint in asuint() and asint().

This commit is contained in:
John Kessenich 2018-01-11 13:26:09 -07:00
parent 63400477f6
commit e22e347395
3 changed files with 1661 additions and 1661 deletions

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ groupshared uint4 gs_ua4;
groupshared uint4 gs_ub4;
groupshared uint4 gs_uc4;
float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint inU1)
float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, int inU1)
{
uint out_u1;
@ -23,7 +23,7 @@ float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint i
bool r003 = any(inF0);
float r004 = asin(inF0);
int r005 = asint(inF0);
uint r006 = asuint(inF0);
uint r006 = asuint(inU1);
float r007 = asfloat(inU0);
// asdouble(inU0, inU1); // TODO: enable when HLSL parser used for intrinsics
float r009 = atan(inF0);

View File

@ -580,8 +580,8 @@ void TBuiltInParseablesHlsl::initialize(int /*version*/, EProfile /*profile*/, c
{ "asdouble", "V2", "D", "V2,", "UI,", EShLangAll, false },
{ "asfloat", nullptr, "F", "SVM", "BFIU", EShLangAll, false },
{ "asin", nullptr, nullptr, "SVM", "F", EShLangAll, false },
{ "asint", nullptr, "I", "SVM", "FU", EShLangAll, false },
{ "asuint", nullptr, "U", "SVM", "FU", EShLangAll, false },
{ "asint", nullptr, "I", "SVM", "FIU", EShLangAll, false },
{ "asuint", nullptr, "U", "SVM", "FIU", EShLangAll, false },
{ "atan", nullptr, nullptr, "SVM", "F", EShLangAll, false },
{ "atan2", nullptr, nullptr, "SVM,", "F,", EShLangAll, false },
{ "ceil", nullptr, nullptr, "SVM", "F", EShLangAll, false },