aboutsummaryrefslogtreecommitdiff
path: root/libphobos/src
diff options
context:
space:
mode:
Diffstat (limited to 'libphobos/src')
-rw-r--r--libphobos/src/std/math.d46
1 files changed, 33 insertions, 13 deletions
diff --git a/libphobos/src/std/math.d b/libphobos/src/std/math.d
index 7e6a97f..ff1633a 100644
--- a/libphobos/src/std/math.d
+++ b/libphobos/src/std/math.d
@@ -4767,12 +4767,17 @@ private:
}
else version (RISCV_Any)
{
- uint result = void;
- asm pure nothrow @nogc
+ version (D_SoftFloat)
+ return 0;
+ else
{
- "frflags %0" : "=r" result;
+ uint result = void;
+ asm pure nothrow @nogc
+ {
+ "frflags %0" : "=r" result;
+ }
+ return result;
}
- return result;
}
else
assert(0, "Not yet supported");
@@ -4850,10 +4855,15 @@ private:
}
else version (RISCV_Any)
{
- uint newValues = 0x0;
- asm pure nothrow @nogc
+ version (D_SoftFloat)
+ return;
+ else
{
- "fsflags %0" : : "r" newValues;
+ uint newValues = 0x0;
+ asm pure nothrow @nogc
+ {
+ "fsflags %0" : : "r" newValues;
+ }
}
}
else
@@ -5450,12 +5460,17 @@ private:
}
else version (RISCV_Any)
{
- ControlState cont;
- asm pure nothrow @nogc
+ version (D_SoftFloat)
+ return 0;
+ else
{
- "frcsr %0" : "=r" cont;
+ ControlState cont;
+ asm pure nothrow @nogc
+ {
+ "frcsr %0" : "=r" cont;
+ }
+ return cont;
}
- return cont;
}
else
assert(0, "Not yet supported");
@@ -5544,9 +5559,14 @@ private:
}
else version (RISCV_Any)
{
- asm pure nothrow @nogc
+ version (D_SoftFloat)
+ return;
+ else
{
- "fscsr %0" : : "r" (newState);
+ asm pure nothrow @nogc
+ {
+ "fscsr %0" : : "r" (newState);
+ }
}
}
else