mirror of
https://github.com/YosysHQ/yosys.git
synced 2026-08-22 06:07:26 +02:00
symfpu: Add altsqrt
No denormalization here. That can be a problem for later (or not at all).
This commit is contained in:
+1
-1
Submodule libs/symfpu updated: 95b27d8f2f...50cca80758
@@ -447,7 +447,8 @@ struct SymFpuPass : public Pass {
|
|||||||
}
|
}
|
||||||
if (args[argidx] == "-op" && argidx+1 < args.size()) {
|
if (args[argidx] == "-op" && argidx+1 < args.size()) {
|
||||||
op = args[++argidx];
|
op = args[++argidx];
|
||||||
if (op.compare("sqrt") == 0)
|
if (op.compare("sqrt") == 0
|
||||||
|
|| op.compare("altsqrt") == 0) // currently undocumented
|
||||||
inputs = 1;
|
inputs = 1;
|
||||||
else if (op.compare("add") == 0
|
else if (op.compare("add") == 0
|
||||||
|| op.compare("sub") == 0
|
|| op.compare("sub") == 0
|
||||||
@@ -534,6 +535,8 @@ struct SymFpuPass : public Pass {
|
|||||||
return symfpu::falseDivide_flagged(format, rounding_mode, a, b, prop(true));
|
return symfpu::falseDivide_flagged(format, rounding_mode, a, b, prop(true));
|
||||||
else if (op.compare("alt2div") == 0)
|
else if (op.compare("alt2div") == 0)
|
||||||
return symfpu::falseDivide_flagged(format, rounding_mode, a, b, prop(false));
|
return symfpu::falseDivide_flagged(format, rounding_mode, a, b, prop(false));
|
||||||
|
else if (op.compare("altsqrt") == 0)
|
||||||
|
return symfpu::falseSqrt_flagged(format, rounding_mode, a);
|
||||||
else
|
else
|
||||||
log_abort();
|
log_abort();
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user