aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2021-02-27 17:15:35 +0100
committerTristan Gingold <tgingold@free.fr>2021-02-27 17:15:35 +0100
commite01d0227af0092db12a6e08f3b8278d860b37416 (patch)
tree7ed3bf7bd9b4eb171df585a69b143a47800b2037 /src/vhdl
parent8e23efc43c07a714b4f429be836c86eddf167b4e (diff)
downloadghdl-e01d0227af0092db12a6e08f3b8278d860b37416.tar.gz
ghdl-e01d0227af0092db12a6e08f3b8278d860b37416.tar.bz2
ghdl-e01d0227af0092db12a6e08f3b8278d860b37416.zip
synth: handle pow and arctan from ieee.math_real. Fix #1665
Diffstat (limited to 'src/vhdl')
-rw-r--r--src/vhdl/vhdl-ieee-math_real.adb4
-rw-r--r--src/vhdl/vhdl-nodes.ads2
2 files changed, 6 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-ieee-math_real.adb b/src/vhdl/vhdl-ieee-math_real.adb
index e0bcaefd5..d11030d49 100644
--- a/src/vhdl/vhdl-ieee-math_real.adb
+++ b/src/vhdl/vhdl-ieee-math_real.adb
@@ -50,6 +50,10 @@ package body Vhdl.Ieee.Math_Real is
Predef := Iir_Predefined_Ieee_Math_Real_Sin;
when Name_Cos =>
Predef := Iir_Predefined_Ieee_Math_Real_Cos;
+ when Name_Arctan =>
+ Predef := Iir_Predefined_Ieee_Math_Real_Arctan;
+ when Name_Op_Exp =>
+ Predef := Iir_Predefined_Ieee_Math_Real_Pow;
when others =>
null;
end case;
diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads
index e03a941b2..d86ebdf86 100644
--- a/src/vhdl/vhdl-nodes.ads
+++ b/src/vhdl/vhdl-nodes.ads
@@ -5904,6 +5904,8 @@ package Vhdl.Nodes is
Iir_Predefined_Ieee_Math_Real_Log2,
Iir_Predefined_Ieee_Math_Real_Sin,
Iir_Predefined_Ieee_Math_Real_Cos,
+ Iir_Predefined_Ieee_Math_Real_Arctan,
+ Iir_Predefined_Ieee_Math_Real_Pow,
-- Std_Logic_Unsigned (synopsys extension).
Iir_Predefined_Ieee_Std_Logic_Unsigned_Add_Slv_Slv,