Files
UnrealEngine/Engine/Source/ThirdParty/Intel/ISPC/ispc-1.19.0/tests/print_varying-i64.ispc
2025-05-18 13:04:45 +08:00

61 lines
2.8 KiB
Plaintext

#include "../test_static.isph"
task void print_f(uniform float aFOO[]) {
float a = aFOO[programIndex];
int intA = a;
int64 varLongVal = -(int64)intA - 10000000000;
unsigned int64 varULongVal = (int64)intA + 10000000000;
print("Test varying int64: %, %\n", varLongVal, varULongVal);
}
task void print_result() {
assert(programCount <= 64);
print("Test varying int64: ");
// varLongVal
print("[-10000000001,-10000000002,-10000000003,-10000000004");
if(programCount > 4)
print(",-10000000005,-10000000006,-10000000007,-10000000008");
if(programCount > 8)
print(",-10000000009,-10000000010,-10000000011,-10000000012"
",-10000000013,-10000000014,-10000000015,-10000000016");
if(programCount > 16)
print(",-10000000017,-10000000018,-10000000019,-10000000020"
",-10000000021,-10000000022,-10000000023,-10000000024"
",-10000000025,-10000000026,-10000000027,-10000000028"
",-10000000029,-10000000030,-10000000031,-10000000032");
if(programCount > 32)
print(",-10000000033,-10000000034,-10000000035,-10000000036"
",-10000000037,-10000000038,-10000000039,-10000000040"
",-10000000041,-10000000042,-10000000043,-10000000044"
",-10000000045,-10000000046,-10000000047,-10000000048"
",-10000000049,-10000000050,-10000000051,-10000000052"
",-10000000053,-10000000054,-10000000055,-10000000056"
",-10000000057,-10000000058,-10000000059,-10000000060"
",-10000000061,-10000000062,-10000000063,-10000000064");
// varULongVal
print("], [10000000001,10000000002,10000000003,10000000004");
if(programCount > 4)
print(",10000000005,10000000006,10000000007,10000000008");
if(programCount > 8)
print(",10000000009,10000000010,10000000011,10000000012"
",10000000013,10000000014,10000000015,10000000016");
if(programCount > 16)
print(",10000000017,10000000018,10000000019,10000000020"
",10000000021,10000000022,10000000023,10000000024"
",10000000025,10000000026,10000000027,10000000028"
",10000000029,10000000030,10000000031,10000000032");
if(programCount > 32)
print(",10000000033,10000000034,10000000035,10000000036"
",10000000037,10000000038,10000000039,10000000040"
",10000000041,10000000042,10000000043,10000000044"
",10000000045,10000000046,10000000047,10000000048"
",10000000049,10000000050,10000000051,10000000052"
",10000000053,10000000054,10000000055,10000000056"
",10000000057,10000000058,10000000059,10000000060"
",10000000061,10000000062,10000000063,10000000064");
print("]\n");
}