Skip to content

Commit 17c9dfb

Browse files
authored
Merge pull request #831 from Devsh-Graphics-Programming/emulated_float_fix
Fixed ef64 cast
2 parents 8b67720 + 6ff4a4e commit 17c9dfb

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

include/nbl/builtin/hlsl/emulated/float64_t.hlsl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -516,13 +516,13 @@ struct static_cast_helper<To,emulated_float64_t<FastMath,FlushDenormToZero>,void
516516
if (exponent < 0)
517517
return 0;
518518

519-
uint64_t unsignedOutput = ieee754::extractMantissa(v.data) & 1ull << ieee754::traits<float64_t>::mantissaBitCnt;
519+
uint64_t unsignedOutput = ieee754::extractMantissa(v.data) | 1ull << ieee754::traits<float64_t>::mantissaBitCnt;
520520
const int shiftAmount = exponent - int(ieee754::traits<float64_t>::mantissaBitCnt);
521521

522522
if (shiftAmount < 0)
523-
unsignedOutput <<= -shiftAmount;
523+
unsignedOutput >>= -shiftAmount;
524524
else
525-
unsignedOutput >>= shiftAmount;
525+
unsignedOutput <<= shiftAmount;
526526

527527
if (is_signed<To>::value)
528528
{

0 commit comments

Comments
 (0)