From 447f941f3529dc87cb97f337382a20e96127d856 Mon Sep 17 00:00:00 2001 From: Staf Verhaegen Date: Tue, 13 Sep 2016 19:56:59 +0200 Subject: [PATCH] [vhdlpp]Added to_bit and to_bitvector standard functions --- vhdlpp/std_funcs.cc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/vhdlpp/std_funcs.cc b/vhdlpp/std_funcs.cc index e08e0c669..4e4a992f4 100644 --- a/vhdlpp/std_funcs.cc +++ b/vhdlpp/std_funcs.cc @@ -290,6 +290,25 @@ void preload_std_funcs(void) perm_string::literal("$signed"), args, &primitive_INTEGER)); + /* std_logic_1164 library + * function to_bit (signal s : std_ulogic) return bit; + */ + args = new list(); + args->push_back(new InterfacePort(&primitive_STDLOGIC)); + register_std_subprogram(new SubprogramBuiltin(perm_string::literal("to_bit"), + empty_perm_string, + args, &primitive_BIT)); + + /* std_logic_1164 library + * function to_bitvector (signal s : std_logic_vector) return bit_vector; + * function to_bitvector (signal s : std_ulogic_vector) return bit_vector; + */ + args = new list(); + args->push_back(new InterfacePort(&primitive_STDLOGIC_VECTOR)); + register_std_subprogram(new SubprogramBuiltin(perm_string::literal("to_bitvector"), + empty_perm_string, + args, &primitive_BIT_VECTOR)); + /* std_logic_1164 library * function rising_edge (signal s : std_ulogic) return boolean; */