summaryrefslogtreecommitdiff
path: root/tests/cross-compile/precise-keyword.slang
blob: 5ebfd35adc2a5b64f519c50d20fbc6d48f6c7505 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// precise-keyword.slang

//TEST:CROSS_COMPILE:-target spirv-assembly -entry main -stage fragment
//TEST:CROSS_COMPILE:-target dxbc-assembly  -entry main -stage fragment
//TEST:CROSS_COMPILE:-target dxil-assembly  -entry main -stage fragment -profile sm_6_0

// Test handling of the `precise` keyword

float4 main(float2 v : V) : SV_Target
{
	precise float z;

	if(v.x > 0)
	{
		z = v.x * v.y + v.x;
	}
	else
	{
		z = v.y * v.x + v.y;
	}

	return z;
}