aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2018-10-21 17:29:02 +0200
committerTristan Gingold <tgingold@free.fr>2018-10-21 17:29:02 +0200
commit459ffbfa71366beb87436f02352e33d31c700aab (patch)
tree44d5ad50843977b247bc176659ee731e339a70cb
parente050ffb26e51cb3c064342ecb01822ab7c269712 (diff)
downloadghdl-459ffbfa71366beb87436f02352e33d31c700aab.tar.gz
ghdl-459ffbfa71366beb87436f02352e33d31c700aab.tar.bz2
ghdl-459ffbfa71366beb87436f02352e33d31c700aab.zip
ghdllocal: clean post files.
-rw-r--r--src/ghdldrv/ghdldrv.adb3
-rw-r--r--src/ghdldrv/ghdllocal.adb3
-rw-r--r--src/ghdldrv/ghdllocal.ads3
-rw-r--r--testsuite/gna/bug053/tb3.on2170
-rw-r--r--testsuite/gna/issue317/repro4.on0
-rw-r--r--testsuite/gna/issue626/repro.on2222
-rw-r--r--testsuite/gna/issue626/top.on2845
-rw-r--r--testsuite/gna/sr2737/repro.on1962
8 files changed, 6 insertions, 9202 deletions
diff --git a/src/ghdldrv/ghdldrv.adb b/src/ghdldrv/ghdldrv.adb
index 83c54260c..00e26a65c 100644
--- a/src/ghdldrv/ghdldrv.adb
+++ b/src/ghdldrv/ghdldrv.adb
@@ -66,9 +66,6 @@ package body Ghdldrv is
-- "-fpic" option.
Dash_Fpic : constant String_Access := new String'("-fpic");
- -- True if --post is present.
- Flag_Postprocess : Boolean := False;
-
-- If set, do not assmble
Flag_Asm : Boolean;
diff --git a/src/ghdldrv/ghdllocal.adb b/src/ghdldrv/ghdllocal.adb
index fbc27087e..19481e88b 100644
--- a/src/ghdldrv/ghdllocal.adb
+++ b/src/ghdldrv/ghdllocal.adb
@@ -873,6 +873,9 @@ package body Ghdllocal is
begin
Delete (Str & Obj_Suffix.all & Nul);
Delete (Str & Asm_Suffix & Nul);
+ if Flag_Postprocess then
+ Delete (Str & Post_Suffix & Nul);
+ end if;
end Delete_Asm_Obj;
procedure Delete_Top_Unit (Str : String) is
diff --git a/src/ghdldrv/ghdllocal.ads b/src/ghdldrv/ghdllocal.ads
index 3624543d8..ff66c4d59 100644
--- a/src/ghdldrv/ghdllocal.ads
+++ b/src/ghdldrv/ghdllocal.ads
@@ -56,6 +56,9 @@ package Ghdllocal is
-- Set with -v option.
Flag_Verbose : Boolean := False;
+ -- True if --post is present.
+ Flag_Postprocess : Boolean := False;
+
-- Suffix for asm files.
Asm_Suffix : constant String := ".s";
diff --git a/testsuite/gna/bug053/tb3.on b/testsuite/gna/bug053/tb3.on
deleted file mode 100644
index a525a49e4..000000000
--- a/testsuite/gna/bug053/tb3.on
+++ /dev/null
@@ -1,2170 +0,0 @@
--- internal declarations, part 1
-
-TYPE __ghdl_size_type IS UNSIGNED (32);
-
-TYPE __ghdl_index_type IS UNSIGNED (32);
-
-TYPE __ghdl_i32 IS SIGNED (32);
-
-TYPE __ghdl_real IS FLOAT;
-
-TYPE __ghdl_i64 IS SIGNED (64);
-
-TYPE __ghdl_file_index IS UNSIGNED (32);
-
-TYPE __ghdl_file_index_ptr IS ACCESS __ghdl_file_index;
-
-TYPE __ghdl_char IS UNSIGNED (8);
-
-TYPE __ghdl_chararray IS ARRAY [__ghdl_index_type] OF __ghdl_char;
-
-TYPE __ghdl_char_ptr IS ACCESS __ghdl_chararray;
-
-TYPE __ghdl_char_ptr_array IS ARRAY [__ghdl_index_type] OF __ghdl_char_ptr;
-
-TYPE __ghdl_char_ptr_array_ptr IS ACCESS __ghdl_char_ptr_array;
-
-TYPE __ghdl_ptr IS ACCESS __ghdl_char;
-
-TYPE __ghdl_str_len IS RECORD
- len: __ghdl_index_type;
- str: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_str_len_array IS ARRAY [__ghdl_index_type] OF __ghdl_str_len;
-
-TYPE __ghdl_str_len_ptr IS ACCESS __ghdl_str_len;
-
-TYPE __ghdl_bool_type IS BOOLEAN {false, true};
-
-TYPE __ghdl_bool_array_type IS ARRAY [__ghdl_index_type] OF __ghdl_bool_type;
-
-TYPE __ghdl_bool_array_ptr IS ACCESS __ghdl_bool_array_type;
-
-TYPE __ghdl_compare_type IS ENUM {lt, eq, gt};
-
-TYPE __ghdl_location IS RECORD
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- col: __ghdl_i32;
-END RECORD;
-
-TYPE __ghdl_location_ptr IS ACCESS __ghdl_location;
-
-TYPE __ghdl_dir_type IS ENUM {dir_to, dir_downto};
-
-TYPE __ghdl_signal IS RECORD;
-
-TYPE __ghdl_signal_ptr IS ACCESS __ghdl_signal;
-
-EXTERNAL FUNCTION __ghdl_alloc (
- size: __ghdl_size_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_program_error (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- code: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bound_check_failed_l1 (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_stack2_allocate (
- size: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_stack2_mark (
- )
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_stack2_release (
- mark: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_memcpy (
- dest: __ghdl_ptr;
- src: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_deallocate (
- OBJ: __ghdl_ptr);
-
-EXTERNAL FUNCTION __ghdl_malloc (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_malloc0 (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_text_file_elaborate (
- )
- RETURN __ghdl_file_index;
-
-EXTERNAL FUNCTION __ghdl_file_elaborate (
- NAME: __ghdl_char_ptr)
- RETURN __ghdl_file_index;
-
-EXTERNAL PROCEDURE __ghdl_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_text_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_protected_enter (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_leave (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_init (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_fini (
- OBJ: __ghdl_ptr);
-
-TYPE __ghdl_rtik IS ENUM {__ghdl_rtik_top, __ghdl_rtik_library,
- __ghdl_rtik_package, __ghdl_rtik_package_body, __ghdl_rtik_entity,
- __ghdl_rtik_architecture, __ghdl_rtik_process, __ghdl_rtik_block,
- __ghdl_rtik_if_generate, __ghdl_rtik_case_generate,
- __ghdl_rtik_for_generate, __ghdl_rtik_generate_body, __ghdl_rtik_instance,
- __ghdl_rtik_constant, __ghdl_rtik_iterator, __ghdl_rtik_variable,
- __ghdl_rtik_signal, __ghdl_rtik_file, __ghdl_rtik_port,
- __ghdl_rtik_generic, __ghdl_rtik_alias, __ghdl_rtik_guard,
- __ghdl_rtik_component, __ghdl_rtik_attribute, __ghdl_rtik_type_b1,
- __ghdl_rtik_type_e8, __ghdl_rtik_type_e32, __ghdl_rtik_type_i32,
- __ghdl_rtik_type_i64, __ghdl_rtik_type_f64, __ghdl_rtik_type_p32,
- __ghdl_rtik_type_p64, __ghdl_rtik_type_access, __ghdl_rtik_type_array,
- __ghdl_rtik_type_record, __ghdl_rtik_type_file, __ghdl_rtik_subtype_scalar,
- __ghdl_rtik_subtype_array, __ghdl_rtik_subtype_unconstrained_array,
- __ghdl_rtik_subtype_record, __ghdl_rtik_subtype_access,
- __ghdl_rtik_type_protected, __ghdl_rtik_element, __ghdl_rtik_unit64,
- __ghdl_rtik_unitptr, __ghdl_rtik_attribute_transaction,
- __ghdl_rtik_attribute_quiet, __ghdl_rtik_attribute_stable,
- __ghdl_rtik_psl_assert, __ghdl_rtik_psl_cover, __ghdl_rtik_psl_endpoint,
- __ghdl_rtik_error};
-
-TYPE __ghdl_rti_depth IS UNSIGNED (8);
-
-TYPE __ghdl_rti_u8 IS UNSIGNED (8);
-
-TYPE __ghdl_rti_common IS RECORD
- kind: __ghdl_rtik;
- depth: __ghdl_rti_depth;
- mode: __ghdl_rti_u8;
- max_depth: __ghdl_rti_depth;
-END RECORD;
-
-TYPE __ghdl_rti_access IS ACCESS __ghdl_rti_common;
-
-TYPE __ghdl_rti_array IS ARRAY [__ghdl_index_type] OF __ghdl_rti_access;
-
-TYPE __ghdl_rti_arr_acc IS ACCESS __ghdl_rti_array;
-
-TYPE __ghdl_component_link_type IS RECORD;
-
-TYPE __ghdl_component_link_acc IS ACCESS __ghdl_component_link_type;
-
-TYPE __ghdl_entity_link_type IS RECORD
- rti: __ghdl_rti_access;
- parent: __ghdl_component_link_acc;
-END RECORD;
-
-TYPE __ghdl_entity_link_acc IS ACCESS __ghdl_entity_link_type;
-
-TYPE __ghdl_component_link_type IS RECORD
- INSTANCE: __ghdl_entity_link_acc;
- stmt: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_generate IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- size: __ghdl_index_type;
- child: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block_file IS RECORD
- block: __ghdl_rtin_block;
- filename: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_enum IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- lits: __ghdl_char_ptr_array_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
- range: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_unit64 IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- val: __ghdl_i64;
-END RECORD;
-
-TYPE __ghdl_rtin_unitptr IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- addr: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_physical IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- units: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_type_fileacc IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_type_array IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- element: __ghdl_rti_access;
- nbr_dim: __ghdl_index_type;
- indexes: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_array IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- basetype: __ghdl_rti_access;
- bounds: __ghdl_ptr;
- val_size: __ghdl_ptr;
- sig_size: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_record IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbrel: __ghdl_index_type;
- elements: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_element IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- eltype: __ghdl_rti_access;
- val_off: __ghdl_index_type;
- sig_off: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_object IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- obj_type: __ghdl_rti_access;
- linecol: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_instance IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- linecol: __ghdl_index_type;
- loc: __ghdl_ptr;
- parent: __ghdl_rti_access;
- instance: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_component IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-EXTERNAL PROCEDURE __ghdl_signal_name_rti (
- OBJ: __ghdl_rti_access;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_finalize_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr);
-
--- package std.standard
-
-TYPE std__standard__boolean IS BOOLEAN {false, true};
-
-TYPE std__standard__boolean__PTR IS ACCESS std__standard__boolean;
-
-TYPE std__standard__boolean__TRT IS RECORD
- left: std__standard__boolean;
- right: std__standard__boolean;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__boolean__TRPTR IS ACCESS std__standard__boolean__TRT;
-
-TYPE std__standard__BOOLEAN_ARRAY IS ARRAY [__ghdl_index_type] OF
- std__standard__boolean;
-
-TYPE std__standard__bit IS BOOLEAN {C_0, C_1};
-
-TYPE std__standard__bit__PTR IS ACCESS std__standard__bit;
-
-TYPE std__standard__bit__TRT IS RECORD
- left: std__standard__bit;
- right: std__standard__bit;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__bit__TRPTR IS ACCESS std__standard__bit__TRT;
-
-TYPE std__standard__character IS ENUM {nul, soh, stx, etx, eot, enq, ack, bel,
- bs, ht, lf, vt, ff, cr, so, si, dle, dc1, dc2, dc3, dc4, nak, syn, etb,
- can, em, sub, esc, fsp, gsp, rsp, usp, C20, C21, C22, C23, C24, C25, C26,
- C27, C28, C29, C2a, C2b, C2c, C2d, C2e, C2f, C_0, C_1, C_2, C_3, C_4, C_5,
- C_6, C_7, C_8, C_9, C3a, C3b, C3c, C3d, C3e, C3f, C40, C_A, C_B, C_C, C_D,
- C_E, C_F, C_G, C_H, C_I, C_J, C_K, C_L, C_M, C_N, C_O, C_P, C_Q, C_R, C_S,
- C_T, C_U, C_V, C_W, C_X, C_Y, C_Z, C5b, C5c, C5d, C5e, C5f, C60, C_a, C_b,
- C_c, C_d, C_e, C_f, C_g, C_h, C_i, C_j, C_k, C_l, C_m, C_n, C_o, C_p, C_q,
- C_r, C_s, C_t, C_u, C_v, C_w, C_x, C_y, C_z, C7b, C7c, C7d, C7e, del, c128,
- c129, c130, c131, c132, c133, c134, c135, c136, c137, c138, c139, c140,
- c141, c142, c143, c144, c145, c146, c147, c148, c149, c150, c151, c152,
- c153, c154, c155, c156, c157, c158, c159, Ca0, Ca1, Ca2, Ca3, Ca4, Ca5,
- Ca6, Ca7, Ca8, Ca9, Caa, Cab, Cac, Cad, Cae, Caf, Cb0, Cb1, Cb2, Cb3, Cb4,
- Cb5, Cb6, Cb7, Cb8, Cb9, Cba, Cbb, Cbc, Cbd, Cbe, Cbf, Cc0, Cc1, Cc2, Cc3,
- Cc4, Cc5, Cc6, Cc7, Cc8, Cc9, Cca, Ccb, Ccc, Ccd, Cce, Ccf, Cd0, Cd1, Cd2,
- Cd3, Cd4, Cd5, Cd6, Cd7, Cd8, Cd9, Cda, Cdb, Cdc, Cdd, Cde, Cdf, Ce0, Ce1,
- Ce2, Ce3, Ce4, Ce5, Ce6, Ce7, Ce8, Ce9, Cea, Ceb, Cec, Ced, Cee, Cef, Cf0,
- Cf1, Cf2, Cf3, Cf4, Cf5, Cf6, Cf7, Cf8, Cf9, Cfa, Cfb, Cfc, Cfd, Cfe, Cff};
-
-TYPE std__standard__character__PTR IS ACCESS std__standard__character;
-
-TYPE std__standard__character__TRT IS RECORD
- left: std__standard__character;
- right: std__standard__character;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__character__TRPTR IS ACCESS std__standard__character__TRT;
-
-EXTERNAL CONSTANT std__standard__character__BTR : std__standard__character__TRT
- ;
-
-TYPE std__standard__severity_level IS ENUM {note, warning, error, failure};
-
-TYPE std__standard__severity_level__PTR IS ACCESS std__standard__severity_level
- ;
-
-TYPE std__standard__severity_level__TRT IS RECORD
- left: std__standard__severity_level;
- right: std__standard__severity_level;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__severity_level__TRPTR IS ACCESS
- std__standard__severity_level__TRT;
-
-EXTERNAL CONSTANT std__standard__severity_level__BTR :
- std__standard__severity_level__TRT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_INTEGER__BT;
- right: std__standard__UNIVERSAL_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__STR :
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT IS FLOAT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_REAL__BT;
- right: std__standard__UNIVERSAL_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__STR :
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-TYPE std__standard__integer__BT IS SIGNED (32);
-
-TYPE std__standard__integer__BT__PTR IS ACCESS std__standard__integer__BT;
-
-TYPE std__standard__integer__BT__TRT IS RECORD
- left: std__standard__integer__BT;
- right: std__standard__integer__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__integer__BT__TRPTR IS ACCESS
- std__standard__integer__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__integer__STR : std__standard__integer__BT__TRT
- ;
-
-TYPE std__standard__real__BT IS FLOAT;
-
-TYPE std__standard__real__BT__PTR IS ACCESS std__standard__real__BT;
-
-TYPE std__standard__real__BT__TRT IS RECORD
- left: std__standard__real__BT;
- right: std__standard__real__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__real__BT__TRPTR IS ACCESS std__standard__real__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__real__STR : std__standard__real__BT__TRT;
-
-TYPE std__standard__time__BT IS SIGNED (64);
-
-TYPE std__standard__time__BT__PTR IS ACCESS std__standard__time__BT;
-
-TYPE std__standard__time__BT__TRT IS RECORD
- left: std__standard__time__BT;
- right: std__standard__time__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__time__BT__TRPTR IS ACCESS std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__time__STR : std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__delay_length__STR :
- std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__natural__STR : std__standard__integer__BT__TRT
- ;
-
-EXTERNAL CONSTANT std__standard__positive__STR :
- std__standard__integer__BT__TRT;
-
-TYPE std__standard__string__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__character;
-
-TYPE std__standard__string__BASEP IS ACCESS std__standard__string__BASE;
-
-TYPE std__standard__string__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__string__SIGBASEP IS ACCESS std__standard__string__SIGBASE;
-
-TYPE std__standard__string__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__string__BOUNDP IS ACCESS std__standard__string__BOUND;
-
-TYPE std__standard__string IS RECORD
- BASE: std__standard__string__BASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__PTR IS ACCESS std__standard__string;
-
-TYPE std__standard__string__SIG IS RECORD
- BASE: std__standard__string__SIGBASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__SIGPTR IS ACCESS std__standard__string__SIG;
-
-EXTERNAL FUNCTION std__standard__string_EQ (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__string_CMP (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN __ghdl_compare_type;
-
-TYPE std__standard__boolean_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__boolean;
-
-TYPE std__standard__boolean_vector__BASEP IS ACCESS
- std__standard__boolean_vector__BASE;
-
-TYPE std__standard__boolean_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__boolean_vector__SIGBASEP IS ACCESS
- std__standard__boolean_vector__SIGBASE;
-
-TYPE std__standard__boolean_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__boolean_vector__BOUNDP IS ACCESS
- std__standard__boolean_vector__BOUND;
-
-TYPE std__standard__boolean_vector IS RECORD
- BASE: std__standard__boolean_vector__BASEP;
- BOUNDS: std__standard__boolean_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__boolean_vector__PTR IS ACCESS std__standard__boolean_vector
- ;
-
-TYPE std__standard__boolean_vector__SIG IS RECORD
- BASE: std__standard__boolean_vector__SIGBASEP;
- BOUNDS: std__standard__boolean_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__boolean_vector__SIGPTR IS ACCESS
- std__standard__boolean_vector__SIG;
-
-EXTERNAL FUNCTION std__standard__boolean_vector_EQ (
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__boolean_vector_CMP (
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_NOT (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_AND (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_OR (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_NAND (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_NOR (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_XOR (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_XNOR (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__boolean_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_SHL (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_SHA (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__boolean_vector_ROT (
- res: std__standard__boolean_vector__PTR;
- left: std__standard__boolean_vector__PTR;
- right: std__standard__integer__BT);
-
-TYPE std__standard__bit_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__bit;
-
-TYPE std__standard__bit_vector__BASEP IS ACCESS std__standard__bit_vector__BASE
- ;
-
-TYPE std__standard__bit_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__bit_vector__SIGBASEP IS ACCESS
- std__standard__bit_vector__SIGBASE;
-
-TYPE std__standard__bit_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__bit_vector__BOUNDP IS ACCESS
- std__standard__bit_vector__BOUND;
-
-TYPE std__standard__bit_vector IS RECORD
- BASE: std__standard__bit_vector__BASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__PTR IS ACCESS std__standard__bit_vector;
-
-TYPE std__standard__bit_vector__SIG IS RECORD
- BASE: std__standard__bit_vector__SIGBASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__SIGPTR IS ACCESS std__standard__bit_vector__SIG
- ;
-
-EXTERNAL FUNCTION std__standard__bit_vector_EQ (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__bit_vector_CMP (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_AND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_OR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NAND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XNOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHL (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHA (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_ROT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-TYPE std__standard__integer_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__integer__BT;
-
-TYPE std__standard__integer_vector__BASEP IS ACCESS
- std__standard__integer_vector__BASE;
-
-TYPE std__standard__integer_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__integer_vector__SIGBASEP IS ACCESS
- std__standard__integer_vector__SIGBASE;
-
-TYPE std__standard__integer_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__integer_vector__BOUNDP IS ACCESS
- std__standard__integer_vector__BOUND;
-
-TYPE std__standard__integer_vector IS RECORD
- BASE: std__standard__integer_vector__BASEP;
- BOUNDS: std__standard__integer_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__integer_vector__PTR IS ACCESS std__standard__integer_vector
- ;
-
-TYPE std__standard__integer_vector__SIG IS RECORD
- BASE: std__standard__integer_vector__SIGBASEP;
- BOUNDS: std__standard__integer_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__integer_vector__SIGPTR IS ACCESS
- std__standard__integer_vector__SIG;
-
-EXTERNAL FUNCTION std__standard__integer_vector_EQ (
- left: std__standard__integer_vector__PTR;
- right: std__standard__integer_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__integer_vector_CMP (
- left: std__standard__integer_vector__PTR;
- right: std__standard__integer_vector__PTR)
- RETURN __ghdl_compare_type;
-
-TYPE std__standard__real_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__real__BT;
-
-TYPE std__standard__real_vector__BASEP IS ACCESS
- std__standard__real_vector__BASE;
-
-TYPE std__standard__real_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__real_vector__SIGBASEP IS ACCESS
- std__standard__real_vector__SIGBASE;
-
-TYPE std__standard__real_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__real_vector__BOUNDP IS ACCESS
- std__standard__real_vector__BOUND;
-
-TYPE std__standard__real_vector IS RECORD
- BASE: std__standard__real_vector__BASEP;
- BOUNDS: std__standard__real_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__real_vector__PTR IS ACCESS std__standard__real_vector;
-
-TYPE std__standard__real_vector__SIG IS RECORD
- BASE: std__standard__real_vector__SIGBASEP;
- BOUNDS: std__standard__real_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__real_vector__SIGPTR IS ACCESS
- std__standard__real_vector__SIG;
-
-EXTERNAL FUNCTION std__standard__real_vector_EQ (
- left: std__standard__real_vector__PTR;
- right: std__standard__real_vector__PTR)
- RETURN std__standard__boolean;
-
-TYPE std__standard__time_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__time__BT;
-
-TYPE std__standard__time_vector__BASEP IS ACCESS
- std__standard__time_vector__BASE;
-
-TYPE std__standard__time_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__time_vector__SIGBASEP IS ACCESS
- std__standard__time_vector__SIGBASE;
-
-TYPE std__standard__time_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__time_vector__BOUNDP IS ACCESS
- std__standard__time_vector__BOUND;
-
-TYPE std__standard__time_vector IS RECORD
- BASE: std__standard__time_vector__BASEP;
- BOUNDS: std__standard__time_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__time_vector__PTR IS ACCESS std__standard__time_vector;
-
-TYPE std__standard__time_vector__SIG IS RECORD
- BASE: std__standard__time_vector__SIGBASEP;
- BOUNDS: std__standard__time_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__time_vector__SIGPTR IS ACCESS
- std__standard__time_vector__SIG;
-
-EXTERNAL FUNCTION std__standard__time_vector_EQ (
- left: std__standard__time_vector__PTR;
- right: std__standard__time_vector__PTR)
- RETURN std__standard__boolean;
-
-TYPE std__standard__file_open_kind IS ENUM {read_mode, write_mode,
- append_mode};
-
-TYPE std__standard__file_open_kind__PTR IS ACCESS std__standard__file_open_kind
- ;
-
-TYPE std__standard__file_open_kind__TRT IS RECORD
- left: std__standard__file_open_kind;
- right: std__standard__file_open_kind;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_kind__TRPTR IS ACCESS
- std__standard__file_open_kind__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__BTR :
- std__standard__file_open_kind__TRT;
-
-TYPE std__standard__file_open_status IS ENUM {open_ok, status_error,
- name_error, mode_error};
-
-TYPE std__standard__file_open_status__PTR IS ACCESS
- std__standard__file_open_status;
-
-TYPE std__standard__file_open_status__TRT IS RECORD
- left: std__standard__file_open_status;
- right: std__standard__file_open_status;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_status__TRPTR IS ACCESS
- std__standard__file_open_status__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_status__BTR :
- std__standard__file_open_status__TRT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_INTEGER__BT;
- right: std__standard__CONVERTIBLE_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT__TRT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT IS FLOAT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_REAL__BT;
- right: std__standard__CONVERTIBLE_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__RTI : __ghdl_rtin_block;
-
-EXTERNAL CONSTANT std__standard__boolean__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__bit__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__character__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__severity_level__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__real__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__real__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__time__BT__RTI : __ghdl_rtin_type_physical;
-
-EXTERNAL CONSTANT std__standard__time__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__delay_length__RTI : __ghdl_rtin_subtype_scalar
- ;
-
-EXTERNAL CONSTANT std__standard__natural__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__positive__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__string__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__boolean_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__bit_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__integer_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__real_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__time_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__file_open_status__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__foreign__RTI : __ghdl_rtin_object;
-
-TYPE __ghdl_std_ulogic_boolean_array_type IS SUBARRAY
- std__standard__BOOLEAN_ARRAY[9];
-
-EXTERNAL CONSTANT __ghdl_std_ulogic_to_boolean_array :
- __ghdl_std_ulogic_boolean_array_type;
-
--- internal declarations, part 2
-
-EXTERNAL VAR __ghdl_now : std__standard__time__BT;
-
-EXTERNAL PROCEDURE __ghdl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_ieee_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_report (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_text_write (
- file: __ghdl_file_index;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_read_length (
- file: __ghdl_file_index;
- str: std__standard__string__PTR)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_write_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_read_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_real_exp (
- left: std__standard__real__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__real__BT;
-
-EXTERNAL FUNCTION __ghdl_integer_exp (
- left: std__standard__integer__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_image_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_b1 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_image_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e8 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_value_i32 (
- val: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p64 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_image_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_value_f64 (
- val: std__standard__string__PTR)
- RETURN __ghdl_real;
-
-EXTERNAL PROCEDURE __ghdl_text_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_endfile (
- file: __ghdl_file_index)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_text_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_flush (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_signal_create_resolution (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- sig: __ghdl_ptr;
- nbr_sig: __ghdl_index_type);
-
-TYPE __ghdl_scalar_bytes IS SUBARRAY __ghdl_chararray[8];
-
-TYPE __ghdl_signal IS RECORD
- driving_value: __ghdl_scalar_bytes;
- last_value: __ghdl_scalar_bytes;
- last_event: std__standard__time__BT;
- last_active: std__standard__time__BT;
- value: __ghdl_ptr;
- event: std__standard__boolean;
- active: std__standard__boolean;
- has_active: __ghdl_bool_type;
-END RECORD;
-
-TYPE __ghdl_signal_ptr_ptr IS ACCESS __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_merge_rti (
- sig: __ghdl_signal_ptr;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_source (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_effective_value (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_set_disconnect (
- sig: __ghdl_signal_ptr;
- time: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_disconnect (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_drivers (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_ports (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_read_driver (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_read_port (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_driving (
- sig: __ghdl_signal_ptr)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_error (
- sig: __ghdl_signal_ptr;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_error (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_error (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_null (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_null (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT);
-
-EXTERNAL FUNCTION __ghdl_create_signal_e8 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e8 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e8 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_e32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_b1 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_b1 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_b1 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_bool_type;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_f64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_f64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_f64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_real;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_process_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_add_driver (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_direct_driver (
- sig: __ghdl_signal_ptr;
- drv: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_direct_assign (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_in_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_out_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_create_stable_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_quiet_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_transaction_signal (
- val_ptr: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_attribute_register_prefix (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_create_delayed_signal (
- sig: __ghdl_signal_ptr;
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_create_guard (
- val_ptr: __ghdl_ptr;
- this: __ghdl_ptr;
- proc: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_guard_dependence (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_exit (
- );
-
-EXTERNAL PROCEDURE __ghdl_process_wait_timeout (
- time: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_set_timeout (
- time: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_suspend (
- );
-
-EXTERNAL FUNCTION __ghdl_process_wait_timed_out (
- )
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_process_wait_close (
- );
-
-EXTERNAL PROCEDURE __ghdl_get_path_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_get_instance_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_package (
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_top (
- max_pkgs: __ghdl_index_type;
- pkgs: __ghdl_rti_arr_acc;
- RTI: __ghdl_rti_access;
- INSTANCE: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_init_top_generics (
- );
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_eq (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_ne (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_lt (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_le (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_eq (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_ne (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_to_string_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_i64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_digits (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- nbr_digits: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_format (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- format: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_ostring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_hstring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_char (
- res: std__standard__string__PTR;
- val: std__standard__character);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_time_to_string_unit (
- res: std__standard__string__PTR;
- val: std__standard__time__BT;
- unit: std__standard__time__BT;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-PRIVATE CONSTANT _UI00000000 : SUBARRAY __ghdl_chararray[9];
-
-CONSTANT _UI00000000 := {116, 98, 51, 46, 118, 104, 100, 108, 0};
-
---F /Users/gingold/devel/ghdl/testsuite/gna/bug053/tb3.vhdl
-
--- package declaration pkg2
-
-PUBLIC CONSTANT work__pkg2__pkg1__c : std__standard__integer__BT;
-
-CONSTANT work__pkg2__pkg1__c := 5;
-
-PUBLIC FUNCTION work__pkg2__pkg1__f (
- )
- RETURN std__standard__integer__BT;
-
-PUBLIC VAR work__pkg2__ELABORATED : __ghdl_bool_type;
-
-PUBLIC PROCEDURE work__pkg2__ELAB_BODY (
- );
-
-PUBLIC PROCEDURE work__pkg2__ELAB_SPEC (
- );
-
-EXTERNAL CONSTANT work__RTI : __ghdl_rtin_type_scalar;
-
-PUBLIC CONSTANT work__pkg2__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__pkg2__pkg1__RTI : __ghdl_rtin_block;
-
-PUBLIC CONSTANT work__pkg2__pkg1__c__RTI : __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__pkg2__pkg1__c__RTISTR : SUBARRAY __ghdl_chararray[2];
-
-CONSTANT work__pkg2__pkg1__c__RTISTR := {99, 0};
-
-CONSTANT work__pkg2__pkg1__c__RTI := {{__ghdl_rtik'[__ghdl_rtik_constant], 0,
- 0, 0}, __ghdl_char_ptr'unchecked_address (work__pkg2__pkg1__c__RTISTR),
- __ghdl_ptr'unchecked_address (work__pkg2__pkg1__c),
- __ghdl_rti_access'unchecked_address (std__standard__natural__RTI), 782};
-
-PRIVATE CONSTANT work__pkg2__pkg1__RTISTR : SUBARRAY __ghdl_chararray[5];
-
-CONSTANT work__pkg2__pkg1__RTISTR := {112, 107, 103, 49, 0};
-
-PRIVATE CONSTANT work__pkg2__pkg1__RTIARRAY : SUBARRAY __ghdl_rti_array[2];
-
-CONSTANT work__pkg2__pkg1__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__pkg2__pkg1__c__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__pkg2__pkg1__RTI := {{__ghdl_rtik'[__ghdl_rtik_package], 2, 0,
- 0}, __ghdl_char_ptr'address (work__pkg2__pkg1__RTISTR), __ghdl_ptr'[NULL],
- 523, __ghdl_rti_access'unchecked_address (work__pkg2__RTI), 1,
- __ghdl_rti_arr_acc'address (work__pkg2__pkg1__RTIARRAY)};
-
-PRIVATE CONSTANT work__pkg2__RTISTR : SUBARRAY __ghdl_chararray[5];
-
-CONSTANT work__pkg2__RTISTR := {112, 107, 103, 50, 0};
-
-PRIVATE CONSTANT work__pkg2__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__pkg2__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__pkg2__RTI := {{{__ghdl_rtik'[__ghdl_rtik_package], 1, 0, 0},
- __ghdl_char_ptr'address (work__pkg2__RTISTR), __ghdl_ptr'[NULL], 265,
- __ghdl_rti_access'unchecked_address (work__RTI), 0,
- __ghdl_rti_arr_acc'address (work__pkg2__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__pkg2__ELAB_SPEC (
- )
-DECLARE
-BEGIN
- __ghdl_rti_add_package (__ghdl_rti_access'unchecked_address (work__pkg2__RTI)
- );
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/bug053/tb3.vhdl
-
--- package body pkg2
-
-PRIVATE CONSTANT work__pkg2__BODY__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__pkg2__BODY__RTISTR : SUBARRAY __ghdl_chararray[5];
-
-CONSTANT work__pkg2__BODY__RTISTR := {112, 107, 103, 49, 0};
-
-PRIVATE CONSTANT work__pkg2__BODY__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__pkg2__BODY__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__pkg2__BODY__RTI := {{__ghdl_rtik'[__ghdl_rtik_package_body], 1,
- 0, 0}, __ghdl_char_ptr'address (work__pkg2__BODY__RTISTR),
- __ghdl_ptr'[NULL], 2320,
- __ghdl_rti_access'unchecked_address (work__pkg2__pkg1__RTI), 0,
- __ghdl_rti_arr_acc'address (work__pkg2__BODY__RTIARRAY)};
-
-PUBLIC FUNCTION work__pkg2__pkg1__f (
- )
- RETURN std__standard__integer__BT
-DECLARE
-BEGIN
- --# 12
- DECLARE
- LOCAL VAR T1_0 : std__standard__integer__BT;
- BEGIN
- T1_0 := 3;
- RETURN T1_0;
- END;
-END;
-
-PRIVATE CONSTANT work__pkg2__BODY__RTI : __ghdl_rtin_block_file;
-
-PRIVATE CONSTANT work__pkg2__BODY__pkg1__BODY__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__pkg2__BODY__pkg1__BODY__RTISTR : SUBARRAY
- __ghdl_chararray[5];
-
-CONSTANT work__pkg2__BODY__pkg1__BODY__RTISTR := {112, 107, 103, 49, 0};
-
-PRIVATE CONSTANT work__pkg2__BODY__pkg1__BODY__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__pkg2__BODY__pkg1__BODY__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__pkg2__BODY__pkg1__BODY__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_package_body], 2, 0, 0},
- __ghdl_char_ptr'address (work__pkg2__BODY__pkg1__BODY__RTISTR),
- __ghdl_ptr'[NULL], 2320,
- __ghdl_rti_access'unchecked_address (work__pkg2__BODY__RTI), 0,
- __ghdl_rti_arr_acc'address (work__pkg2__BODY__pkg1__BODY__RTIARRAY)};
-
-PRIVATE CONSTANT work__pkg2__BODY__RTISTR : SUBARRAY __ghdl_chararray[5];
-
-CONSTANT work__pkg2__BODY__RTISTR := {112, 107, 103, 50, 0};
-
-PRIVATE CONSTANT work__pkg2__BODY__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__pkg2__BODY__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__pkg2__BODY__RTI := {{{__ghdl_rtik'[__ghdl_rtik_package_body],
- 1, 0, 0}, __ghdl_char_ptr'address (work__pkg2__BODY__RTISTR),
- __ghdl_ptr'[NULL], 2062,
- __ghdl_rti_access'unchecked_address (work__pkg2__RTI), 0,
- __ghdl_rti_arr_acc'address (work__pkg2__BODY__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__pkg2__ELAB_BODY (
- )
-DECLARE
-BEGIN
- IF work__pkg2__ELABORATED THEN
- RETURN ;
- ELSE
- work__pkg2__ELABORATED := __ghdl_bool_type'[true];
- END IF;
- work__pkg2__ELAB_SPEC ();
- IF NOT work__pkg2__ELABORATED THEN
- work__pkg2__ELAB_BODY ();
- END IF;
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/bug053/tb3.vhdl
-
--- entity tb3
-
-TYPE work__tb3__INSTTYPE IS RECORD;
-
-TYPE work__tb3__INSTPTR IS ACCESS work__tb3__INSTTYPE;
-
-TYPE work__tb3__INSTTYPE IS RECORD
- RTI: __ghdl_entity_link_type;
-END RECORD;
-
-PUBLIC PROCEDURE work__tb3__DECL_ELAB (
- INSTANCE: work__tb3__INSTPTR);
-
-PUBLIC PROCEDURE work__tb3__STMT_ELAB (
- INSTANCE: work__tb3__INSTPTR);
-
-PUBLIC PROCEDURE work__tb3__PKG_ELAB (
- );
-
-PUBLIC CONSTANT work__tb3__RTI : __ghdl_rtin_block_file;
-
-PRIVATE CONSTANT work__tb3__RTISTR : SUBARRAY __ghdl_chararray[4];
-
-CONSTANT work__tb3__RTISTR := {116, 98, 51, 0};
-
-PRIVATE CONSTANT work__tb3__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__tb3__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__RTI := {{{__ghdl_rtik'[__ghdl_rtik_entity], 1, 0, 0},
- __ghdl_char_ptr'address (work__tb3__RTISTR), __ghdl_ptr'[NULL], 4360,
- __ghdl_rti_access'unchecked_address (work__RTI), 0,
- __ghdl_rti_arr_acc'address (work__tb3__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__tb3__PKG_ELAB (
- )
-DECLARE
-BEGIN
- --# 17
-END;
-
-PUBLIC PROCEDURE work__tb3__DECL_ELAB (
- INSTANCE: work__tb3__INSTPTR)
-DECLARE
-BEGIN
- --# 17
- --# 17
-END;
-
-PUBLIC PROCEDURE work__tb3__STMT_ELAB (
- INSTANCE: work__tb3__INSTPTR)
-DECLARE
-BEGIN
- --# 17
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/bug053/tb3.vhdl
-
--- architecture behav
-
-TYPE work__tb3__ARCH__behav__INSTTYPE IS RECORD;
-
-TYPE work__tb3__ARCH__behav__INSTPTR IS ACCESS work__tb3__ARCH__behav__INSTTYPE
- ;
-
-TYPE work__tb3__ARCH__behav__P0__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__tb3__ARCH__behav__P1__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__tb3__ARCH__behav__P2__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__tb3__ARCH__behav__P3__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__tb3__ARCH__behav__INSTTYPE IS RECORD
- ENTITY: work__tb3__INSTTYPE;
- P0: work__tb3__ARCH__behav__P0__INSTTYPE;
- P1: work__tb3__ARCH__behav__P1__INSTTYPE;
- P2: work__tb3__ARCH__behav__P2__INSTTYPE;
- P3: work__tb3__ARCH__behav__P3__INSTTYPE;
-END RECORD;
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__INSTSIZE : __ghdl_index_type;
-
-CONSTANT work__tb3__ARCH__behav__INSTSIZE := __ghdl_index_type'sizeof (
- work__tb3__ARCH__behav__INSTTYPE);
-
-PUBLIC PROCEDURE work__tb3__ARCH__behav__DECL_ELAB (
- INSTANCE: work__tb3__INSTPTR);
-
-PUBLIC PROCEDURE work__tb3__ARCH__behav__STMT_ELAB (
- INSTANCE: work__tb3__INSTPTR);
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__P0__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P0__RTISTR : SUBARRAY __ghdl_chararray
- [3];
-
-CONSTANT work__tb3__ARCH__behav__P0__RTISTR := {80, 48, 0};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P0__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__tb3__ARCH__behav__P0__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__ARCH__behav__P0__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__tb3__ARCH__behav__P0__RTISTR),
- __ghdl_ptr'offsetof (work__tb3__ARCH__behav__INSTTYPE.P0), 6147,
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__RTI), 0,
- __ghdl_rti_arr_acc'address (work__tb3__ARCH__behav__P0__RTIARRAY)};
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__P1__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P1__RTISTR : SUBARRAY __ghdl_chararray
- [3];
-
-CONSTANT work__tb3__ARCH__behav__P1__RTISTR := {80, 49, 0};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P1__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__tb3__ARCH__behav__P1__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__ARCH__behav__P1__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__tb3__ARCH__behav__P1__RTISTR),
- __ghdl_ptr'offsetof (work__tb3__ARCH__behav__INSTTYPE.P1), 6403,
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__RTI), 0,
- __ghdl_rti_arr_acc'address (work__tb3__ARCH__behav__P1__RTIARRAY)};
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__P2__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P2__RTISTR : SUBARRAY __ghdl_chararray
- [3];
-
-CONSTANT work__tb3__ARCH__behav__P2__RTISTR := {80, 50, 0};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P2__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__tb3__ARCH__behav__P2__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__ARCH__behav__P2__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__tb3__ARCH__behav__P2__RTISTR),
- __ghdl_ptr'offsetof (work__tb3__ARCH__behav__INSTTYPE.P2), 6659,
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__RTI), 0,
- __ghdl_rti_arr_acc'address (work__tb3__ARCH__behav__P2__RTIARRAY)};
-
-PUBLIC CONSTANT work__tb3__ARCH__behav__P3__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P3__RTISTR : SUBARRAY __ghdl_chararray
- [3];
-
-CONSTANT work__tb3__ARCH__behav__P3__RTISTR := {80, 51, 0};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__P3__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__tb3__ARCH__behav__P3__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__ARCH__behav__P3__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__tb3__ARCH__behav__P3__RTISTR),
- __ghdl_ptr'offsetof (work__tb3__ARCH__behav__INSTTYPE.P3), 6915,
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__RTI), 0,
- __ghdl_rti_arr_acc'address (work__tb3__ARCH__behav__P3__RTIARRAY)};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__RTISTR : SUBARRAY __ghdl_chararray[6];
-
-CONSTANT work__tb3__ARCH__behav__RTISTR := {98, 101, 104, 97, 118, 0};
-
-PRIVATE CONSTANT work__tb3__ARCH__behav__RTIARRAY : SUBARRAY __ghdl_rti_array[5
- ];
-
-CONSTANT work__tb3__ARCH__behav__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__P0__RTI),
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__P1__RTI),
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__P2__RTI),
- __ghdl_rti_access'unchecked_address (work__tb3__ARCH__behav__P3__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__tb3__ARCH__behav__RTI := {{
- {__ghdl_rtik'[__ghdl_rtik_architecture], 1, 0, 0},
- __ghdl_char_ptr'address (work__tb3__ARCH__behav__RTISTR),
- __ghdl_ptr'offsetof (work__tb3__ARCH__behav__INSTTYPE.ENTITY), 5646,
- __ghdl_rti_access'unchecked_address (work__tb3__RTI), 4,
- __ghdl_rti_arr_acc'address (work__tb3__ARCH__behav__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-
-PRIVATE PROCEDURE work__tb3__ARCH__behav__P0__PROC (
- INSTANCE: work__tb3__ARCH__behav__INSTPTR)
-DECLARE
-BEGIN
- --# 24
-END;
-
-
-PRIVATE PROCEDURE work__tb3__ARCH__behav__P1__PROC (
- INSTANCE: work__tb3__ARCH__behav__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000001 : __ghdl_location;
- CONSTANT _UI00000001 := {__ghdl_char_ptr'address (_UI00000000), 25, 3};
- TYPE work__tb3__ARCH__behav__P1__U0 IS SUBARRAY std__standard__string__BASE[
- 16];
- PRIVATE CONSTANT work__tb3__ARCH__behav__P1__U0__STB :
- std__standard__string__BOUND;
- CONSTANT work__tb3__ARCH__behav__P1__U0__STB := {{1, 16,
- __ghdl_dir_type'[dir_to], 16}};
- PRIVATE CONSTANT _UI00000002 : work__tb3__ARCH__behav__P1__U0;
- CONSTANT _UI00000002 := {std__standard__character'[C_v],
- std__standard__character'[C_a], std__standard__character'[C_l],
- std__standard__character'[C_u], std__standard__character'[C_e],
- std__standard__character'[C20], std__standard__character'[C_i],
- std__standard__character'[C_s], std__standard__character'[C20],
- std__standard__character'[C_c], std__standard__character'[C_o],
- std__standard__character'[C_r], std__standard__character'[C_r],
- std__standard__character'[C_e], std__standard__character'[C_c],
- std__standard__character'[C_t]};
- PRIVATE CONSTANT _UI00000003 : std__standard__string;
- CONSTANT _UI00000003 := {std__standard__string__BASEP'address (_UI00000002),
- std__standard__string__BOUNDP'address (work__tb3__ARCH__behav__P1__U0__STB
- )};
-BEGIN
- --# 25
- __ghdl_assert_failed (std__standard__string__PTR'address (_UI00000003),
- std__standard__severity_level'[note], __ghdl_location_ptr'address (
- _UI00000001));
-END;
-
-
-PRIVATE PROCEDURE work__tb3__ARCH__behav__P2__PROC (
- INSTANCE: work__tb3__ARCH__behav__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000004 : __ghdl_location;
- CONSTANT _UI00000004 := {__ghdl_char_ptr'address (_UI00000000), 26, 3};
-BEGIN
- --# 26
- IF NOT std__standard__boolean'(work__pkg2__pkg1__f () = 3) THEN
- __ghdl_assert_failed (std__standard__string__PTR'[NULL],
- std__standard__severity_level'[failure], __ghdl_location_ptr'address (
- _UI00000004));
- END IF;
-END;
-
-
-PRIVATE PROCEDURE work__tb3__ARCH__behav__P3__PROC (
- INSTANCE: work__tb3__ARCH__behav__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000005 : __ghdl_location;
- CONSTANT _UI00000005 := {__ghdl_char_ptr'address (_UI00000000), 27, 3};
- TYPE work__tb3__ARCH__behav__P3__U0 IS SUBARRAY std__standard__string__BASE[
- 16];
- PRIVATE CONSTANT work__tb3__ARCH__behav__P3__U0__STB :
- std__standard__string__BOUND;
- CONSTANT work__tb3__ARCH__behav__P3__U0__STB := {{1, 16,
- __ghdl_dir_type'[dir_to], 16}};
- PRIVATE CONSTANT _UI00000006 : work__tb3__ARCH__behav__P3__U0;
- CONSTANT _UI00000006 := {std__standard__character'[C_v],
- std__standard__character'[C_a], std__standard__character'[C_l],
- std__standard__character'[C_u], std__standard__character'[C_e],
- std__standard__character'[C20], std__standard__character'[C_i],
- std__standard__character'[C_s], std__standard__character'[C20],
- std__standard__character'[C_c], std__standard__character'[C_o],
- std__standard__character'[C_r], std__standard__character'[C_r],
- std__standard__character'[C_e], std__standard__character'[C_c],
- std__standard__character'[C_t]};
- PRIVATE CONSTANT _UI00000007 : std__standard__string;
- CONSTANT _UI00000007 := {std__standard__string__BASEP'address (_UI00000006),
- std__standard__string__BOUNDP'address (work__tb3__ARCH__behav__P3__U0__STB
- )};
-BEGIN
- --# 27
- IF NOT std__standard__boolean'(work__pkg2__pkg1__f () /= 3) THEN
- __ghdl_assert_failed (std__standard__string__PTR'address (_UI00000007),
- std__standard__severity_level'[note], __ghdl_location_ptr'address (
- _UI00000005));
- END IF;
-END;
-
-PUBLIC PROCEDURE work__tb3__ARCH__behav__DECL_ELAB (
- INSTANCE: work__tb3__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__tb3__ARCH__behav__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__tb3__ARCH__behav__INSTPTR'conv (INSTANCE);
- INSTANCE.ALL.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__tb3__ARCH__behav__RTI);
- work__tb3__DECL_ELAB (INSTANCE);
- --# 22
- IF NOT work__pkg2__ELABORATED THEN
- work__pkg2__ELAB_BODY ();
- END IF;
- --# 22
-END;
-
-PUBLIC PROCEDURE work__tb3__ARCH__behav__STMT_ELAB (
- INSTANCE: work__tb3__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__tb3__ARCH__behav__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__tb3__ARCH__behav__INSTPTR'conv (INSTANCE);
- work__tb3__STMT_ELAB (INSTANCE);
- --# 22
- --# 24
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__tb3__ARCH__behav__P0__PROC), __ghdl_rti_access'unchecked_address (
- work__tb3__ARCH__behav__P0__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P0));
- --# 25
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__tb3__ARCH__behav__P1__PROC), __ghdl_rti_access'unchecked_address (
- work__tb3__ARCH__behav__P1__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P1));
- --# 26
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__tb3__ARCH__behav__P2__PROC), __ghdl_rti_access'unchecked_address (
- work__tb3__ARCH__behav__P2__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P2));
- --# 27
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__tb3__ARCH__behav__P3__PROC), __ghdl_rti_access'unchecked_address (
- work__tb3__ARCH__behav__P3__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P3));
-END;
-
diff --git a/testsuite/gna/issue317/repro4.on b/testsuite/gna/issue317/repro4.on
deleted file mode 100644
index e69de29bb..000000000
--- a/testsuite/gna/issue317/repro4.on
+++ /dev/null
diff --git a/testsuite/gna/issue626/repro.on b/testsuite/gna/issue626/repro.on
deleted file mode 100644
index 49c9da637..000000000
--- a/testsuite/gna/issue626/repro.on
+++ /dev/null
@@ -1,2222 +0,0 @@
--- internal declarations, part 1
-
-TYPE __ghdl_size_type IS UNSIGNED (32);
-
-TYPE __ghdl_index_type IS UNSIGNED (32);
-
-TYPE __ghdl_i32 IS SIGNED (32);
-
-TYPE __ghdl_real IS FLOAT;
-
-TYPE __ghdl_i64 IS SIGNED (64);
-
-TYPE __ghdl_file_index IS UNSIGNED (32);
-
-TYPE __ghdl_file_index_ptr IS ACCESS __ghdl_file_index;
-
-TYPE __ghdl_char IS UNSIGNED (8);
-
-TYPE __ghdl_chararray IS ARRAY [__ghdl_index_type] OF __ghdl_char;
-
-TYPE __ghdl_char_ptr IS ACCESS __ghdl_chararray;
-
-TYPE __ghdl_char_ptr_array IS ARRAY [__ghdl_index_type] OF __ghdl_char_ptr;
-
-TYPE __ghdl_char_ptr_array_ptr IS ACCESS __ghdl_char_ptr_array;
-
-TYPE __ghdl_ptr IS ACCESS __ghdl_char;
-
-TYPE __ghdl_str_len IS RECORD
- len: __ghdl_index_type;
- str: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_str_len_array IS ARRAY [__ghdl_index_type] OF __ghdl_str_len;
-
-TYPE __ghdl_str_len_ptr IS ACCESS __ghdl_str_len;
-
-TYPE __ghdl_bool_type IS BOOLEAN {false, true};
-
-TYPE __ghdl_bool_array_type IS ARRAY [__ghdl_index_type] OF __ghdl_bool_type;
-
-TYPE __ghdl_bool_array_ptr IS ACCESS __ghdl_bool_array_type;
-
-TYPE __ghdl_sizes_type IS RECORD
- size_val: __ghdl_index_type;
- size_sig: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_compare_type IS ENUM {lt, eq, gt};
-
-TYPE __ghdl_location IS RECORD
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- col: __ghdl_i32;
-END RECORD;
-
-TYPE __ghdl_location_ptr IS ACCESS __ghdl_location;
-
-TYPE __ghdl_dir_type IS ENUM {dir_to, dir_downto};
-
-TYPE __ghdl_signal IS RECORD;
-
-TYPE __ghdl_signal_ptr IS ACCESS __ghdl_signal;
-
-EXTERNAL FUNCTION __ghdl_alloc (
- size: __ghdl_size_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_program_error (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- code: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bound_check_failed (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_direction_check_failed (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_stack2_allocate (
- size: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_stack2_mark (
- )
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_stack2_release (
- mark: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_memcpy (
- dest: __ghdl_ptr;
- src: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_deallocate (
- OBJ: __ghdl_ptr);
-
-EXTERNAL FUNCTION __ghdl_malloc (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_malloc0 (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_text_file_elaborate (
- )
- RETURN __ghdl_file_index;
-
-EXTERNAL FUNCTION __ghdl_file_elaborate (
- NAME: __ghdl_char_ptr)
- RETURN __ghdl_file_index;
-
-EXTERNAL PROCEDURE __ghdl_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_text_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_protected_enter (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_leave (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_init (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_fini (
- OBJ: __ghdl_ptr);
-
-TYPE __ghdl_rtik IS ENUM {__ghdl_rtik_top, __ghdl_rtik_library,
- __ghdl_rtik_package, __ghdl_rtik_package_body, __ghdl_rtik_entity,
- __ghdl_rtik_architecture, __ghdl_rtik_process, __ghdl_rtik_block,
- __ghdl_rtik_if_generate, __ghdl_rtik_case_generate,
- __ghdl_rtik_for_generate, __ghdl_rtik_generate_body, __ghdl_rtik_instance,
- __ghdl_rtik_constant, __ghdl_rtik_iterator, __ghdl_rtik_variable,
- __ghdl_rtik_signal, __ghdl_rtik_file, __ghdl_rtik_port,
- __ghdl_rtik_generic, __ghdl_rtik_alias, __ghdl_rtik_guard,
- __ghdl_rtik_component, __ghdl_rtik_attribute, __ghdl_rtik_type_b1,
- __ghdl_rtik_type_e8, __ghdl_rtik_type_e32, __ghdl_rtik_type_i32,
- __ghdl_rtik_type_i64, __ghdl_rtik_type_f64, __ghdl_rtik_type_p32,
- __ghdl_rtik_type_p64, __ghdl_rtik_type_access, __ghdl_rtik_type_array,
- __ghdl_rtik_type_record, __ghdl_rtik_type_unbounded_record,
- __ghdl_rtik_type_file, __ghdl_rtik_subtype_scalar,
- __ghdl_rtik_subtype_array, __ghdl_rtik_subtype_unconstrained_array,
- __ghdl_rtik_subtype_record, __ghdl_rtik_subtype_unbounded_record,
- __ghdl_rtik_subtype_access, __ghdl_rtik_type_protected,
- __ghdl_rtik_element, __ghdl_rtik_unit64, __ghdl_rtik_unitptr,
- __ghdl_rtik_attribute_transaction, __ghdl_rtik_attribute_quiet,
- __ghdl_rtik_attribute_stable, __ghdl_rtik_psl_assert,
- __ghdl_rtik_psl_cover, __ghdl_rtik_psl_endpoint, __ghdl_rtik_error};
-
-TYPE __ghdl_rti_depth IS UNSIGNED (8);
-
-TYPE __ghdl_rti_u8 IS UNSIGNED (8);
-
-TYPE __ghdl_rti_common IS RECORD
- kind: __ghdl_rtik;
- depth: __ghdl_rti_depth;
- mode: __ghdl_rti_u8;
- max_depth: __ghdl_rti_depth;
-END RECORD;
-
-TYPE __ghdl_rti_access IS ACCESS __ghdl_rti_common;
-
-TYPE __ghdl_rti_array IS ARRAY [__ghdl_index_type] OF __ghdl_rti_access;
-
-TYPE __ghdl_rti_arr_acc IS ACCESS __ghdl_rti_array;
-
-TYPE __ghdl_component_link_type IS RECORD;
-
-TYPE __ghdl_component_link_acc IS ACCESS __ghdl_component_link_type;
-
-TYPE __ghdl_entity_link_type IS RECORD
- rti: __ghdl_rti_access;
- parent: __ghdl_component_link_acc;
-END RECORD;
-
-TYPE __ghdl_entity_link_acc IS ACCESS __ghdl_entity_link_type;
-
-TYPE __ghdl_component_link_type IS RECORD
- INSTANCE: __ghdl_entity_link_acc;
- stmt: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_generate IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- size: __ghdl_index_type;
- child: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block_file IS RECORD
- block: __ghdl_rtin_block;
- filename: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_enum IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- lits: __ghdl_char_ptr_array_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
- range: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_unit64 IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- val: __ghdl_i64;
-END RECORD;
-
-TYPE __ghdl_rtin_unitptr IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- addr: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_physical IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- units: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_type_fileacc IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_type_array IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- element: __ghdl_rti_access;
- nbr_dim: __ghdl_index_type;
- indexes: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_composite IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- basetype: __ghdl_rti_access;
- bounds: __ghdl_ptr;
- val_size: __ghdl_ptr;
- sig_size: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_record IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbrel: __ghdl_index_type;
- elements: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_element IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- eltype: __ghdl_rti_access;
- val_off: __ghdl_index_type;
- sig_off: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_object IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- obj_type: __ghdl_rti_access;
- linecol: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_instance IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- linecol: __ghdl_index_type;
- loc: __ghdl_ptr;
- parent: __ghdl_rti_access;
- instance: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_component IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-EXTERNAL PROCEDURE __ghdl_signal_name_rti (
- OBJ: __ghdl_rti_access;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_finalize_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr);
-
--- package std.standard
-
-TYPE std__standard__boolean IS BOOLEAN {false, true};
-
-TYPE std__standard__boolean__PTR IS ACCESS std__standard__boolean;
-
-TYPE std__standard__boolean__TRT IS RECORD
- left: std__standard__boolean;
- right: std__standard__boolean;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__boolean__TRPTR IS ACCESS std__standard__boolean__TRT;
-
-TYPE std__standard__BOOLEAN_ARRAY IS ARRAY [__ghdl_index_type] OF
- std__standard__boolean;
-
-TYPE std__standard__bit IS BOOLEAN {C_0, C_1};
-
-TYPE std__standard__bit__PTR IS ACCESS std__standard__bit;
-
-TYPE std__standard__bit__TRT IS RECORD
- left: std__standard__bit;
- right: std__standard__bit;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__bit__TRPTR IS ACCESS std__standard__bit__TRT;
-
-TYPE std__standard__character IS ENUM {nul, soh, stx, etx, eot, enq, ack, bel,
- bs, ht, lf, vt, ff, cr, so, si, dle, dc1, dc2, dc3, dc4, nak, syn, etb,
- can, em, sub, esc, fsp, gsp, rsp, usp, C20, C21, C22, C23, C24, C25, C26,
- C27, C28, C29, C2a, C2b, C2c, C2d, C2e, C2f, C_0, C_1, C_2, C_3, C_4, C_5,
- C_6, C_7, C_8, C_9, C3a, C3b, C3c, C3d, C3e, C3f, C40, C_A, C_B, C_C, C_D,
- C_E, C_F, C_G, C_H, C_I, C_J, C_K, C_L, C_M, C_N, C_O, C_P, C_Q, C_R, C_S,
- C_T, C_U, C_V, C_W, C_X, C_Y, C_Z, C5b, C5c, C5d, C5e, C5f, C60, C_a, C_b,
- C_c, C_d, C_e, C_f, C_g, C_h, C_i, C_j, C_k, C_l, C_m, C_n, C_o, C_p, C_q,
- C_r, C_s, C_t, C_u, C_v, C_w, C_x, C_y, C_z, C7b, C7c, C7d, C7e, del, c128,
- c129, c130, c131, c132, c133, c134, c135, c136, c137, c138, c139, c140,
- c141, c142, c143, c144, c145, c146, c147, c148, c149, c150, c151, c152,
- c153, c154, c155, c156, c157, c158, c159, Ca0, Ca1, Ca2, Ca3, Ca4, Ca5,
- Ca6, Ca7, Ca8, Ca9, Caa, Cab, Cac, Cad, Cae, Caf, Cb0, Cb1, Cb2, Cb3, Cb4,
- Cb5, Cb6, Cb7, Cb8, Cb9, Cba, Cbb, Cbc, Cbd, Cbe, Cbf, Cc0, Cc1, Cc2, Cc3,
- Cc4, Cc5, Cc6, Cc7, Cc8, Cc9, Cca, Ccb, Ccc, Ccd, Cce, Ccf, Cd0, Cd1, Cd2,
- Cd3, Cd4, Cd5, Cd6, Cd7, Cd8, Cd9, Cda, Cdb, Cdc, Cdd, Cde, Cdf, Ce0, Ce1,
- Ce2, Ce3, Ce4, Ce5, Ce6, Ce7, Ce8, Ce9, Cea, Ceb, Cec, Ced, Cee, Cef, Cf0,
- Cf1, Cf2, Cf3, Cf4, Cf5, Cf6, Cf7, Cf8, Cf9, Cfa, Cfb, Cfc, Cfd, Cfe, Cff};
-
-TYPE std__standard__character__PTR IS ACCESS std__standard__character;
-
-TYPE std__standard__character__TRT IS RECORD
- left: std__standard__character;
- right: std__standard__character;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__character__TRPTR IS ACCESS std__standard__character__TRT;
-
-EXTERNAL CONSTANT std__standard__character__BTR : std__standard__character__TRT
- ;
-
-TYPE std__standard__severity_level IS ENUM {note, warning, error, failure};
-
-TYPE std__standard__severity_level__PTR IS ACCESS std__standard__severity_level
- ;
-
-TYPE std__standard__severity_level__TRT IS RECORD
- left: std__standard__severity_level;
- right: std__standard__severity_level;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__severity_level__TRPTR IS ACCESS
- std__standard__severity_level__TRT;
-
-EXTERNAL CONSTANT std__standard__severity_level__BTR :
- std__standard__severity_level__TRT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_INTEGER__BT;
- right: std__standard__UNIVERSAL_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__STR :
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT IS FLOAT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_REAL__BT;
- right: std__standard__UNIVERSAL_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__STR :
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-TYPE std__standard__integer__BT IS SIGNED (32);
-
-TYPE std__standard__integer__BT__PTR IS ACCESS std__standard__integer__BT;
-
-TYPE std__standard__integer__BT__TRT IS RECORD
- left: std__standard__integer__BT;
- right: std__standard__integer__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__integer__BT__TRPTR IS ACCESS
- std__standard__integer__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__integer__STR : std__standard__integer__BT__TRT
- ;
-
-TYPE std__standard__real__BT IS FLOAT;
-
-TYPE std__standard__real__BT__PTR IS ACCESS std__standard__real__BT;
-
-TYPE std__standard__real__BT__TRT IS RECORD
- left: std__standard__real__BT;
- right: std__standard__real__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__real__BT__TRPTR IS ACCESS std__standard__real__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__real__STR : std__standard__real__BT__TRT;
-
-TYPE std__standard__time__BT IS SIGNED (64);
-
-TYPE std__standard__time__BT__PTR IS ACCESS std__standard__time__BT;
-
-TYPE std__standard__time__BT__TRT IS RECORD
- left: std__standard__time__BT;
- right: std__standard__time__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__time__BT__TRPTR IS ACCESS std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__time__STR : std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__delay_length__STR :
- std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__natural__STR : std__standard__integer__BT__TRT
- ;
-
-EXTERNAL CONSTANT std__standard__positive__STR :
- std__standard__integer__BT__TRT;
-
-TYPE std__standard__string__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__character;
-
-TYPE std__standard__string__BASEP IS ACCESS std__standard__string__BASE;
-
-TYPE std__standard__string__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__string__SIGBASEP IS ACCESS std__standard__string__SIGBASE;
-
-TYPE std__standard__string__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__string__BOUNDP IS ACCESS std__standard__string__BOUND;
-
-TYPE std__standard__string IS RECORD
- BASE: std__standard__string__BASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__PTR IS ACCESS std__standard__string;
-
-TYPE std__standard__string__SIG IS RECORD
- BASE: std__standard__string__SIGBASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__SIGPTR IS ACCESS std__standard__string__SIG;
-
-EXTERNAL FUNCTION std__standard__string_EQ (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__string_CMP (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN __ghdl_compare_type;
-
-TYPE std__standard__bit_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__bit;
-
-TYPE std__standard__bit_vector__BASEP IS ACCESS std__standard__bit_vector__BASE
- ;
-
-TYPE std__standard__bit_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__bit_vector__SIGBASEP IS ACCESS
- std__standard__bit_vector__SIGBASE;
-
-TYPE std__standard__bit_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__bit_vector__BOUNDP IS ACCESS
- std__standard__bit_vector__BOUND;
-
-TYPE std__standard__bit_vector IS RECORD
- BASE: std__standard__bit_vector__BASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__PTR IS ACCESS std__standard__bit_vector;
-
-TYPE std__standard__bit_vector__SIG IS RECORD
- BASE: std__standard__bit_vector__SIGBASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__SIGPTR IS ACCESS std__standard__bit_vector__SIG
- ;
-
-EXTERNAL FUNCTION std__standard__bit_vector_EQ (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__bit_vector_CMP (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_AND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_OR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NAND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XNOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHL (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHA (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_ROT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-TYPE std__standard__file_open_kind IS ENUM {read_mode, write_mode,
- append_mode};
-
-TYPE std__standard__file_open_kind__PTR IS ACCESS std__standard__file_open_kind
- ;
-
-TYPE std__standard__file_open_kind__TRT IS RECORD
- left: std__standard__file_open_kind;
- right: std__standard__file_open_kind;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_kind__TRPTR IS ACCESS
- std__standard__file_open_kind__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__BTR :
- std__standard__file_open_kind__TRT;
-
-TYPE std__standard__file_open_status IS ENUM {open_ok, status_error,
- name_error, mode_error};
-
-TYPE std__standard__file_open_status__PTR IS ACCESS
- std__standard__file_open_status;
-
-TYPE std__standard__file_open_status__TRT IS RECORD
- left: std__standard__file_open_status;
- right: std__standard__file_open_status;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_status__TRPTR IS ACCESS
- std__standard__file_open_status__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_status__BTR :
- std__standard__file_open_status__TRT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_INTEGER__BT;
- right: std__standard__CONVERTIBLE_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT__TRT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT IS FLOAT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_REAL__BT;
- right: std__standard__CONVERTIBLE_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__RTI : __ghdl_rtin_block;
-
-EXTERNAL CONSTANT std__standard__boolean__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__bit__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__character__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__severity_level__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__real__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__real__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__time__BT__RTI : __ghdl_rtin_type_physical;
-
-EXTERNAL CONSTANT std__standard__time__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__delay_length__RTI : __ghdl_rtin_subtype_scalar
- ;
-
-EXTERNAL CONSTANT std__standard__natural__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__positive__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__string__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__bit_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__file_open_status__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__foreign__RTI : __ghdl_rtin_object;
-
-TYPE __ghdl_std_ulogic_boolean_array_type IS SUBARRAY
- std__standard__BOOLEAN_ARRAY[9];
-
-EXTERNAL CONSTANT __ghdl_std_ulogic_to_boolean_array :
- __ghdl_std_ulogic_boolean_array_type;
-
--- internal declarations, part 2
-
-EXTERNAL VAR __ghdl_now : std__standard__time__BT;
-
-EXTERNAL PROCEDURE __ghdl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_ieee_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_report (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_text_write (
- file: __ghdl_file_index;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_read_length (
- file: __ghdl_file_index;
- str: std__standard__string__PTR)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_write_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_read_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_real_exp (
- left: std__standard__real__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__real__BT;
-
-EXTERNAL FUNCTION __ghdl_integer_exp (
- left: std__standard__integer__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_image_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_b1 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_image_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e8 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_value_i32 (
- val: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_i64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64);
-
-EXTERNAL FUNCTION __ghdl_value_i64 (
- val: std__standard__string__PTR)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_image_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p64 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_image_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_value_f64 (
- val: std__standard__string__PTR)
- RETURN __ghdl_real;
-
-EXTERNAL PROCEDURE __ghdl_text_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_endfile (
- file: __ghdl_file_index)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_text_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_flush (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_signal_create_resolution (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- sig: __ghdl_ptr;
- nbr_sig: __ghdl_index_type);
-
-TYPE __ghdl_scalar_bytes IS SUBARRAY __ghdl_chararray[8];
-
-TYPE __ghdl_signal IS RECORD
- driving_value: __ghdl_scalar_bytes;
- last_value: __ghdl_scalar_bytes;
- last_event: std__standard__time__BT;
- last_active: std__standard__time__BT;
- value: __ghdl_ptr;
- event: std__standard__boolean;
- active: std__standard__boolean;
- has_active: __ghdl_bool_type;
-END RECORD;
-
-TYPE __ghdl_signal_ptr_ptr IS ACCESS __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_merge_rti (
- sig: __ghdl_signal_ptr;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_source (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_effective_value (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_set_disconnect (
- sig: __ghdl_signal_ptr;
- time: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_disconnect (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_drivers (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_ports (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_read_driver (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_read_port (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_driving (
- sig: __ghdl_signal_ptr)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_error (
- sig: __ghdl_signal_ptr;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_error (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_error (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_null (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_null (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT);
-
-EXTERNAL FUNCTION __ghdl_create_signal_e8 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e8 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e8 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_e32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_b1 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_b1 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_b1 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_bool_type;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_f64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_f64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_f64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_real;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_process_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_add_driver (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_direct_driver (
- sig: __ghdl_signal_ptr;
- drv: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_direct_assign (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_in_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_out_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_create_stable_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_quiet_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_transaction_signal (
- val_ptr: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_attribute_register_prefix (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_create_delayed_signal (
- sig: __ghdl_signal_ptr;
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_create_guard (
- val_ptr: __ghdl_ptr;
- this: __ghdl_ptr;
- proc: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_guard_dependence (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_exit (
- );
-
-EXTERNAL PROCEDURE __ghdl_process_wait_timeout (
- time: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_set_timeout (
- time: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_suspend (
- );
-
-EXTERNAL FUNCTION __ghdl_process_wait_timed_out (
- )
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_process_wait_close (
- );
-
-EXTERNAL PROCEDURE __ghdl_get_path_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_get_instance_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_package (
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_top (
- max_pkgs: __ghdl_index_type;
- pkgs: __ghdl_rti_arr_acc;
- RTI: __ghdl_rti_access;
- INSTANCE: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_init_top_generics (
- );
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_eq (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_ne (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_lt (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_le (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_eq (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_ne (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_to_string_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_i64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_digits (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- nbr_digits: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_format (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- format: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_ostring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_hstring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_char (
- res: std__standard__string__PTR;
- val: std__standard__character);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_time_to_string_unit (
- res: std__standard__string__PTR;
- val: std__standard__time__BT;
- unit: std__standard__time__BT;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-PRIVATE CONSTANT _UI00000000 : SUBARRAY __ghdl_chararray[11];
-
-CONSTANT _UI00000000 := {114, 101, 112, 114, 111, 46, 118, 104, 100, 108, 0};
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/repro.vhdl
-
--- entity inc
-
-TYPE work__inc__INSTTYPE IS RECORD;
-
-TYPE work__inc__INSTPTR IS ACCESS work__inc__INSTTYPE;
-
-TYPE work__inc__INSTTYPE IS RECORD
- RTI: __ghdl_entity_link_type;
- v: std__standard__integer__BT;
- vec: std__standard__bit_vector;
-END RECORD;
-
-PUBLIC PROCEDURE work__inc__DECL_ELAB (
- INSTANCE: work__inc__INSTPTR);
-
-PUBLIC PROCEDURE work__inc__STMT_ELAB (
- INSTANCE: work__inc__INSTPTR);
-
-PUBLIC PROCEDURE work__inc__PKG_ELAB (
- );
-
-EXTERNAL CONSTANT work__RTI : __ghdl_rtin_type_scalar;
-
-PUBLIC CONSTANT work__inc__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__inc__v__RTI : __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__inc__v__RTISTR : SUBARRAY __ghdl_chararray[2];
-
-CONSTANT work__inc__v__RTISTR := {118, 0};
-
-CONSTANT work__inc__v__RTI := {{__ghdl_rtik'[__ghdl_rtik_generic], 1, 0, 0},
- __ghdl_char_ptr'unchecked_address (work__inc__v__RTISTR),
- __ghdl_ptr'offsetof (work__inc__INSTTYPE.v),
- __ghdl_rti_access'unchecked_address (std__standard__natural__RTI), 529};
-
-PUBLIC CONSTANT work__inc__vec__RTI : __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__inc__vec__RTISTR : SUBARRAY __ghdl_chararray[4];
-
-CONSTANT work__inc__vec__RTISTR := {118, 101, 99, 0};
-
-CONSTANT work__inc__vec__RTI := {{__ghdl_rtik'[__ghdl_rtik_generic], 1, 0, 0},
- __ghdl_char_ptr'unchecked_address (work__inc__vec__RTISTR),
- __ghdl_ptr'offsetof (work__inc__INSTTYPE.vec),
- __ghdl_rti_access'unchecked_address (std__standard__bit_vector__RTI), 542};
-
-PRIVATE CONSTANT work__inc__RTISTR : SUBARRAY __ghdl_chararray[4];
-
-CONSTANT work__inc__RTISTR := {105, 110, 99, 0};
-
-PRIVATE CONSTANT work__inc__RTIARRAY : SUBARRAY __ghdl_rti_array[3];
-
-CONSTANT work__inc__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__inc__v__RTI),
- __ghdl_rti_access'unchecked_address (work__inc__vec__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc__RTI := {{{__ghdl_rtik'[__ghdl_rtik_entity], 1, 0, 0},
- __ghdl_char_ptr'address (work__inc__RTISTR), __ghdl_ptr'[NULL], 264,
- __ghdl_rti_access'unchecked_address (work__RTI), 2,
- __ghdl_rti_arr_acc'address (work__inc__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__inc__PKG_ELAB (
- )
-DECLARE
-BEGIN
- --# 1
-END;
-
-PUBLIC PROCEDURE work__inc__DECL_ELAB (
- INSTANCE: work__inc__INSTPTR)
-DECLARE
-BEGIN
- --# 1
- --# 1
-END;
-
-PUBLIC PROCEDURE work__inc__STMT_ELAB (
- INSTANCE: work__inc__INSTPTR)
-DECLARE
-BEGIN
- --# 1
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/repro.vhdl
-
--- architecture default
-
-TYPE work__inc__ARCH__default__INSTTYPE IS RECORD;
-
-TYPE work__inc__ARCH__default__INSTPTR IS ACCESS
- work__inc__ARCH__default__INSTTYPE;
-
-TYPE work__inc__ARCH__default__P0__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__inc__ARCH__default__P1__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__inc__ARCH__default__P2__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__inc__ARCH__default__INSTTYPE IS RECORD
- ENTITY: work__inc__INSTTYPE;
- P0: work__inc__ARCH__default__P0__INSTTYPE;
- P1: work__inc__ARCH__default__P1__INSTTYPE;
- P2: work__inc__ARCH__default__P2__INSTTYPE;
-END RECORD;
-
-PUBLIC CONSTANT work__inc__ARCH__default__INSTSIZE : __ghdl_index_type;
-
-CONSTANT work__inc__ARCH__default__INSTSIZE := __ghdl_index_type'sizeof (
- work__inc__ARCH__default__INSTTYPE);
-
-PUBLIC PROCEDURE work__inc__ARCH__default__DECL_ELAB (
- INSTANCE: work__inc__INSTPTR);
-
-PUBLIC PROCEDURE work__inc__ARCH__default__STMT_ELAB (
- INSTANCE: work__inc__INSTPTR);
-
-PUBLIC CONSTANT work__inc__ARCH__default__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__inc__ARCH__default__P0__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__inc__ARCH__default__P0__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__inc__ARCH__default__P0__RTISTR := {80, 48, 0};
-
-PRIVATE CONSTANT work__inc__ARCH__default__P0__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__inc__ARCH__default__P0__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc__ARCH__default__P0__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__inc__ARCH__default__P0__RTISTR),
- __ghdl_ptr'offsetof (work__inc__ARCH__default__INSTTYPE.P0), 1795,
- __ghdl_rti_access'unchecked_address (work__inc__ARCH__default__RTI), 0,
- __ghdl_rti_arr_acc'address (work__inc__ARCH__default__P0__RTIARRAY)};
-
-PUBLIC CONSTANT work__inc__ARCH__default__P1__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__inc__ARCH__default__P1__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__inc__ARCH__default__P1__RTISTR := {80, 49, 0};
-
-PRIVATE CONSTANT work__inc__ARCH__default__P1__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__inc__ARCH__default__P1__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc__ARCH__default__P1__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__inc__ARCH__default__P1__RTISTR),
- __ghdl_ptr'offsetof (work__inc__ARCH__default__INSTTYPE.P1), 2051,
- __ghdl_rti_access'unchecked_address (work__inc__ARCH__default__RTI), 0,
- __ghdl_rti_arr_acc'address (work__inc__ARCH__default__P1__RTIARRAY)};
-
-PUBLIC CONSTANT work__inc__ARCH__default__P2__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__inc__ARCH__default__P2__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__inc__ARCH__default__P2__RTISTR := {80, 50, 0};
-
-PRIVATE CONSTANT work__inc__ARCH__default__P2__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__inc__ARCH__default__P2__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc__ARCH__default__P2__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__inc__ARCH__default__P2__RTISTR),
- __ghdl_ptr'offsetof (work__inc__ARCH__default__INSTTYPE.P2), 2307,
- __ghdl_rti_access'unchecked_address (work__inc__ARCH__default__RTI), 0,
- __ghdl_rti_arr_acc'address (work__inc__ARCH__default__P2__RTIARRAY)};
-
-PRIVATE CONSTANT work__inc__ARCH__default__RTISTR : SUBARRAY __ghdl_chararray[8
- ];
-
-CONSTANT work__inc__ARCH__default__RTISTR := {100, 101, 102, 97, 117, 108,
- 116, 0};
-
-PRIVATE CONSTANT work__inc__ARCH__default__RTIARRAY : SUBARRAY __ghdl_rti_array
- [4];
-
-CONSTANT work__inc__ARCH__default__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__inc__ARCH__default__P0__RTI),
- __ghdl_rti_access'unchecked_address (work__inc__ARCH__default__P1__RTI),
- __ghdl_rti_access'unchecked_address (work__inc__ARCH__default__P2__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc__ARCH__default__RTI := {{
- {__ghdl_rtik'[__ghdl_rtik_architecture], 1, 0, 0},
- __ghdl_char_ptr'address (work__inc__ARCH__default__RTISTR),
- __ghdl_ptr'offsetof (work__inc__ARCH__default__INSTTYPE.ENTITY), 1294,
- __ghdl_rti_access'unchecked_address (work__inc__RTI), 3,
- __ghdl_rti_arr_acc'address (work__inc__ARCH__default__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-
-PRIVATE PROCEDURE work__inc__ARCH__default__P0__PROC (
- INSTANCE: work__inc__ARCH__default__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000001 : __ghdl_location;
- CONSTANT _UI00000001 := {__ghdl_char_ptr'address (_UI00000000), 7, 3};
-BEGIN
- --# 7
- IF NOT std__standard__boolean'(INSTANCE.ALL.ENTITY.vec.BOUNDS.ALL.dim_1.left
- = 0) THEN
- __ghdl_assert_failed (std__standard__string__PTR'[NULL],
- std__standard__severity_level'[failure], __ghdl_location_ptr'address (
- _UI00000001));
- END IF;
-END;
-
-
-PRIVATE PROCEDURE work__inc__ARCH__default__P1__PROC (
- INSTANCE: work__inc__ARCH__default__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000002 : __ghdl_location;
- CONSTANT _UI00000002 := {__ghdl_char_ptr'address (_UI00000000), 8, 3};
-BEGIN
- --# 8
- IF NOT std__standard__boolean'(INSTANCE.ALL.ENTITY.vec.BOUNDS.ALL.dim_1.right
- = INSTANCE.ALL.ENTITY.v) THEN
- __ghdl_assert_failed (std__standard__string__PTR'[NULL],
- std__standard__severity_level'[failure], __ghdl_location_ptr'address (
- _UI00000002));
- END IF;
-END;
-
-
-PRIVATE PROCEDURE work__inc__ARCH__default__P2__PROC (
- INSTANCE: work__inc__ARCH__default__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000003 : __ghdl_location;
- CONSTANT _UI00000003 := {__ghdl_char_ptr'address (_UI00000000), 9, 3};
-BEGIN
- --# 9
- DECLARE
- LOCAL VAR T0_0 : std__standard__string;
- LOCAL VAR T0_1 : __ghdl_ptr;
- BEGIN
- T0_1 := __ghdl_stack2_mark ();
- __ghdl_image_i32 (std__standard__string__PTR'address (T0_0), __ghdl_i32
- 'conv (INSTANCE.ALL.ENTITY.vec.BOUNDS.ALL.dim_1.right));
- __ghdl_assert_failed (std__standard__string__PTR'address (T0_0),
- std__standard__severity_level'[error], __ghdl_location_ptr'address (
- _UI00000003));
- __ghdl_stack2_release (T0_1);
- END;
-END;
-
-PUBLIC PROCEDURE work__inc__ARCH__default__DECL_ELAB (
- INSTANCE: work__inc__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__inc__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__inc__ARCH__default__INSTPTR'conv (INSTANCE);
- INSTANCE.ALL.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__inc__ARCH__default__RTI);
- work__inc__DECL_ELAB (INSTANCE);
- --# 5
- --# 5
-END;
-
-PUBLIC PROCEDURE work__inc__ARCH__default__STMT_ELAB (
- INSTANCE: work__inc__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__inc__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__inc__ARCH__default__INSTPTR'conv (INSTANCE);
- work__inc__STMT_ELAB (INSTANCE);
- --# 5
- --# 7
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__inc__ARCH__default__P0__PROC), __ghdl_rti_access'unchecked_address (
- work__inc__ARCH__default__P0__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P0));
- --# 8
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__inc__ARCH__default__P1__PROC), __ghdl_rti_access'unchecked_address (
- work__inc__ARCH__default__P1__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P1));
- --# 9
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__inc__ARCH__default__P2__PROC), __ghdl_rti_access'unchecked_address (
- work__inc__ARCH__default__P2__RTI), __ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL.P2));
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/repro.vhdl
-
--- entity repro
-
-TYPE work__repro__INSTTYPE IS RECORD;
-
-TYPE work__repro__INSTPTR IS ACCESS work__repro__INSTTYPE;
-
-TYPE work__repro__INSTTYPE IS RECORD
- RTI: __ghdl_entity_link_type;
-END RECORD;
-
-PUBLIC PROCEDURE work__repro__DECL_ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-PUBLIC PROCEDURE work__repro__STMT_ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-PUBLIC PROCEDURE work__repro__PKG_ELAB (
- );
-
-PUBLIC CONSTANT work__repro__RTI : __ghdl_rtin_block_file;
-
-PRIVATE CONSTANT work__repro__RTISTR : SUBARRAY __ghdl_chararray[6];
-
-CONSTANT work__repro__RTISTR := {114, 101, 112, 114, 111, 0};
-
-PRIVATE CONSTANT work__repro__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__repro__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__repro__RTI := {{{__ghdl_rtik'[__ghdl_rtik_entity], 1, 0, 0},
- __ghdl_char_ptr'address (work__repro__RTISTR), __ghdl_ptr'[NULL], 3080,
- __ghdl_rti_access'unchecked_address (work__RTI), 0,
- __ghdl_rti_arr_acc'address (work__repro__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__repro__PKG_ELAB (
- )
-DECLARE
-BEGIN
- --# 12
-END;
-
-PUBLIC PROCEDURE work__repro__DECL_ELAB (
- INSTANCE: work__repro__INSTPTR)
-DECLARE
-BEGIN
- --# 12
- --# 12
-END;
-
-PUBLIC PROCEDURE work__repro__STMT_ELAB (
- INSTANCE: work__repro__INSTPTR)
-DECLARE
-BEGIN
- --# 12
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/repro.vhdl
-
--- architecture default
-
-TYPE work__repro__ARCH__default__INSTTYPE IS RECORD;
-
-TYPE work__repro__ARCH__default__INSTPTR IS ACCESS
- work__repro__ARCH__default__INSTTYPE;
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__ix__OT__STR :
- std__standard__integer__BT__TRT;
-
-CONSTANT work__repro__ARCH__default__g__ix__OT__STR := {0, 4,
- __ghdl_dir_type'[dir_to], 5};
-
-TYPE work__repro__ARCH__default__g__INSTTYPE IS RECORD;
-
-TYPE work__repro__ARCH__default__g__INSTPTR IS ACCESS
- work__repro__ARCH__default__g__INSTTYPE;
-
-TYPE work__repro__ARCH__default__g__INSTTYPE IS RECORD
- ORIGIN: work__repro__ARCH__default__INSTPTR;
- CONFIGURED: __ghdl_bool_type;
- ix: std__standard__integer__BT;
- inst: __ghdl_component_link_type;
-END RECORD;
-
-TYPE work__repro__ARCH__default__g__INSTARRTYPE IS ARRAY [__ghdl_index_type] OF
- work__repro__ARCH__default__g__INSTTYPE;
-
-TYPE work__repro__ARCH__default__g__INSTARRPTR IS ACCESS
- work__repro__ARCH__default__g__INSTARRTYPE;
-
-TYPE work__repro__ARCH__default__INSTTYPE IS RECORD
- ENTITY: work__repro__INSTTYPE;
- g: work__repro__ARCH__default__g__INSTARRPTR;
-END RECORD;
-
-PUBLIC CONSTANT work__repro__ARCH__default__INSTSIZE : __ghdl_index_type;
-
-CONSTANT work__repro__ARCH__default__INSTSIZE := __ghdl_index_type'sizeof (
- work__repro__ARCH__default__INSTTYPE);
-
-PUBLIC PROCEDURE work__repro__ARCH__default__DECL_ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-PUBLIC PROCEDURE work__repro__ARCH__default__STMT_ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-PUBLIC CONSTANT work__repro__ARCH__default__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__ITERATOR__RTI :
- __ghdl_rtin_subtype_scalar;
-
-CONSTANT work__repro__ARCH__default__g__ITERATOR__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_subtype_scalar], 0, 0, 0}, __ghdl_char_ptr'[NULL],
- __ghdl_rti_access'unchecked_address (std__standard__integer__BT__RTI),
- __ghdl_ptr'unchecked_address (work__repro__ARCH__default__g__ix__OT__STR)};
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__RTI : __ghdl_rtin_generate;
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__BOD__RTI : __ghdl_rtin_block;
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__BOD__ix__RTI :
- __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__repro__ARCH__default__g__BOD__ix__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__repro__ARCH__default__g__BOD__ix__RTISTR := {105, 120, 0};
-
-CONSTANT work__repro__ARCH__default__g__BOD__ix__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_iterator], 3, 0, 0},
- __ghdl_char_ptr'unchecked_address (
- work__repro__ARCH__default__g__BOD__ix__RTISTR),
- __ghdl_ptr'offsetof (work__repro__ARCH__default__g__INSTTYPE.ix),
- __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__g__ITERATOR__RTI), 4112};
-
-PRIVATE CONSTANT work__repro__ARCH__default__g__BOD__inst__RTISTR : SUBARRAY
- __ghdl_chararray[5];
-
-CONSTANT work__repro__ARCH__default__g__BOD__inst__RTISTR := {105, 110, 115,
- 116, 0};
-
-PUBLIC CONSTANT work__repro__ARCH__default__g__BOD__inst__RTI :
- __ghdl_rtin_instance;
-
-CONSTANT work__repro__ARCH__default__g__BOD__inst__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_instance], 3, 0, 0},
- __ghdl_char_ptr'address (work__repro__ARCH__default__g__BOD__inst__RTISTR),
- 4624, __ghdl_ptr'offsetof (work__repro__ARCH__default__g__INSTTYPE.inst),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__default__g__BOD__RTI
- ), __ghdl_rti_access'unchecked_address (work__inc__RTI)};
-
-PRIVATE CONSTANT work__repro__ARCH__default__g__BOD__RTISTR : SUBARRAY
- __ghdl_chararray[1];
-
-CONSTANT work__repro__ARCH__default__g__BOD__RTISTR := {0};
-
-PRIVATE CONSTANT work__repro__ARCH__default__g__BOD__RTIARRAY : SUBARRAY
- __ghdl_rti_array[3];
-
-CONSTANT work__repro__ARCH__default__g__BOD__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__g__BOD__ix__RTI),
- __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__g__BOD__inst__RTI), __ghdl_rti_access'[NULL]};
-
-CONSTANT work__repro__ARCH__default__g__BOD__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_generate_body], 3, 0, 0},
- __ghdl_char_ptr'address (work__repro__ARCH__default__g__BOD__RTISTR),
- __ghdl_ptr'[NULL], 4360,
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__default__g__RTI),
- 2,
- __ghdl_rti_arr_acc'address (work__repro__ARCH__default__g__BOD__RTIARRAY)};
-
-PRIVATE CONSTANT work__repro__ARCH__default__g__RTISTR : SUBARRAY
- __ghdl_chararray[2];
-
-CONSTANT work__repro__ARCH__default__g__RTISTR := {103, 0};
-
-CONSTANT work__repro__ARCH__default__g__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_for_generate], 2, 0, 0},
- __ghdl_char_ptr'address (work__repro__ARCH__default__g__RTISTR),
- __ghdl_ptr'offsetof (work__repro__ARCH__default__INSTTYPE.g), 4104,
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__default__RTI),
- __ghdl_index_type'sizeof (work__repro__ARCH__default__g__INSTTYPE),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__default__g__BOD__RTI
- )};
-
-PRIVATE CONSTANT work__repro__ARCH__default__RTISTR : SUBARRAY __ghdl_chararray
- [8];
-
-CONSTANT work__repro__ARCH__default__RTISTR := {100, 101, 102, 97, 117, 108,
- 116, 0};
-
-PRIVATE CONSTANT work__repro__ARCH__default__RTIARRAY : SUBARRAY
- __ghdl_rti_array[3];
-
-CONSTANT work__repro__ARCH__default__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__g__ITERATOR__RTI),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__default__g__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__repro__ARCH__default__RTI := {{
- {__ghdl_rtik'[__ghdl_rtik_architecture], 1, 0, 0},
- __ghdl_char_ptr'address (work__repro__ARCH__default__RTISTR),
- __ghdl_ptr'offsetof (work__repro__ARCH__default__INSTTYPE.ENTITY), 3598,
- __ghdl_rti_access'unchecked_address (work__repro__RTI), 2,
- __ghdl_rti_arr_acc'address (work__repro__ARCH__default__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-
-PRIVATE PROCEDURE work__repro__ARCH__default__g__inst__COMP_ELAB (
- INSTANCE: work__repro__ARCH__default__g__INSTPTR)
-DECLARE
- EXTERNAL CONSTANT work__inc__LASTARCH__INSTSIZE : __ghdl_index_type;
- EXTERNAL PROCEDURE work__inc__LASTARCH__DECL_ELAB (
- INSTANCE: work__inc__INSTPTR);
- EXTERNAL PROCEDURE work__inc__LASTARCH__STMT_ELAB (
- INSTANCE: work__inc__INSTPTR);
- EXTERNAL PROCEDURE work__inc__LASTARCH__DEFAULT_CONFIG (
- INSTANCE: work__inc__INSTPTR);
- LOCAL VAR SUB_INSTANCE : work__inc__INSTPTR;
- LOCAL VAR U0__SIZE : __ghdl_index_type;
- LOCAL VAR U0__STB : std__standard__bit_vector__BOUND;
-BEGIN
- --# 18
- INSTANCE.ALL.inst.stmt := __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__g__BOD__inst__RTI);
- SUB_INSTANCE := work__inc__INSTPTR'conv (__ghdl_malloc0 (
- work__inc__LASTARCH__INSTSIZE));
- INSTANCE.ALL.inst.INSTANCE := __ghdl_entity_link_acc'address (SUB_INSTANCE.
- ALL.RTI);
- SUB_INSTANCE.ALL.RTI.parent := __ghdl_component_link_acc'address (INSTANCE.
- ALL.inst);
- work__inc__PKG_ELAB ();
- DECLARE
- LOCAL VAR T0_0 : std__standard__integer__BT;
- BEGIN
- T0_0 := std__standard__integer__BT'conv (INSTANCE.ALL.ix);
- IF __ghdl_bool_type'(T0_0 < 0) THEN
- __ghdl_bound_check_failed (__ghdl_char_ptr'address (_UI00000000), 19);
- END IF;
- SUB_INSTANCE.ALL.v := T0_0;
- END;
- DECLARE
- LOCAL VAR T2_0 : std__standard__integer__BT__TRPTR;
- BEGIN
- T2_0 := std__standard__integer__BT__TRPTR'address (U0__STB.dim_1);
- T2_0.ALL.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[0]);
- T2_0.ALL.right := std__standard__integer__BT'conv (INSTANCE.ALL.ix);
- T2_0.ALL.dir := __ghdl_dir_type'[dir_to];
- DECLARE
- LOCAL VAR T4_0 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T5_0 : __ghdl_i32;
- BEGIN
- T5_0 := (__ghdl_i32'conv (T2_0.ALL.right) -# __ghdl_i32'conv (T2_0.ALL.
- left));
- IF __ghdl_bool_type'(T5_0 < 0) THEN
- T4_0 := 0;
- ELSE
- T4_0 := (__ghdl_index_type'conv (T5_0) +# 1);
- END IF;
- END;
- T2_0.ALL.length := T4_0;
- END;
- END;
- U0__SIZE := (U0__STB.dim_1.length *# __ghdl_index_type'sizeof (
- std__standard__bit));
- DECLARE
- LOCAL VAR T0_0 : std__standard__bit_vector__PTR;
- BEGIN
- T0_0 := std__standard__bit_vector__PTR'address (SUB_INSTANCE.ALL.vec);
- T0_0.ALL.BOUNDS := std__standard__bit_vector__BOUNDP'address (U0__STB);
- T0_0.ALL.BOUNDS := std__standard__bit_vector__BOUNDP'conv (__ghdl_malloc0 (
- __ghdl_index_type'sizeof (std__standard__bit_vector__BOUND)));
- __ghdl_memcpy (__ghdl_ptr'conv (T0_0.ALL.BOUNDS), __ghdl_ptr'conv (
- std__standard__bit_vector__BOUNDP'address (U0__STB)), __ghdl_index_type
- 'sizeof (std__standard__bit_vector__BOUND));
- T0_0.ALL.BASE := std__standard__bit_vector__BASEP'conv (__ghdl_malloc0 ((
- T0_0.ALL.BOUNDS.ALL.dim_1.length *# __ghdl_index_type'sizeof (
- std__standard__bit))));
- DECLARE
- LOCAL VAR T1_0 : std__standard__bit_vector__BASEP;
- LOCAL VAR T1_1 : std__standard__bit_vector__BOUNDP;
- LOCAL VAR T1_2 : __ghdl_index_type;
- BEGIN
- T1_0 := T0_0.ALL.BASE;
- T1_1 := T0_0.ALL.BOUNDS;
- DECLARE
- LOCAL VAR T2_0 : std__standard__integer__BT__TRT;
- BEGIN
- T2_0.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[0]);
- T2_0.right := std__standard__integer__BT'conv (INSTANCE.ALL.ix);
- T2_0.dir := __ghdl_dir_type'[dir_to];
- DECLARE
- LOCAL VAR T4_0 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T5_0 : __ghdl_i32;
- BEGIN
- T5_0 := (__ghdl_i32'conv (T2_0.right) -# __ghdl_i32'conv (T2_0.left
- ));
- IF __ghdl_bool_type'(T5_0 < 0) THEN
- T4_0 := 0;
- ELSE
- T4_0 := (__ghdl_index_type'conv (T5_0) +# 1);
- END IF;
- END;
- T2_0.length := T4_0;
- END;
- IF __ghdl_bool_type'(T2_0.length /= T1_1.ALL.dim_1.length) THEN
- __ghdl_bound_check_failed (__ghdl_char_ptr'address (_UI00000000), 20)
- ;
- END IF;
- END;
- T1_2 := 0;
- DECLARE
- LOCAL VAR T2_0 : __ghdl_index_type;
- LOCAL VAR T2_1 : __ghdl_index_type;
- LOCAL VAR T2_2 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T3_0 : __ghdl_i32;
- BEGIN
- T3_0 := (__ghdl_i32'conv (INSTANCE.ALL.ix) -# __ghdl_i32'conv (
- std__standard__integer__BT'[0]));
- IF __ghdl_bool_type'(T3_0 < 0) THEN
- T2_0 := 0;
- ELSE
- T2_0 := (__ghdl_index_type'conv (T3_0) +# 1);
- END IF;
- END;
- T2_1 := T2_0;
- T2_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T2_2 = T2_1) THEN
- EXIT LOOP 1;
- END IF;
- T1_0.ALL[T1_2] := std__standard__bit'[C_1];
- T1_2 := (T1_2 +# 1);
- T2_2 := (T2_2 +# 1);
- END LOOP;
- END;
- END;
- END;
- work__inc__LASTARCH__DECL_ELAB (SUB_INSTANCE);
- work__inc__LASTARCH__STMT_ELAB (SUB_INSTANCE);
- work__inc__LASTARCH__DEFAULT_CONFIG (work__inc__INSTPTR'conv (SUB_INSTANCE));
-END;
-
-PUBLIC PROCEDURE work__repro__ARCH__default__DECL_ELAB (
- INSTANCE: work__repro__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__repro__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__repro__ARCH__default__INSTPTR'conv (INSTANCE);
- INSTANCE.ALL.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__default__RTI);
- work__repro__DECL_ELAB (INSTANCE);
- --# 14
- --# 14
- DECLARE
- LOCAL VAR T0_0 : std__standard__integer__BT__TRPTR;
- LOCAL VAR T0_1 : work__repro__ARCH__default__g__INSTARRPTR;
- LOCAL VAR T0_2 : __ghdl_index_type;
- LOCAL VAR T0_3 : work__repro__ARCH__default__g__INSTPTR;
- LOCAL VAR T0_4 : std__standard__integer__BT;
- BEGIN
- T0_0 := std__standard__integer__BT__TRPTR'address (
- work__repro__ARCH__default__g__ix__OT__STR);
- T0_1 := work__repro__ARCH__default__g__INSTARRPTR'conv (__ghdl_malloc0 ((
- T0_0.ALL.length *# __ghdl_index_type'sizeof (
- work__repro__ARCH__default__g__INSTTYPE))));
- ARCH_INSTANCE.ALL.g := T0_1;
- T0_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T0_2 = T0_0.ALL.length) THEN
- EXIT LOOP 1;
- END IF;
- T0_3 := work__repro__ARCH__default__g__INSTPTR'address (T0_1.ALL[T0_2]);
- T0_3.ALL.ORIGIN := ARCH_INSTANCE;
- T0_3.ALL.CONFIGURED := __ghdl_bool_type'[false];
- IF __ghdl_bool_type'(T0_0.ALL.dir = __ghdl_dir_type'[dir_to]) THEN
- T0_4 := T0_0.ALL.left;
- ELSE
- T0_4 := T0_0.ALL.right;
- END IF;
- T0_3.ALL.ix := (T0_4 +# std__standard__integer__BT'conv (T0_2));
- --# 17
- work__repro__ARCH__default__g__inst__COMP_ELAB (T0_3);
- T0_2 := (T0_2 +# 1);
- END LOOP;
- END;
-END;
-
-PUBLIC PROCEDURE work__repro__ARCH__default__STMT_ELAB (
- INSTANCE: work__repro__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__repro__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__repro__ARCH__default__INSTPTR'conv (INSTANCE);
- work__repro__STMT_ELAB (INSTANCE);
- --# 14
- DECLARE
- LOCAL VAR T0_0 : work__repro__ARCH__default__g__INSTARRPTR;
- LOCAL VAR T0_1 : __ghdl_index_type;
- LOCAL VAR T0_2 : __ghdl_index_type;
- LOCAL VAR T0_3 : work__repro__ARCH__default__g__INSTPTR;
- BEGIN
- T0_0 := ARCH_INSTANCE.ALL.g;
- T0_1 := work__repro__ARCH__default__g__ix__OT__STR.length;
- T0_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T0_2 = T0_1) THEN
- EXIT LOOP 1;
- END IF;
- T0_3 := work__repro__ARCH__default__g__INSTPTR'address (T0_0.ALL[T0_2]);
- T0_2 := (T0_2 +# 1);
- END LOOP;
- END;
-END;
-
diff --git a/testsuite/gna/issue626/top.on b/testsuite/gna/issue626/top.on
deleted file mode 100644
index be71e3424..000000000
--- a/testsuite/gna/issue626/top.on
+++ /dev/null
@@ -1,2845 +0,0 @@
--- internal declarations, part 1
-
-TYPE __ghdl_size_type IS UNSIGNED (32);
-
-TYPE __ghdl_index_type IS UNSIGNED (32);
-
-TYPE __ghdl_i32 IS SIGNED (32);
-
-TYPE __ghdl_real IS FLOAT;
-
-TYPE __ghdl_i64 IS SIGNED (64);
-
-TYPE __ghdl_file_index IS UNSIGNED (32);
-
-TYPE __ghdl_file_index_ptr IS ACCESS __ghdl_file_index;
-
-TYPE __ghdl_char IS UNSIGNED (8);
-
-TYPE __ghdl_chararray IS ARRAY [__ghdl_index_type] OF __ghdl_char;
-
-TYPE __ghdl_char_ptr IS ACCESS __ghdl_chararray;
-
-TYPE __ghdl_char_ptr_array IS ARRAY [__ghdl_index_type] OF __ghdl_char_ptr;
-
-TYPE __ghdl_char_ptr_array_ptr IS ACCESS __ghdl_char_ptr_array;
-
-TYPE __ghdl_ptr IS ACCESS __ghdl_char;
-
-TYPE __ghdl_str_len IS RECORD
- len: __ghdl_index_type;
- str: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_str_len_array IS ARRAY [__ghdl_index_type] OF __ghdl_str_len;
-
-TYPE __ghdl_str_len_ptr IS ACCESS __ghdl_str_len;
-
-TYPE __ghdl_bool_type IS BOOLEAN {false, true};
-
-TYPE __ghdl_bool_array_type IS ARRAY [__ghdl_index_type] OF __ghdl_bool_type;
-
-TYPE __ghdl_bool_array_ptr IS ACCESS __ghdl_bool_array_type;
-
-TYPE __ghdl_sizes_type IS RECORD
- size_val: __ghdl_index_type;
- size_sig: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_compare_type IS ENUM {lt, eq, gt};
-
-TYPE __ghdl_location IS RECORD
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- col: __ghdl_i32;
-END RECORD;
-
-TYPE __ghdl_location_ptr IS ACCESS __ghdl_location;
-
-TYPE __ghdl_dir_type IS ENUM {dir_to, dir_downto};
-
-TYPE __ghdl_signal IS RECORD;
-
-TYPE __ghdl_signal_ptr IS ACCESS __ghdl_signal;
-
-EXTERNAL FUNCTION __ghdl_alloc (
- size: __ghdl_size_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_program_error (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- code: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bound_check_failed (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_direction_check_failed (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_stack2_allocate (
- size: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_stack2_mark (
- )
- RETURN __ghdl_ptr;
-
-EXTERNAL PROCEDURE __ghdl_stack2_release (
- mark: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_memcpy (
- dest: __ghdl_ptr;
- src: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_deallocate (
- OBJ: __ghdl_ptr);
-
-EXTERNAL FUNCTION __ghdl_malloc (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_malloc0 (
- length: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_text_file_elaborate (
- )
- RETURN __ghdl_file_index;
-
-EXTERNAL FUNCTION __ghdl_file_elaborate (
- NAME: __ghdl_char_ptr)
- RETURN __ghdl_file_index;
-
-EXTERNAL PROCEDURE __ghdl_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_text_file_finalize (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_protected_enter (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_leave (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_init (
- OBJ: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_protected_fini (
- OBJ: __ghdl_ptr);
-
-TYPE __ghdl_rtik IS ENUM {__ghdl_rtik_top, __ghdl_rtik_library,
- __ghdl_rtik_package, __ghdl_rtik_package_body, __ghdl_rtik_entity,
- __ghdl_rtik_architecture, __ghdl_rtik_process, __ghdl_rtik_block,
- __ghdl_rtik_if_generate, __ghdl_rtik_case_generate,
- __ghdl_rtik_for_generate, __ghdl_rtik_generate_body, __ghdl_rtik_instance,
- __ghdl_rtik_constant, __ghdl_rtik_iterator, __ghdl_rtik_variable,
- __ghdl_rtik_signal, __ghdl_rtik_file, __ghdl_rtik_port,
- __ghdl_rtik_generic, __ghdl_rtik_alias, __ghdl_rtik_guard,
- __ghdl_rtik_component, __ghdl_rtik_attribute, __ghdl_rtik_type_b1,
- __ghdl_rtik_type_e8, __ghdl_rtik_type_e32, __ghdl_rtik_type_i32,
- __ghdl_rtik_type_i64, __ghdl_rtik_type_f64, __ghdl_rtik_type_p32,
- __ghdl_rtik_type_p64, __ghdl_rtik_type_access, __ghdl_rtik_type_array,
- __ghdl_rtik_type_record, __ghdl_rtik_type_unbounded_record,
- __ghdl_rtik_type_file, __ghdl_rtik_subtype_scalar,
- __ghdl_rtik_subtype_array, __ghdl_rtik_subtype_unconstrained_array,
- __ghdl_rtik_subtype_record, __ghdl_rtik_subtype_unbounded_record,
- __ghdl_rtik_subtype_access, __ghdl_rtik_type_protected,
- __ghdl_rtik_element, __ghdl_rtik_unit64, __ghdl_rtik_unitptr,
- __ghdl_rtik_attribute_transaction, __ghdl_rtik_attribute_quiet,
- __ghdl_rtik_attribute_stable, __ghdl_rtik_psl_assert,
- __ghdl_rtik_psl_cover, __ghdl_rtik_psl_endpoint, __ghdl_rtik_error};
-
-TYPE __ghdl_rti_depth IS UNSIGNED (8);
-
-TYPE __ghdl_rti_u8 IS UNSIGNED (8);
-
-TYPE __ghdl_rti_common IS RECORD
- kind: __ghdl_rtik;
- depth: __ghdl_rti_depth;
- mode: __ghdl_rti_u8;
- max_depth: __ghdl_rti_depth;
-END RECORD;
-
-TYPE __ghdl_rti_access IS ACCESS __ghdl_rti_common;
-
-TYPE __ghdl_rti_array IS ARRAY [__ghdl_index_type] OF __ghdl_rti_access;
-
-TYPE __ghdl_rti_arr_acc IS ACCESS __ghdl_rti_array;
-
-TYPE __ghdl_component_link_type IS RECORD;
-
-TYPE __ghdl_component_link_acc IS ACCESS __ghdl_component_link_type;
-
-TYPE __ghdl_entity_link_type IS RECORD
- rti: __ghdl_rti_access;
- parent: __ghdl_component_link_acc;
-END RECORD;
-
-TYPE __ghdl_entity_link_acc IS ACCESS __ghdl_entity_link_type;
-
-TYPE __ghdl_component_link_type IS RECORD
- INSTANCE: __ghdl_entity_link_acc;
- stmt: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_generate IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- linecol: __ghdl_index_type;
- parent: __ghdl_rti_access;
- size: __ghdl_index_type;
- child: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_block_file IS RECORD
- block: __ghdl_rtin_block;
- filename: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_enum IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- lits: __ghdl_char_ptr_array_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_scalar IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
- range: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_unit64 IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- val: __ghdl_i64;
-END RECORD;
-
-TYPE __ghdl_rtin_unitptr IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- addr: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_physical IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- units: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_type_fileacc IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_type_array IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- element: __ghdl_rti_access;
- nbr_dim: __ghdl_index_type;
- indexes: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_subtype_composite IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- basetype: __ghdl_rti_access;
- bounds: __ghdl_ptr;
- val_size: __ghdl_ptr;
- sig_size: __ghdl_ptr;
-END RECORD;
-
-TYPE __ghdl_rtin_type_record IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbrel: __ghdl_index_type;
- elements: __ghdl_rti_arr_acc;
-END RECORD;
-
-TYPE __ghdl_rtin_element IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- eltype: __ghdl_rti_access;
- val_off: __ghdl_index_type;
- sig_off: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_object IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_ptr;
- obj_type: __ghdl_rti_access;
- linecol: __ghdl_index_type;
-END RECORD;
-
-TYPE __ghdl_rtin_instance IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- linecol: __ghdl_index_type;
- loc: __ghdl_ptr;
- parent: __ghdl_rti_access;
- instance: __ghdl_rti_access;
-END RECORD;
-
-TYPE __ghdl_rtin_component IS RECORD
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-END RECORD;
-
-EXTERNAL PROCEDURE __ghdl_signal_name_rti (
- OBJ: __ghdl_rti_access;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_postponed_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_finalize_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr);
-
--- package std.standard
-
-TYPE std__standard__boolean IS BOOLEAN {false, true};
-
-TYPE std__standard__boolean__PTR IS ACCESS std__standard__boolean;
-
-TYPE std__standard__boolean__TRT IS RECORD
- left: std__standard__boolean;
- right: std__standard__boolean;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__boolean__TRPTR IS ACCESS std__standard__boolean__TRT;
-
-TYPE std__standard__BOOLEAN_ARRAY IS ARRAY [__ghdl_index_type] OF
- std__standard__boolean;
-
-TYPE std__standard__bit IS BOOLEAN {C_0, C_1};
-
-TYPE std__standard__bit__PTR IS ACCESS std__standard__bit;
-
-TYPE std__standard__bit__TRT IS RECORD
- left: std__standard__bit;
- right: std__standard__bit;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__bit__TRPTR IS ACCESS std__standard__bit__TRT;
-
-TYPE std__standard__character IS ENUM {nul, soh, stx, etx, eot, enq, ack, bel,
- bs, ht, lf, vt, ff, cr, so, si, dle, dc1, dc2, dc3, dc4, nak, syn, etb,
- can, em, sub, esc, fsp, gsp, rsp, usp, C20, C21, C22, C23, C24, C25, C26,
- C27, C28, C29, C2a, C2b, C2c, C2d, C2e, C2f, C_0, C_1, C_2, C_3, C_4, C_5,
- C_6, C_7, C_8, C_9, C3a, C3b, C3c, C3d, C3e, C3f, C40, C_A, C_B, C_C, C_D,
- C_E, C_F, C_G, C_H, C_I, C_J, C_K, C_L, C_M, C_N, C_O, C_P, C_Q, C_R, C_S,
- C_T, C_U, C_V, C_W, C_X, C_Y, C_Z, C5b, C5c, C5d, C5e, C5f, C60, C_a, C_b,
- C_c, C_d, C_e, C_f, C_g, C_h, C_i, C_j, C_k, C_l, C_m, C_n, C_o, C_p, C_q,
- C_r, C_s, C_t, C_u, C_v, C_w, C_x, C_y, C_z, C7b, C7c, C7d, C7e, del, c128,
- c129, c130, c131, c132, c133, c134, c135, c136, c137, c138, c139, c140,
- c141, c142, c143, c144, c145, c146, c147, c148, c149, c150, c151, c152,
- c153, c154, c155, c156, c157, c158, c159, Ca0, Ca1, Ca2, Ca3, Ca4, Ca5,
- Ca6, Ca7, Ca8, Ca9, Caa, Cab, Cac, Cad, Cae, Caf, Cb0, Cb1, Cb2, Cb3, Cb4,
- Cb5, Cb6, Cb7, Cb8, Cb9, Cba, Cbb, Cbc, Cbd, Cbe, Cbf, Cc0, Cc1, Cc2, Cc3,
- Cc4, Cc5, Cc6, Cc7, Cc8, Cc9, Cca, Ccb, Ccc, Ccd, Cce, Ccf, Cd0, Cd1, Cd2,
- Cd3, Cd4, Cd5, Cd6, Cd7, Cd8, Cd9, Cda, Cdb, Cdc, Cdd, Cde, Cdf, Ce0, Ce1,
- Ce2, Ce3, Ce4, Ce5, Ce6, Ce7, Ce8, Ce9, Cea, Ceb, Cec, Ced, Cee, Cef, Cf0,
- Cf1, Cf2, Cf3, Cf4, Cf5, Cf6, Cf7, Cf8, Cf9, Cfa, Cfb, Cfc, Cfd, Cfe, Cff};
-
-TYPE std__standard__character__PTR IS ACCESS std__standard__character;
-
-TYPE std__standard__character__TRT IS RECORD
- left: std__standard__character;
- right: std__standard__character;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__character__TRPTR IS ACCESS std__standard__character__TRT;
-
-EXTERNAL CONSTANT std__standard__character__BTR : std__standard__character__TRT
- ;
-
-TYPE std__standard__severity_level IS ENUM {note, warning, error, failure};
-
-TYPE std__standard__severity_level__PTR IS ACCESS std__standard__severity_level
- ;
-
-TYPE std__standard__severity_level__TRT IS RECORD
- left: std__standard__severity_level;
- right: std__standard__severity_level;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__severity_level__TRPTR IS ACCESS
- std__standard__severity_level__TRT;
-
-EXTERNAL CONSTANT std__standard__severity_level__BTR :
- std__standard__severity_level__TRT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_INTEGER__BT;
- right: std__standard__UNIVERSAL_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_INTEGER__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__STR :
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT IS FLOAT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__PTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRT IS RECORD
- left: std__standard__UNIVERSAL_REAL__BT;
- right: std__standard__UNIVERSAL_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__UNIVERSAL_REAL__BT__TRPTR IS ACCESS
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__STR :
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-TYPE std__standard__integer__BT IS SIGNED (32);
-
-TYPE std__standard__integer__BT__PTR IS ACCESS std__standard__integer__BT;
-
-TYPE std__standard__integer__BT__TRT IS RECORD
- left: std__standard__integer__BT;
- right: std__standard__integer__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__integer__BT__TRPTR IS ACCESS
- std__standard__integer__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__integer__STR : std__standard__integer__BT__TRT
- ;
-
-TYPE std__standard__real__BT IS FLOAT;
-
-TYPE std__standard__real__BT__PTR IS ACCESS std__standard__real__BT;
-
-TYPE std__standard__real__BT__TRT IS RECORD
- left: std__standard__real__BT;
- right: std__standard__real__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__real__BT__TRPTR IS ACCESS std__standard__real__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__real__STR : std__standard__real__BT__TRT;
-
-TYPE std__standard__time__BT IS SIGNED (64);
-
-TYPE std__standard__time__BT__PTR IS ACCESS std__standard__time__BT;
-
-TYPE std__standard__time__BT__TRT IS RECORD
- left: std__standard__time__BT;
- right: std__standard__time__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__time__BT__TRPTR IS ACCESS std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__time__STR : std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__delay_length__STR :
- std__standard__time__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__natural__STR : std__standard__integer__BT__TRT
- ;
-
-EXTERNAL CONSTANT std__standard__positive__STR :
- std__standard__integer__BT__TRT;
-
-TYPE std__standard__string__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__character;
-
-TYPE std__standard__string__BASEP IS ACCESS std__standard__string__BASE;
-
-TYPE std__standard__string__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__string__SIGBASEP IS ACCESS std__standard__string__SIGBASE;
-
-TYPE std__standard__string__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__string__BOUNDP IS ACCESS std__standard__string__BOUND;
-
-TYPE std__standard__string IS RECORD
- BASE: std__standard__string__BASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__PTR IS ACCESS std__standard__string;
-
-TYPE std__standard__string__SIG IS RECORD
- BASE: std__standard__string__SIGBASEP;
- BOUNDS: std__standard__string__BOUNDP;
-END RECORD;
-
-TYPE std__standard__string__SIGPTR IS ACCESS std__standard__string__SIG;
-
-EXTERNAL FUNCTION std__standard__string_EQ (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__string_CMP (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- RETURN __ghdl_compare_type;
-
-TYPE std__standard__bit_vector__BASE IS ARRAY [__ghdl_index_type] OF
- std__standard__bit;
-
-TYPE std__standard__bit_vector__BASEP IS ACCESS std__standard__bit_vector__BASE
- ;
-
-TYPE std__standard__bit_vector__SIGBASE IS ARRAY [__ghdl_index_type] OF
- __ghdl_signal_ptr;
-
-TYPE std__standard__bit_vector__SIGBASEP IS ACCESS
- std__standard__bit_vector__SIGBASE;
-
-TYPE std__standard__bit_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE std__standard__bit_vector__BOUNDP IS ACCESS
- std__standard__bit_vector__BOUND;
-
-TYPE std__standard__bit_vector IS RECORD
- BASE: std__standard__bit_vector__BASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__PTR IS ACCESS std__standard__bit_vector;
-
-TYPE std__standard__bit_vector__SIG IS RECORD
- BASE: std__standard__bit_vector__SIGBASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-END RECORD;
-
-TYPE std__standard__bit_vector__SIGPTR IS ACCESS std__standard__bit_vector__SIG
- ;
-
-EXTERNAL FUNCTION std__standard__bit_vector_EQ (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION std__standard__bit_vector_CMP (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_AND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_OR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NAND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_NOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_XNOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHL (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_SHA (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-EXTERNAL PROCEDURE std__standard__bit_vector_ROT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-TYPE std__standard__file_open_kind IS ENUM {read_mode, write_mode,
- append_mode};
-
-TYPE std__standard__file_open_kind__PTR IS ACCESS std__standard__file_open_kind
- ;
-
-TYPE std__standard__file_open_kind__TRT IS RECORD
- left: std__standard__file_open_kind;
- right: std__standard__file_open_kind;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_kind__TRPTR IS ACCESS
- std__standard__file_open_kind__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__BTR :
- std__standard__file_open_kind__TRT;
-
-TYPE std__standard__file_open_status IS ENUM {open_ok, status_error,
- name_error, mode_error};
-
-TYPE std__standard__file_open_status__PTR IS ACCESS
- std__standard__file_open_status;
-
-TYPE std__standard__file_open_status__TRT IS RECORD
- left: std__standard__file_open_status;
- right: std__standard__file_open_status;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__file_open_status__TRPTR IS ACCESS
- std__standard__file_open_status__TRT;
-
-EXTERNAL CONSTANT std__standard__file_open_status__BTR :
- std__standard__file_open_status__TRT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT IS SIGNED (64);
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_INTEGER__BT;
- right: std__standard__CONVERTIBLE_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_INTEGER__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_INTEGER__BT__TRT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT IS FLOAT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__PTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRT IS RECORD
- left: std__standard__CONVERTIBLE_REAL__BT;
- right: std__standard__CONVERTIBLE_REAL__BT;
- dir: __ghdl_dir_type;
-END RECORD;
-
-TYPE std__standard__CONVERTIBLE_REAL__BT__TRPTR IS ACCESS
- std__standard__CONVERTIBLE_REAL__BT__TRT;
-
-EXTERNAL CONSTANT std__standard__RTI : __ghdl_rtin_block;
-
-EXTERNAL CONSTANT std__standard__boolean__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__bit__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__character__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__severity_level__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_INTEGER__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__UNIVERSAL_REAL__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__integer__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__real__BT__RTI : __ghdl_rtin_type_scalar;
-
-EXTERNAL CONSTANT std__standard__real__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__time__BT__RTI : __ghdl_rtin_type_physical;
-
-EXTERNAL CONSTANT std__standard__time__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__delay_length__RTI : __ghdl_rtin_subtype_scalar
- ;
-
-EXTERNAL CONSTANT std__standard__natural__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__positive__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT std__standard__string__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__bit_vector__RTI : __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT std__standard__file_open_kind__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__file_open_status__RTI : __ghdl_rtin_type_enum;
-
-EXTERNAL CONSTANT std__standard__foreign__RTI : __ghdl_rtin_object;
-
-TYPE __ghdl_std_ulogic_boolean_array_type IS SUBARRAY
- std__standard__BOOLEAN_ARRAY[9];
-
-EXTERNAL CONSTANT __ghdl_std_ulogic_to_boolean_array :
- __ghdl_std_ulogic_boolean_array_type;
-
--- internal declarations, part 2
-
-EXTERNAL VAR __ghdl_now : std__standard__time__BT;
-
-EXTERNAL PROCEDURE __ghdl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_ieee_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_psl_cover_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_report (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr);
-
-EXTERNAL PROCEDURE __ghdl_text_write (
- file: __ghdl_file_index;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_read_length (
- file: __ghdl_file_index;
- str: std__standard__string__PTR)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_write_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_read_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_real_exp (
- left: std__standard__real__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__real__BT;
-
-EXTERNAL FUNCTION __ghdl_integer_exp (
- left: std__standard__integer__BT;
- right: std__standard__integer__BT)
- RETURN std__standard__integer__BT;
-
-EXTERNAL PROCEDURE __ghdl_image_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_b1 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_image_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e8 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_e32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_value_i32 (
- val: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_i64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64);
-
-EXTERNAL FUNCTION __ghdl_value_i64 (
- val: std__standard__string__PTR)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_image_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_image_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL FUNCTION __ghdl_value_p64 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_image_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_value_f64 (
- val: std__standard__string__PTR)
- RETURN __ghdl_real;
-
-EXTERNAL PROCEDURE __ghdl_text_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-EXTERNAL FUNCTION __ghdl_text_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_file_endfile (
- file: __ghdl_file_index)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_text_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_close (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_file_flush (
- file: __ghdl_file_index);
-
-EXTERNAL PROCEDURE __ghdl_signal_create_resolution (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- sig: __ghdl_ptr;
- nbr_sig: __ghdl_index_type);
-
-TYPE __ghdl_scalar_bytes IS SUBARRAY __ghdl_chararray[8];
-
-TYPE __ghdl_signal IS RECORD
- driving_value: __ghdl_scalar_bytes;
- last_value: __ghdl_scalar_bytes;
- last_event: std__standard__time__BT;
- last_active: std__standard__time__BT;
- value: __ghdl_ptr;
- event: std__standard__boolean;
- active: std__standard__boolean;
- has_active: __ghdl_bool_type;
-END RECORD;
-
-TYPE __ghdl_signal_ptr_ptr IS ACCESS __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_merge_rti (
- sig: __ghdl_signal_ptr;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_source (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_effective_value (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_set_disconnect (
- sig: __ghdl_signal_ptr;
- time: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_disconnect (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_drivers (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_get_nbr_ports (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_index_type;
-
-EXTERNAL FUNCTION __ghdl_signal_read_driver (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_read_port (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- RETURN __ghdl_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_driving (
- sig: __ghdl_signal_ptr)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_error (
- sig: __ghdl_signal_ptr;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_error (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_error (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_null (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_null (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT);
-
-EXTERNAL FUNCTION __ghdl_create_signal_e8 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e8 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e8 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_e32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_e32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_e32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_b1 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_b1 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_b1 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_b1 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_bool_type;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i32 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i32 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_create_signal_f64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_f64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_f64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_real;
-
-EXTERNAL FUNCTION __ghdl_create_signal_i64 (
- val_ptr: __ghdl_ptr;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_init_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_simple_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_start_assign_i64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_next_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-EXTERNAL PROCEDURE __ghdl_signal_associate_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_port_driver_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-EXTERNAL FUNCTION __ghdl_signal_driving_value_i64 (
- sig: __ghdl_signal_ptr)
- RETURN __ghdl_i64;
-
-EXTERNAL PROCEDURE __ghdl_process_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_add_driver (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_add_direct_driver (
- sig: __ghdl_signal_ptr;
- drv: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_direct_assign (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_signal_in_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_signal_out_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-EXTERNAL FUNCTION __ghdl_create_stable_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_quiet_signal (
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_create_transaction_signal (
- val_ptr: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_attribute_register_prefix (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL FUNCTION __ghdl_create_delayed_signal (
- sig: __ghdl_signal_ptr;
- val_ptr: __ghdl_ptr;
- val: std__standard__time__BT)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL FUNCTION __ghdl_signal_create_guard (
- val_ptr: __ghdl_ptr;
- this: __ghdl_ptr;
- proc: __ghdl_ptr)
- RETURN __ghdl_signal_ptr;
-
-EXTERNAL PROCEDURE __ghdl_signal_guard_dependence (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_exit (
- );
-
-EXTERNAL PROCEDURE __ghdl_process_wait_timeout (
- time: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_set_timeout (
- time: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-EXTERNAL PROCEDURE __ghdl_process_wait_suspend (
- );
-
-EXTERNAL FUNCTION __ghdl_process_wait_timed_out (
- )
- RETURN __ghdl_bool_type;
-
-EXTERNAL PROCEDURE __ghdl_process_wait_close (
- );
-
-EXTERNAL PROCEDURE __ghdl_get_path_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_get_instance_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_package (
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_rti_add_top (
- max_pkgs: __ghdl_index_type;
- pkgs: __ghdl_rti_arr_acc;
- RTI: __ghdl_rti_access;
- INSTANCE: __ghdl_ptr);
-
-EXTERNAL PROCEDURE __ghdl_init_top_generics (
- );
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_eq (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_ne (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_lt (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_match_le (
- left: __ghdl_i32;
- right: __ghdl_i32)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_eq (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL FUNCTION __ghdl_std_ulogic_array_match_ne (
- left: __ghdl_ptr;
- l_len: __ghdl_index_type;
- right: __ghdl_ptr;
- r_len: __ghdl_index_type)
- RETURN __ghdl_i32;
-
-EXTERNAL PROCEDURE __ghdl_to_string_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_i64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_digits (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- nbr_digits: __ghdl_i32);
-
-EXTERNAL PROCEDURE __ghdl_to_string_f64_format (
- res: std__standard__string__PTR;
- val: __ghdl_real;
- format: std__standard__string__PTR);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_ostring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_bv_to_hstring (
- res: std__standard__string__PTR;
- val: std__standard__bit_vector__BASEP;
- length: __ghdl_index_type);
-
-EXTERNAL PROCEDURE __ghdl_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_char (
- res: std__standard__string__PTR;
- val: std__standard__character);
-
-EXTERNAL PROCEDURE __ghdl_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_to_string_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_time_to_string_unit (
- res: std__standard__string__PTR;
- val: std__standard__time__BT;
- unit: std__standard__time__BT;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_b1 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
-EXTERNAL PROCEDURE __ghdl_array_char_to_string_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_ptr;
- length: __ghdl_index_type;
- RTI: __ghdl_rti_access);
-
---F /Users/gingold/devel/ghdl/build-gcc/lib/ghdl/ieee/v93/../../src/ieee/std_logic_1164.v93
-
--- package declaration std_logic_1164
-
-TYPE ieee__std_logic_1164__std_ulogic IS ENUM {C_U, C_X, C_0, C_1, C_Z, C_W,
- C_L, C_H, C2d};
-
-TYPE ieee__std_logic_1164__std_ulogic__PTR IS ACCESS
- ieee__std_logic_1164__std_ulogic;
-
-TYPE ieee__std_logic_1164__std_ulogic__TRT IS RECORD
- left: ieee__std_logic_1164__std_ulogic;
- right: ieee__std_logic_1164__std_ulogic;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_ulogic__TRPTR IS ACCESS
- ieee__std_logic_1164__std_ulogic__TRT;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_ulogic__BTR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__BASE IS ARRAY [__ghdl_index_type
- ] OF ieee__std_logic_1164__std_ulogic;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__BASEP IS ACCESS
- ieee__std_logic_1164__std_ulogic_vector__BASE;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__SIGBASE IS ARRAY [
- __ghdl_index_type] OF __ghdl_signal_ptr;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__SIGBASEP IS ACCESS
- ieee__std_logic_1164__std_ulogic_vector__SIGBASE;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__BOUNDP IS ACCESS
- ieee__std_logic_1164__std_ulogic_vector__BOUND;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector IS RECORD
- BASE: ieee__std_logic_1164__std_ulogic_vector__BASEP;
- BOUNDS: ieee__std_logic_1164__std_ulogic_vector__BOUNDP;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__PTR IS ACCESS
- ieee__std_logic_1164__std_ulogic_vector;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__SIG IS RECORD
- BASE: ieee__std_logic_1164__std_ulogic_vector__SIGBASEP;
- BOUNDS: ieee__std_logic_1164__std_ulogic_vector__BOUNDP;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_ulogic_vector__SIGPTR IS ACCESS
- ieee__std_logic_1164__std_ulogic_vector__SIG;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_logic__STR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-TYPE ieee__std_logic_1164__std_logic_vector__BASE IS ARRAY [__ghdl_index_type]
- OF ieee__std_logic_1164__std_ulogic;
-
-TYPE ieee__std_logic_1164__std_logic_vector__BASEP IS ACCESS
- ieee__std_logic_1164__std_logic_vector__BASE;
-
-TYPE ieee__std_logic_1164__std_logic_vector__SIGBASE IS ARRAY [
- __ghdl_index_type] OF __ghdl_signal_ptr;
-
-TYPE ieee__std_logic_1164__std_logic_vector__SIGBASEP IS ACCESS
- ieee__std_logic_1164__std_logic_vector__SIGBASE;
-
-TYPE ieee__std_logic_1164__std_logic_vector__BOUND IS RECORD
- dim_1: std__standard__integer__BT__TRT;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_logic_vector__BOUNDP IS ACCESS
- ieee__std_logic_1164__std_logic_vector__BOUND;
-
-TYPE ieee__std_logic_1164__std_logic_vector IS RECORD
- BASE: ieee__std_logic_1164__std_logic_vector__BASEP;
- BOUNDS: ieee__std_logic_1164__std_logic_vector__BOUNDP;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_logic_vector__PTR IS ACCESS
- ieee__std_logic_1164__std_logic_vector;
-
-TYPE ieee__std_logic_1164__std_logic_vector__SIG IS RECORD
- BASE: ieee__std_logic_1164__std_logic_vector__SIGBASEP;
- BOUNDS: ieee__std_logic_1164__std_logic_vector__BOUNDP;
-END RECORD;
-
-TYPE ieee__std_logic_1164__std_logic_vector__SIGPTR IS ACCESS
- ieee__std_logic_1164__std_logic_vector__SIG;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__x01__STR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__x01z__STR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__ux01__STR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__ux01z__STR :
- ieee__std_logic_1164__std_ulogic__TRT;
-
-EXTERNAL VAR ieee__std_logic_1164__ELABORATED : __ghdl_bool_type;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__std_ulogic_vector_EQ (
- left: ieee__std_logic_1164__std_ulogic_vector__PTR;
- right: ieee__std_logic_1164__std_ulogic_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__std_ulogic_vector_CMP (
- left: ieee__std_logic_1164__std_ulogic_vector__PTR;
- right: ieee__std_logic_1164__std_ulogic_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__resolved (
- s: ieee__std_logic_1164__std_ulogic_vector__PTR)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__resolved_RESOLV (
- INSTANCE: __ghdl_ptr;
- VALS: __ghdl_signal_ptr;
- bool_vec: __ghdl_bool_array_ptr;
- vec_len: __ghdl_index_type;
- nbr_drv: __ghdl_index_type;
- nbr_ports: __ghdl_index_type);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__std_logic_vector_EQ (
- left: ieee__std_logic_1164__std_logic_vector__PTR;
- right: ieee__std_logic_1164__std_logic_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__std_logic_vector_CMP (
- left: ieee__std_logic_1164__std_logic_vector__PTR;
- right: ieee__std_logic_1164__std_logic_vector__PTR)
- RETURN __ghdl_compare_type;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__andO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__nandO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__orO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__norO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__xorO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__xnorO1 (
- l: ieee__std_logic_1164__std_ulogic;
- r: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__notO1 (
- l: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__andO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__andO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__nandO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__nandO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__orO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__orO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__norO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__norO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__xorO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__xorO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__xnorO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR;
- r: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__xnorO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR;
- r: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__notO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- l: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__notO3 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- l: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_bit (
- s: ieee__std_logic_1164__std_ulogic;
- xmap: std__standard__bit)
- RETURN std__standard__bit;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_bitvectorO1 (
- RESULT: std__standard__bit_vector__PTR;
- s: ieee__std_logic_1164__std_logic_vector__PTR;
- xmap: std__standard__bit);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_bitvectorO2 (
- RESULT: std__standard__bit_vector__PTR;
- s: ieee__std_logic_1164__std_ulogic_vector__PTR;
- xmap: std__standard__bit);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_stdulogic (
- b: std__standard__bit)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_stdlogicvectorO1 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_stdlogicvectorO2 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- s: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_stdulogicvectorO1 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_stdulogicvectorO2 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- s: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01O1 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- s: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01O2 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- s: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_x01O3 (
- s: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01O4 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01O5 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_x01O6 (
- b: std__standard__bit)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01zO1 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- s: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01zO2 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- s: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_x01zO3 (
- s: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01zO4 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_x01zO5 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_x01zO6 (
- b: std__standard__bit)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_ux01O1 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- s: ieee__std_logic_1164__std_logic_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_ux01O2 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- s: ieee__std_logic_1164__std_ulogic_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_ux01O3 (
- s: ieee__std_logic_1164__std_ulogic)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_ux01O4 (
- RESULT: ieee__std_logic_1164__std_logic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__to_ux01O5 (
- RESULT: ieee__std_logic_1164__std_ulogic_vector__PTR;
- b: std__standard__bit_vector__PTR);
-
-EXTERNAL FUNCTION ieee__std_logic_1164__to_ux01O6 (
- b: std__standard__bit)
- RETURN ieee__std_logic_1164__std_ulogic;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__rising_edge (
- s: ieee__std_logic_1164__std_ulogic;
- sSIG: __ghdl_signal_ptr)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__falling_edge (
- s: ieee__std_logic_1164__std_ulogic;
- sSIG: __ghdl_signal_ptr)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__is_xO1 (
- s: ieee__std_logic_1164__std_ulogic_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__is_xO2 (
- s: ieee__std_logic_1164__std_logic_vector__PTR)
- RETURN std__standard__boolean;
-
-EXTERNAL FUNCTION ieee__std_logic_1164__is_xO3 (
- s: ieee__std_logic_1164__std_ulogic)
- RETURN std__standard__boolean;
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__ELAB_SPEC (
- );
-
-EXTERNAL PROCEDURE ieee__std_logic_1164__ELAB_BODY (
- );
-
-EXTERNAL CONSTANT ieee__std_logic_1164__RTI : __ghdl_rtin_block;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_ulogic__RTI : __ghdl_rtin_type_enum
- ;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_ulogic_vector__RTI :
- __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_logic__RTI :
- __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__std_logic_vector__RTI :
- __ghdl_rtin_type_array;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__x01__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__x01z__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__ux01__RTI : __ghdl_rtin_subtype_scalar;
-
-EXTERNAL CONSTANT ieee__std_logic_1164__ux01z__RTI : __ghdl_rtin_subtype_scalar
- ;
-
-PRIVATE CONSTANT _UI00000000 : SUBARRAY __ghdl_chararray[9];
-
-CONSTANT _UI00000000 := {116, 111, 112, 46, 118, 104, 100, 108, 0};
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/top.vhdl
-
--- entity inc_ent
-
-TYPE work__inc_ent__INSTTYPE IS RECORD;
-
-TYPE work__inc_ent__INSTPTR IS ACCESS work__inc_ent__INSTTYPE;
-
-TYPE work__inc_ent__INSTTYPE IS RECORD
- RTI: __ghdl_entity_link_type;
- works: std__standard__integer__BT;
- vec: ieee__std_logic_1164__std_logic_vector;
-END RECORD;
-
-PUBLIC PROCEDURE work__inc_ent__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__inc_ent__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__inc_ent__PKG_ELAB (
- );
-
-EXTERNAL CONSTANT work__RTI : __ghdl_rtin_type_scalar;
-
-PUBLIC CONSTANT work__inc_ent__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__inc_ent__works__RTI : __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__inc_ent__works__RTISTR : SUBARRAY __ghdl_chararray[6];
-
-CONSTANT work__inc_ent__works__RTISTR := {119, 111, 114, 107, 115, 0};
-
-CONSTANT work__inc_ent__works__RTI := {{__ghdl_rtik'[__ghdl_rtik_generic], 1,
- 0, 0}, __ghdl_char_ptr'unchecked_address (work__inc_ent__works__RTISTR),
- __ghdl_ptr'offsetof (work__inc_ent__INSTTYPE.works),
- __ghdl_rti_access'unchecked_address (std__standard__integer__RTI), 1552};
-
-PUBLIC CONSTANT work__inc_ent__vec__RTI : __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__inc_ent__vec__RTISTR : SUBARRAY __ghdl_chararray[4];
-
-CONSTANT work__inc_ent__vec__RTISTR := {118, 101, 99, 0};
-
-CONSTANT work__inc_ent__vec__RTI := {{__ghdl_rtik'[__ghdl_rtik_generic], 1, 0,
- 0}, __ghdl_char_ptr'unchecked_address (work__inc_ent__vec__RTISTR),
- __ghdl_ptr'offsetof (work__inc_ent__INSTTYPE.vec),
- __ghdl_rti_access'unchecked_address (
- ieee__std_logic_1164__std_logic_vector__RTI), 1808};
-
-PRIVATE CONSTANT work__inc_ent__RTISTR : SUBARRAY __ghdl_chararray[8];
-
-CONSTANT work__inc_ent__RTISTR := {105, 110, 99, 95, 101, 110, 116, 0};
-
-PRIVATE CONSTANT work__inc_ent__RTIARRAY : SUBARRAY __ghdl_rti_array[3];
-
-CONSTANT work__inc_ent__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__inc_ent__works__RTI),
- __ghdl_rti_access'unchecked_address (work__inc_ent__vec__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc_ent__RTI := {{{__ghdl_rtik'[__ghdl_rtik_entity], 1, 0, 0},
- __ghdl_char_ptr'address (work__inc_ent__RTISTR), __ghdl_ptr'[NULL], 1032,
- __ghdl_rti_access'unchecked_address (work__RTI), 2,
- __ghdl_rti_arr_acc'address (work__inc_ent__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__inc_ent__PKG_ELAB (
- )
-DECLARE
-BEGIN
- --# 4
- IF NOT ieee__std_logic_1164__ELABORATED THEN
- ieee__std_logic_1164__ELAB_BODY ();
- END IF;
-END;
-
-PUBLIC PROCEDURE work__inc_ent__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR)
-DECLARE
-BEGIN
- --# 4
- --# 4
-END;
-
-PUBLIC PROCEDURE work__inc_ent__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR)
-DECLARE
-BEGIN
- --# 4
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/top.vhdl
-
--- architecture default
-
-TYPE work__inc_ent__ARCH__default__INSTTYPE IS RECORD;
-
-TYPE work__inc_ent__ARCH__default__INSTPTR IS ACCESS
- work__inc_ent__ARCH__default__INSTTYPE;
-
-TYPE work__inc_ent__ARCH__default__P0__INSTTYPE IS RECORD
-END RECORD;
-
-TYPE work__inc_ent__ARCH__default__INSTTYPE IS RECORD
- ENTITY: work__inc_ent__INSTTYPE;
- P0: work__inc_ent__ARCH__default__P0__INSTTYPE;
-END RECORD;
-
-PUBLIC CONSTANT work__inc_ent__ARCH__default__INSTSIZE : __ghdl_index_type;
-
-CONSTANT work__inc_ent__ARCH__default__INSTSIZE := __ghdl_index_type'sizeof (
- work__inc_ent__ARCH__default__INSTTYPE);
-
-PUBLIC PROCEDURE work__inc_ent__ARCH__default__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__inc_ent__ARCH__default__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
-
-PUBLIC CONSTANT work__inc_ent__ARCH__default__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__inc_ent__ARCH__default__P0__RTI : __ghdl_rtin_block;
-
-PRIVATE CONSTANT work__inc_ent__ARCH__default__P0__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__inc_ent__ARCH__default__P0__RTISTR := {80, 48, 0};
-
-PRIVATE CONSTANT work__inc_ent__ARCH__default__P0__RTIARRAY : SUBARRAY
- __ghdl_rti_array[1];
-
-CONSTANT work__inc_ent__ARCH__default__P0__RTIARRAY :=
- {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc_ent__ARCH__default__P0__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_process], 2, 0, 0},
- __ghdl_char_ptr'address (work__inc_ent__ARCH__default__P0__RTISTR),
- __ghdl_ptr'offsetof (work__inc_ent__ARCH__default__INSTTYPE.P0), 3080,
- __ghdl_rti_access'unchecked_address (work__inc_ent__ARCH__default__RTI), 0,
- __ghdl_rti_arr_acc'address (work__inc_ent__ARCH__default__P0__RTIARRAY)};
-
-PRIVATE CONSTANT work__inc_ent__ARCH__default__RTISTR : SUBARRAY
- __ghdl_chararray[8];
-
-CONSTANT work__inc_ent__ARCH__default__RTISTR := {100, 101, 102, 97, 117, 108,
- 116, 0};
-
-PRIVATE CONSTANT work__inc_ent__ARCH__default__RTIARRAY : SUBARRAY
- __ghdl_rti_array[2];
-
-CONSTANT work__inc_ent__ARCH__default__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__inc_ent__ARCH__default__P0__RTI)
- , __ghdl_rti_access'[NULL]};
-
-CONSTANT work__inc_ent__ARCH__default__RTI := {{
- {__ghdl_rtik'[__ghdl_rtik_architecture], 1, 0, 0},
- __ghdl_char_ptr'address (work__inc_ent__ARCH__default__RTISTR),
- __ghdl_ptr'offsetof (work__inc_ent__ARCH__default__INSTTYPE.ENTITY), 2574,
- __ghdl_rti_access'unchecked_address (work__inc_ent__RTI), 1,
- __ghdl_rti_arr_acc'address (work__inc_ent__ARCH__default__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-
-PRIVATE PROCEDURE work__inc_ent__ARCH__default__P0__PROC (
- INSTANCE: work__inc_ent__ARCH__default__INSTPTR)
-DECLARE
- PRIVATE CONSTANT _UI00000001 : __ghdl_location;
- CONSTANT _UI00000001 := {__ghdl_char_ptr'address (_UI00000000), 12, 8};
-BEGIN
- --# 12
- DECLARE
- LOCAL VAR T0_0 : std__standard__string__BOUND;
- LOCAL VAR T0_1 : std__standard__string__BASEP;
- LOCAL VAR T0_2 : std__standard__string;
- LOCAL VAR T0_3 : std__standard__string;
- LOCAL VAR T0_4 : __ghdl_ptr;
- LOCAL VAR T0_5 : std__standard__string__PTR;
- LOCAL VAR T0_6 : std__standard__string;
- LOCAL VAR T0_7 : std__standard__string__PTR;
- LOCAL VAR T0_8 : __ghdl_index_type;
- BEGIN
- T0_2.BOUNDS := std__standard__string__BOUNDP'address (T0_0);
- T0_4 := __ghdl_stack2_mark ();
- __ghdl_image_i32 (std__standard__string__PTR'address (T0_3), __ghdl_i32
- 'conv (INSTANCE.ALL.ENTITY.works));
- T0_5 := std__standard__string__PTR'address (T0_3);
- __ghdl_image_i32 (std__standard__string__PTR'address (T0_6), __ghdl_i32
- 'conv (std__standard__integer__BT'conv (INSTANCE.ALL.ENTITY.vec.BOUNDS.
- ALL.dim_1.length)));
- T0_7 := std__standard__string__PTR'address (T0_6);
- T0_8 := ((__ghdl_index_type'[1] +# T0_5.ALL.BOUNDS.ALL.dim_1.length) +#
- T0_7.ALL.BOUNDS.ALL.dim_1.length);
- DECLARE
- LOCAL VAR T1_0 : std__standard__integer__BT__TRPTR;
- LOCAL VAR right_bound : std__standard__integer__BT;
- BEGIN
- T1_0 := std__standard__integer__BT__TRPTR'address (T0_0.dim_1);
- T1_0.ALL.length := T0_8;
- T1_0.ALL.dir := __ghdl_dir_type'[dir_to];
- IF __ghdl_bool_type'(T0_8 = 0) THEN
- T1_0.ALL.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[2147483647]);
- T1_0.ALL.right := std__standard__integer__BT'conv (
- std__standard__integer__BT'[1]);
- ELSE
- T1_0.ALL.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[1]);
- right_bound := (std__standard__integer__BT'conv (
- std__standard__integer__BT'[1]) +# std__standard__integer__BT'conv ((
- T0_8 -# 1)));
- IF __ghdl_bool_type'(right_bound < 1) THEN
- __ghdl_bound_check_failed (__ghdl_char_ptr'address (_UI00000000), 12)
- ;
- END IF;
- T1_0.ALL.right := right_bound;
- END IF;
- END;
- T0_1 := std__standard__string__BASEP'alloca ((T0_2.BOUNDS.ALL.dim_1.length
- *# __ghdl_index_type'sizeof (std__standard__character)));
- T0_2.BASE := T0_1;
- DECLARE
- LOCAL VAR T1_0 : __ghdl_index_type;
- TYPE work__inc_ent__ARCH__default__P0__U0 IS SUBARRAY
- std__standard__string__BASE[1];
- PRIVATE CONSTANT work__inc_ent__ARCH__default__P0__U0__STB :
- std__standard__string__BOUND;
- CONSTANT work__inc_ent__ARCH__default__P0__U0__STB := {{1, 1,
- __ghdl_dir_type'[dir_to], 1}};
- PRIVATE CONSTANT _UI00000002 : work__inc_ent__ARCH__default__P0__U0;
- CONSTANT _UI00000002 := {std__standard__character'[C20]};
- PRIVATE CONSTANT _UI00000003 : std__standard__string;
- CONSTANT _UI00000003 :=
- {std__standard__string__BASEP'address (_UI00000002),
- std__standard__string__BOUNDP'address (
- work__inc_ent__ARCH__default__P0__U0__STB)};
- BEGIN
- T1_0 := 0;
- DECLARE
- LOCAL VAR T2_0 : std__standard__string;
- BEGIN
- T2_0.BOUNDS := T0_5.ALL.BOUNDS;
- T2_0.BASE := std__standard__string__BASEP'address (T0_1.ALL[T1_0...]);
- __ghdl_memcpy (__ghdl_ptr'conv (T2_0.BASE), __ghdl_ptr'conv (T0_5.ALL.
- BASE), (T2_0.BOUNDS.ALL.dim_1.length *# __ghdl_index_type'sizeof (
- std__standard__character)));
- T1_0 := (T1_0 +# T0_5.ALL.BOUNDS.ALL.dim_1.length);
- END;
- DECLARE
- LOCAL VAR T2_0 : std__standard__string__PTR;
- LOCAL VAR T2_1 : std__standard__string;
- BEGIN
- T2_0 := std__standard__string__PTR'address (_UI00000003);
- T2_1.BOUNDS := T2_0.ALL.BOUNDS;
- T2_1.BASE := std__standard__string__BASEP'address (T0_1.ALL[T1_0...]);
- __ghdl_memcpy (__ghdl_ptr'conv (T2_1.BASE), __ghdl_ptr'conv (T2_0.ALL.
- BASE), (T2_1.BOUNDS.ALL.dim_1.length *# __ghdl_index_type'sizeof (
- std__standard__character)));
- T1_0 := (T1_0 +# T2_0.ALL.BOUNDS.ALL.dim_1.length);
- END;
- DECLARE
- LOCAL VAR T2_0 : std__standard__string;
- BEGIN
- T2_0.BOUNDS := T0_7.ALL.BOUNDS;
- T2_0.BASE := std__standard__string__BASEP'address (T0_1.ALL[T1_0...]);
- __ghdl_memcpy (__ghdl_ptr'conv (T2_0.BASE), __ghdl_ptr'conv (T0_7.ALL.
- BASE), (T2_0.BOUNDS.ALL.dim_1.length *# __ghdl_index_type'sizeof (
- std__standard__character)));
- T1_0 := (T1_0 +# T0_7.ALL.BOUNDS.ALL.dim_1.length);
- END;
- END;
- __ghdl_assert_failed (std__standard__string__PTR'address (T0_2),
- std__standard__severity_level'[error], __ghdl_location_ptr'address (
- _UI00000001));
- __ghdl_stack2_release (T0_4);
- END;
-END;
-
-PUBLIC PROCEDURE work__inc_ent__ARCH__default__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__inc_ent__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__inc_ent__ARCH__default__INSTPTR'conv (INSTANCE);
- INSTANCE.ALL.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__inc_ent__ARCH__default__RTI);
- work__inc_ent__DECL_ELAB (INSTANCE);
- --# 10
- --# 10
-END;
-
-PUBLIC PROCEDURE work__inc_ent__ARCH__default__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__inc_ent__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__inc_ent__ARCH__default__INSTPTR'conv (INSTANCE);
- work__inc_ent__STMT_ELAB (INSTANCE);
- --# 10
- --# 12
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.ALL), __ghdl_ptr'subprg_addr (
- work__inc_ent__ARCH__default__P0__PROC), __ghdl_rti_access
- 'unchecked_address (work__inc_ent__ARCH__default__P0__RTI), __ghdl_ptr
- 'unchecked_address (ARCH_INSTANCE.ALL.P0));
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/top.vhdl
-
--- entity top_ent
-
-TYPE work__top_ent__INSTTYPE IS RECORD;
-
-TYPE work__top_ent__INSTPTR IS ACCESS work__top_ent__INSTTYPE;
-
-TYPE work__top_ent__INSTTYPE IS RECORD
- RTI: __ghdl_entity_link_type;
-END RECORD;
-
-PUBLIC PROCEDURE work__top_ent__DECL_ELAB (
- INSTANCE: work__top_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__top_ent__STMT_ELAB (
- INSTANCE: work__top_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__top_ent__PKG_ELAB (
- );
-
-PUBLIC CONSTANT work__top_ent__RTI : __ghdl_rtin_block_file;
-
-PRIVATE CONSTANT work__top_ent__RTISTR : SUBARRAY __ghdl_chararray[8];
-
-CONSTANT work__top_ent__RTISTR := {116, 111, 112, 95, 101, 110, 116, 0};
-
-PRIVATE CONSTANT work__top_ent__RTIARRAY : SUBARRAY __ghdl_rti_array[1];
-
-CONSTANT work__top_ent__RTIARRAY := {__ghdl_rti_access'[NULL]};
-
-CONSTANT work__top_ent__RTI := {{{__ghdl_rtik'[__ghdl_rtik_entity], 1, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__RTISTR), __ghdl_ptr'[NULL], 4616,
- __ghdl_rti_access'unchecked_address (work__RTI), 0,
- __ghdl_rti_arr_acc'address (work__top_ent__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-PUBLIC PROCEDURE work__top_ent__PKG_ELAB (
- )
-DECLARE
-BEGIN
- --# 18
- IF NOT ieee__std_logic_1164__ELABORATED THEN
- ieee__std_logic_1164__ELAB_BODY ();
- END IF;
-END;
-
-PUBLIC PROCEDURE work__top_ent__DECL_ELAB (
- INSTANCE: work__top_ent__INSTPTR)
-DECLARE
-BEGIN
- --# 18
- --# 18
-END;
-
-PUBLIC PROCEDURE work__top_ent__STMT_ELAB (
- INSTANCE: work__top_ent__INSTPTR)
-DECLARE
-BEGIN
- --# 18
-END;
-
---F /Users/gingold/devel/ghdl/testsuite/gna/issue626/top.vhdl
-
--- architecture default
-
-TYPE work__top_ent__ARCH__default__INSTTYPE IS RECORD;
-
-TYPE work__top_ent__ARCH__default__INSTPTR IS ACCESS
- work__top_ent__ARCH__default__INSTTYPE;
-
-TYPE work__top_ent__ARCH__default__foo_v__OT IS SUBARRAY
- ieee__std_logic_1164__std_logic_vector__BASE[13];
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__foo_v__OT__STB :
- ieee__std_logic_1164__std_logic_vector__BOUND;
-
-CONSTANT work__top_ent__ARCH__default__foo_v__OT__STB := {{0, 12,
- __ghdl_dir_type'[dir_to], 13}};
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__ix__OT__STR :
- std__standard__integer__BT__TRT;
-
-CONSTANT work__top_ent__ARCH__default__g__ix__OT__STR := {0, 4,
- __ghdl_dir_type'[dir_to], 5};
-
-TYPE work__top_ent__ARCH__default__g__INSTTYPE IS RECORD;
-
-TYPE work__top_ent__ARCH__default__g__INSTPTR IS ACCESS
- work__top_ent__ARCH__default__g__INSTTYPE;
-
-TYPE work__top_ent__ARCH__default__g__INSTTYPE IS RECORD
- ORIGIN: work__top_ent__ARCH__default__INSTPTR;
- CONFIGURED: __ghdl_bool_type;
- ix: std__standard__integer__BT;
- foo_v__OT__SIZE: __ghdl_index_type;
- foo_v__OT__STB: ieee__std_logic_1164__std_logic_vector__BOUND;
- foo_v: ieee__std_logic_1164__std_logic_vector__BASEP;
- inst: __ghdl_component_link_type;
- inst2: __ghdl_component_link_type;
-END RECORD;
-
-TYPE work__top_ent__ARCH__default__g__INSTARRTYPE IS ARRAY [__ghdl_index_type]
- OF work__top_ent__ARCH__default__g__INSTTYPE;
-
-TYPE work__top_ent__ARCH__default__g__INSTARRPTR IS ACCESS
- work__top_ent__ARCH__default__g__INSTARRTYPE;
-
-TYPE work__top_ent__ARCH__default__INSTTYPE IS RECORD
- ENTITY: work__top_ent__INSTTYPE;
- foo_v: work__top_ent__ARCH__default__foo_v__OT;
- g: work__top_ent__ARCH__default__g__INSTARRPTR;
-END RECORD;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__INSTSIZE : __ghdl_index_type;
-
-CONSTANT work__top_ent__ARCH__default__INSTSIZE := __ghdl_index_type'sizeof (
- work__top_ent__ARCH__default__INSTTYPE);
-
-PUBLIC PROCEDURE work__top_ent__ARCH__default__DECL_ELAB (
- INSTANCE: work__top_ent__INSTPTR);
-
-PUBLIC PROCEDURE work__top_ent__ARCH__default__STMT_ELAB (
- INSTANCE: work__top_ent__INSTPTR);
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__RTI : __ghdl_rtin_block_file;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__foo_v__RTI : __ghdl_rtin_object;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__foo_v__OT__RTI :
- __ghdl_rtin_subtype_composite;
-
-CONSTANT work__top_ent__ARCH__default__foo_v__OT__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_subtype_array], 0, 2, 0}, __ghdl_char_ptr'[NULL],
- __ghdl_rti_access'unchecked_address (
- ieee__std_logic_1164__std_logic_vector__RTI),
- __ghdl_ptr'unchecked_address (work__top_ent__ARCH__default__foo_v__OT__STB)
- , __ghdl_ptr'sizeof (work__top_ent__ARCH__default__foo_v__OT),
- __ghdl_ptr'[NULL]};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__foo_v__RTISTR : SUBARRAY
- __ghdl_chararray[6];
-
-CONSTANT work__top_ent__ARCH__default__foo_v__RTISTR := {102, 111, 111, 95,
- 118, 0};
-
-CONSTANT work__top_ent__ARCH__default__foo_v__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_constant], 1, 0, 0},
- __ghdl_char_ptr'unchecked_address (
- work__top_ent__ARCH__default__foo_v__RTISTR),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__INSTTYPE.foo_v),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__foo_v__OT__RTI), 5393};
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__ITERATOR__RTI :
- __ghdl_rtin_subtype_scalar;
-
-CONSTANT work__top_ent__ARCH__default__g__ITERATOR__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_subtype_scalar], 0, 0, 0}, __ghdl_char_ptr'[NULL],
- __ghdl_rti_access'unchecked_address (std__standard__integer__BT__RTI),
- __ghdl_ptr'unchecked_address (work__top_ent__ARCH__default__g__ix__OT__STR)}
- ;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__RTI : __ghdl_rtin_generate;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__RTI : __ghdl_rtin_block;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__ix__RTI :
- __ghdl_rtin_object;
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__ix__RTISTR : SUBARRAY
- __ghdl_chararray[3];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__ix__RTISTR := {105, 120, 0};
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__ix__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_iterator], 3, 0, 0},
- __ghdl_char_ptr'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__ix__RTISTR),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.ix),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__ITERATOR__RTI), 5904};
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__RTI :
- __ghdl_rtin_object;
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__OT__RTI :
- __ghdl_rtin_subtype_composite;
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__OT__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_subtype_array], 3, 3, 3}, __ghdl_char_ptr'[NULL],
- __ghdl_rti_access'unchecked_address (
- ieee__std_logic_1164__std_logic_vector__RTI),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.
- foo_v__OT__STB),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.
- foo_v__OT__SIZE), __ghdl_ptr'[NULL]};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__RTISTR : SUBARRAY
- __ghdl_chararray[6];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__RTISTR := {102, 111,
- 111, 95, 118, 0};
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__foo_v__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_constant], 3, 0, 0},
- __ghdl_char_ptr'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__foo_v__RTISTR),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.foo_v),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__foo_v__OT__RTI), 6169};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__inst__RTISTR : SUBARRAY
- __ghdl_chararray[5];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__inst__RTISTR := {105, 110, 115,
- 116, 0};
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__inst__RTI :
- __ghdl_rtin_instance;
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__inst__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_instance], 3, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__ARCH__default__g__BOD__inst__RTISTR)
- , 6928,
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.inst),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__RTI),
- __ghdl_rti_access'unchecked_address (work__inc_ent__RTI)};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__inst2__RTISTR : SUBARRAY
- __ghdl_chararray[6];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__inst2__RTISTR := {105, 110,
- 115, 116, 50, 0};
-
-PUBLIC CONSTANT work__top_ent__ARCH__default__g__BOD__inst2__RTI :
- __ghdl_rtin_instance;
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__inst2__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_instance], 3, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__ARCH__default__g__BOD__inst2__RTISTR
- ), 8208,
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__g__INSTTYPE.inst2),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__RTI),
- __ghdl_rti_access'unchecked_address (work__inc_ent__RTI)};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__RTISTR : SUBARRAY
- __ghdl_chararray[1];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__RTISTR := {0};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__BOD__RTIARRAY : SUBARRAY
- __ghdl_rti_array[5];
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__ix__RTI),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__foo_v__RTI),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__inst__RTI),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__inst2__RTI), __ghdl_rti_access'[NULL]};
-
-CONSTANT work__top_ent__ARCH__default__g__BOD__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_generate_body], 3, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__ARCH__default__g__BOD__RTISTR),
- __ghdl_ptr'[NULL], 6160,
- __ghdl_rti_access'unchecked_address (work__top_ent__ARCH__default__g__RTI),
- 4,
- __ghdl_rti_arr_acc'address (work__top_ent__ARCH__default__g__BOD__RTIARRAY)}
- ;
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__g__RTISTR : SUBARRAY
- __ghdl_chararray[2];
-
-CONSTANT work__top_ent__ARCH__default__g__RTISTR := {103, 0};
-
-CONSTANT work__top_ent__ARCH__default__g__RTI := {
- {__ghdl_rtik'[__ghdl_rtik_for_generate], 2, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__ARCH__default__g__RTISTR),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__INSTTYPE.g), 5896,
- __ghdl_rti_access'unchecked_address (work__top_ent__ARCH__default__RTI),
- __ghdl_index_type'sizeof (work__top_ent__ARCH__default__g__INSTTYPE),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__RTI)};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__RTISTR : SUBARRAY
- __ghdl_chararray[8];
-
-CONSTANT work__top_ent__ARCH__default__RTISTR := {100, 101, 102, 97, 117, 108,
- 116, 0};
-
-PRIVATE CONSTANT work__top_ent__ARCH__default__RTIARRAY : SUBARRAY
- __ghdl_rti_array[4];
-
-CONSTANT work__top_ent__ARCH__default__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__foo_v__RTI),
- __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__ITERATOR__RTI),
- __ghdl_rti_access'unchecked_address (work__top_ent__ARCH__default__g__RTI),
- __ghdl_rti_access'[NULL]};
-
-CONSTANT work__top_ent__ARCH__default__RTI := {{
- {__ghdl_rtik'[__ghdl_rtik_architecture], 1, 0, 0},
- __ghdl_char_ptr'address (work__top_ent__ARCH__default__RTISTR),
- __ghdl_ptr'offsetof (work__top_ent__ARCH__default__INSTTYPE.ENTITY), 5134,
- __ghdl_rti_access'unchecked_address (work__top_ent__RTI), 3,
- __ghdl_rti_arr_acc'address (work__top_ent__ARCH__default__RTIARRAY)},
- __ghdl_char_ptr'address (_UI00000000)};
-
-
-PRIVATE PROCEDURE work__top_ent__ARCH__default__g__inst__COMP_ELAB (
- INSTANCE: work__top_ent__ARCH__default__g__INSTPTR)
-DECLARE
- EXTERNAL CONSTANT work__inc_ent__LASTARCH__INSTSIZE : __ghdl_index_type;
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__DEFAULT_CONFIG (
- INSTANCE: work__inc_ent__INSTPTR);
- LOCAL VAR SUB_INSTANCE : work__inc_ent__INSTPTR;
- LOCAL VAR U0__SIZE : __ghdl_index_type;
- LOCAL VAR U0__STB : ieee__std_logic_1164__std_logic_vector__BOUND;
-BEGIN
- --# 27
- INSTANCE.ALL.inst.stmt := __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__inst__RTI);
- SUB_INSTANCE := work__inc_ent__INSTPTR'conv (__ghdl_malloc0 (
- work__inc_ent__LASTARCH__INSTSIZE));
- INSTANCE.ALL.inst.INSTANCE := __ghdl_entity_link_acc'address (SUB_INSTANCE.
- ALL.RTI);
- SUB_INSTANCE.ALL.RTI.parent := __ghdl_component_link_acc'address (INSTANCE.
- ALL.inst);
- work__inc_ent__PKG_ELAB ();
- SUB_INSTANCE.ALL.works := 0;
- DECLARE
- LOCAL VAR T2_0 : std__standard__integer__BT__TRPTR;
- BEGIN
- T2_0 := std__standard__integer__BT__TRPTR'address (U0__STB.dim_1);
- T2_0.ALL.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[0]);
- T2_0.ALL.right := std__standard__integer__BT'conv (INSTANCE.ALL.ix);
- T2_0.ALL.dir := __ghdl_dir_type'[dir_to];
- DECLARE
- LOCAL VAR T4_0 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T5_0 : __ghdl_i32;
- BEGIN
- T5_0 := (__ghdl_i32'conv (T2_0.ALL.right) -# __ghdl_i32'conv (T2_0.ALL.
- left));
- IF __ghdl_bool_type'(T5_0 < 0) THEN
- T4_0 := 0;
- ELSE
- T4_0 := (__ghdl_index_type'conv (T5_0) +# 1);
- END IF;
- END;
- T2_0.ALL.length := T4_0;
- END;
- END;
- U0__SIZE := (U0__STB.dim_1.length *# __ghdl_index_type'sizeof (
- ieee__std_logic_1164__std_ulogic));
- DECLARE
- LOCAL VAR T0_0 : ieee__std_logic_1164__std_logic_vector__PTR;
- BEGIN
- T0_0 := ieee__std_logic_1164__std_logic_vector__PTR'address (SUB_INSTANCE.
- ALL.vec);
- T0_0.ALL.BOUNDS := ieee__std_logic_1164__std_logic_vector__BOUNDP'address (
- U0__STB);
- T0_0.ALL.BASE := ieee__std_logic_1164__std_logic_vector__BASEP'conv (
- __ghdl_malloc0 ((T0_0.ALL.BOUNDS.ALL.dim_1.length *# __ghdl_index_type
- 'sizeof (ieee__std_logic_1164__std_ulogic))));
- DECLARE
- LOCAL VAR T1_0 : ieee__std_logic_1164__std_logic_vector__BASEP;
- LOCAL VAR T1_1 : ieee__std_logic_1164__std_logic_vector__BOUNDP;
- LOCAL VAR T1_2 : __ghdl_index_type;
- BEGIN
- T1_0 := T0_0.ALL.BASE;
- T1_1 := T0_0.ALL.BOUNDS;
- DECLARE
- LOCAL VAR T2_0 : std__standard__integer__BT__TRT;
- BEGIN
- T2_0.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[0]);
- T2_0.right := std__standard__integer__BT'conv (INSTANCE.ALL.ix);
- T2_0.dir := __ghdl_dir_type'[dir_to];
- DECLARE
- LOCAL VAR T4_0 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T5_0 : __ghdl_i32;
- BEGIN
- T5_0 := (__ghdl_i32'conv (T2_0.right) -# __ghdl_i32'conv (T2_0.left
- ));
- IF __ghdl_bool_type'(T5_0 < 0) THEN
- T4_0 := 0;
- ELSE
- T4_0 := (__ghdl_index_type'conv (T5_0) +# 1);
- END IF;
- END;
- T2_0.length := T4_0;
- END;
- IF __ghdl_bool_type'(T2_0.length /= T1_1.ALL.dim_1.length) THEN
- __ghdl_bound_check_failed (__ghdl_char_ptr'address (_UI00000000), 30)
- ;
- END IF;
- END;
- T1_2 := 0;
- DECLARE
- LOCAL VAR T2_0 : __ghdl_index_type;
- LOCAL VAR T2_1 : __ghdl_index_type;
- LOCAL VAR T2_2 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T3_0 : __ghdl_i32;
- BEGIN
- T3_0 := (__ghdl_i32'conv (INSTANCE.ALL.ix) -# __ghdl_i32'conv (
- std__standard__integer__BT'[0]));
- IF __ghdl_bool_type'(T3_0 < 0) THEN
- T2_0 := 0;
- ELSE
- T2_0 := (__ghdl_index_type'conv (T3_0) +# 1);
- END IF;
- END;
- T2_1 := T2_0;
- T2_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T2_2 = T2_1) THEN
- EXIT LOOP 1;
- END IF;
- T1_0.ALL[T1_2] := ieee__std_logic_1164__std_ulogic'[C_1];
- T1_2 := (T1_2 +# 1);
- T2_2 := (T2_2 +# 1);
- END LOOP;
- END;
- END;
- END;
- work__inc_ent__LASTARCH__DECL_ELAB (SUB_INSTANCE);
- work__inc_ent__LASTARCH__STMT_ELAB (SUB_INSTANCE);
- work__inc_ent__LASTARCH__DEFAULT_CONFIG (work__inc_ent__INSTPTR'conv (
- SUB_INSTANCE));
-END;
-
-
-PRIVATE PROCEDURE work__top_ent__ARCH__default__g__inst2__COMP_ELAB (
- INSTANCE: work__top_ent__ARCH__default__g__INSTPTR)
-DECLARE
- EXTERNAL CONSTANT work__inc_ent__LASTARCH__INSTSIZE : __ghdl_index_type;
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__DECL_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__STMT_ELAB (
- INSTANCE: work__inc_ent__INSTPTR);
- EXTERNAL PROCEDURE work__inc_ent__LASTARCH__DEFAULT_CONFIG (
- INSTANCE: work__inc_ent__INSTPTR);
- LOCAL VAR SUB_INSTANCE : work__inc_ent__INSTPTR;
-BEGIN
- --# 32
- INSTANCE.ALL.inst2.stmt := __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__g__BOD__inst2__RTI);
- SUB_INSTANCE := work__inc_ent__INSTPTR'conv (__ghdl_malloc0 (
- work__inc_ent__LASTARCH__INSTSIZE));
- INSTANCE.ALL.inst2.INSTANCE := __ghdl_entity_link_acc'address (SUB_INSTANCE.
- ALL.RTI);
- SUB_INSTANCE.ALL.RTI.parent := __ghdl_component_link_acc'address (INSTANCE.
- ALL.inst2);
- work__inc_ent__PKG_ELAB ();
- SUB_INSTANCE.ALL.works := 1;
- DECLARE
- LOCAL VAR T0_0 : ieee__std_logic_1164__std_logic_vector;
- LOCAL VAR T0_1 : ieee__std_logic_1164__std_logic_vector__BASEP;
- LOCAL VAR T0_2 : ieee__std_logic_1164__std_logic_vector__PTR;
- LOCAL VAR T0_3 : ieee__std_logic_1164__std_logic_vector__PTR;
- BEGIN
- T0_1 := INSTANCE.ALL.foo_v;
- T0_0.BASE := ieee__std_logic_1164__std_logic_vector__BASEP'conv (T0_1);
- T0_0.BOUNDS := ieee__std_logic_1164__std_logic_vector__BOUNDP'address (
- INSTANCE.ALL.foo_v__OT__STB);
- T0_2 := ieee__std_logic_1164__std_logic_vector__PTR'address (SUB_INSTANCE.
- ALL.vec);
- T0_3 := ieee__std_logic_1164__std_logic_vector__PTR'address (T0_0);
- T0_2.ALL.BOUNDS := ieee__std_logic_1164__std_logic_vector__BOUNDP'conv (
- __ghdl_malloc0 (__ghdl_index_type'sizeof (
- ieee__std_logic_1164__std_logic_vector__BOUND)));
- __ghdl_memcpy (__ghdl_ptr'conv (T0_2.ALL.BOUNDS), __ghdl_ptr'conv (T0_3.ALL
- .BOUNDS), __ghdl_index_type'sizeof (
- ieee__std_logic_1164__std_logic_vector__BOUND));
- T0_2.ALL.BASE := ieee__std_logic_1164__std_logic_vector__BASEP'conv (
- __ghdl_malloc0 ((T0_2.ALL.BOUNDS.ALL.dim_1.length *# __ghdl_index_type
- 'sizeof (ieee__std_logic_1164__std_ulogic))));
- __ghdl_memcpy (__ghdl_ptr'conv (T0_2.ALL.BASE), __ghdl_ptr'conv (T0_3.ALL.
- BASE), (T0_2.ALL.BOUNDS.ALL.dim_1.length *# __ghdl_index_type'sizeof (
- ieee__std_logic_1164__std_ulogic)));
- END;
- work__inc_ent__LASTARCH__DECL_ELAB (SUB_INSTANCE);
- work__inc_ent__LASTARCH__STMT_ELAB (SUB_INSTANCE);
- work__inc_ent__LASTARCH__DEFAULT_CONFIG (work__inc_ent__INSTPTR'conv (
- SUB_INSTANCE));
-END;
-
-PUBLIC PROCEDURE work__top_ent__ARCH__default__DECL_ELAB (
- INSTANCE: work__top_ent__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__top_ent__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__top_ent__ARCH__default__INSTPTR'conv (INSTANCE);
- INSTANCE.ALL.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__top_ent__ARCH__default__RTI);
- work__top_ent__DECL_ELAB (INSTANCE);
- --# 20
- --# 20
- --# 21
- DECLARE
- LOCAL VAR T1_0 : ieee__std_logic_1164__std_logic_vector__BASEP;
- LOCAL VAR T1_1 : __ghdl_index_type;
- LOCAL VAR T1_2 : __ghdl_index_type;
- BEGIN
- T1_0 := ieee__std_logic_1164__std_logic_vector__BASEP'address (
- ARCH_INSTANCE.ALL.foo_v);
- T1_1 := 13;
- T1_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T1_2 = T1_1) THEN
- EXIT LOOP 1;
- END IF;
- T1_0.ALL[T1_2] := ieee__std_logic_1164__std_ulogic'[C_1];
- T1_2 := (T1_2 +# 1);
- END LOOP;
- END;
- DECLARE
- LOCAL VAR T0_0 : std__standard__integer__BT__TRPTR;
- LOCAL VAR T0_1 : work__top_ent__ARCH__default__g__INSTARRPTR;
- LOCAL VAR T0_2 : __ghdl_index_type;
- LOCAL VAR T0_3 : work__top_ent__ARCH__default__g__INSTPTR;
- LOCAL VAR T0_4 : std__standard__integer__BT;
- BEGIN
- T0_0 := std__standard__integer__BT__TRPTR'address (
- work__top_ent__ARCH__default__g__ix__OT__STR);
- T0_1 := work__top_ent__ARCH__default__g__INSTARRPTR'conv (__ghdl_malloc0 ((
- T0_0.ALL.length *# __ghdl_index_type'sizeof (
- work__top_ent__ARCH__default__g__INSTTYPE))));
- ARCH_INSTANCE.ALL.g := T0_1;
- T0_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T0_2 = T0_0.ALL.length) THEN
- EXIT LOOP 1;
- END IF;
- T0_3 := work__top_ent__ARCH__default__g__INSTPTR'address (T0_1.ALL[T0_2])
- ;
- T0_3.ALL.ORIGIN := ARCH_INSTANCE;
- T0_3.ALL.CONFIGURED := __ghdl_bool_type'[false];
- IF __ghdl_bool_type'(T0_0.ALL.dir = __ghdl_dir_type'[dir_to]) THEN
- T0_4 := T0_0.ALL.left;
- ELSE
- T0_4 := T0_0.ALL.right;
- END IF;
- T0_3.ALL.ix := (T0_4 +# std__standard__integer__BT'conv (T0_2));
- --# 24
- --# 24
- DECLARE
- LOCAL VAR T3_0 : std__standard__integer__BT__TRPTR;
- BEGIN
- T3_0 := std__standard__integer__BT__TRPTR'address (T0_3.ALL.
- foo_v__OT__STB.dim_1);
- T3_0.ALL.left := std__standard__integer__BT'conv (
- std__standard__integer__BT'[0]);
- T3_0.ALL.right := std__standard__integer__BT'conv (T0_3.ALL.ix);
- T3_0.ALL.dir := __ghdl_dir_type'[dir_to];
- DECLARE
- LOCAL VAR T5_0 : __ghdl_index_type;
- BEGIN
- DECLARE
- LOCAL VAR T6_0 : __ghdl_i32;
- BEGIN
- T6_0 := (__ghdl_i32'conv (T3_0.ALL.right) -# __ghdl_i32'conv (T3_0.
- ALL.left));
- IF __ghdl_bool_type'(T6_0 < 0) THEN
- T5_0 := 0;
- ELSE
- T5_0 := (__ghdl_index_type'conv (T6_0) +# 1);
- END IF;
- END;
- T3_0.ALL.length := T5_0;
- END;
- END;
- T0_3.ALL.foo_v__OT__SIZE := (T0_3.ALL.foo_v__OT__STB.dim_1.length *#
- __ghdl_index_type'sizeof (ieee__std_logic_1164__std_ulogic));
- T0_3.ALL.foo_v := ieee__std_logic_1164__std_logic_vector__BASEP'conv (
- __ghdl_malloc0 (T0_3.ALL.foo_v__OT__SIZE));
- DECLARE
- LOCAL VAR T2_0 : ieee__std_logic_1164__std_logic_vector__BASEP;
- LOCAL VAR T2_1 : __ghdl_index_type;
- LOCAL VAR T2_2 : __ghdl_index_type;
- BEGIN
- T2_0 := T0_3.ALL.foo_v;
- T2_1 := T0_3.ALL.foo_v__OT__STB.dim_1.length;
- T2_2 := 0;
- LOOP 2:
- IF __ghdl_bool_type'(T2_2 = T2_1) THEN
- EXIT LOOP 2;
- END IF;
- T2_0.ALL[T2_2] := ieee__std_logic_1164__std_ulogic'[C_1];
- T2_2 := (T2_2 +# 1);
- END LOOP;
- END;
- work__top_ent__ARCH__default__g__inst__COMP_ELAB (T0_3);
- work__top_ent__ARCH__default__g__inst2__COMP_ELAB (T0_3);
- T0_2 := (T0_2 +# 1);
- END LOOP;
- END;
-END;
-
-PUBLIC PROCEDURE work__top_ent__ARCH__default__STMT_ELAB (
- INSTANCE: work__top_ent__INSTPTR)
-DECLARE
- LOCAL VAR ARCH_INSTANCE : work__top_ent__ARCH__default__INSTPTR;
-BEGIN
- ARCH_INSTANCE := work__top_ent__ARCH__default__INSTPTR'conv (INSTANCE);
- work__top_ent__STMT_ELAB (INSTANCE);
- --# 20
- DECLARE
- LOCAL VAR T0_0 : work__top_ent__ARCH__default__g__INSTARRPTR;
- LOCAL VAR T0_1 : __ghdl_index_type;
- LOCAL VAR T0_2 : __ghdl_index_type;
- LOCAL VAR T0_3 : work__top_ent__ARCH__default__g__INSTPTR;
- BEGIN
- T0_0 := ARCH_INSTANCE.ALL.g;
- T0_1 := work__top_ent__ARCH__default__g__ix__OT__STR.length;
- T0_2 := 0;
- LOOP 1:
- IF __ghdl_bool_type'(T0_2 = T0_1) THEN
- EXIT LOOP 1;
- END IF;
- T0_3 := work__top_ent__ARCH__default__g__INSTPTR'address (T0_0.ALL[T0_2])
- ;
- T0_2 := (T0_2 +# 1);
- END LOOP;
- END;
-END;
-
diff --git a/testsuite/gna/sr2737/repro.on b/testsuite/gna/sr2737/repro.on
deleted file mode 100644
index 807324302..000000000
--- a/testsuite/gna/sr2737/repro.on
+++ /dev/null
@@ -1,1962 +0,0 @@
--- internal declarations, part 1
-
-type __ghdl_size_type is unsigned (32);
-
-type __ghdl_index_type is unsigned (32);
-
-type __ghdl_i32 is signed (32);
-
-type __ghdl_real is float;
-
-type __ghdl_i64 is signed (64);
-
-type __ghdl_file_index is unsigned (32);
-
-type __ghdl_file_index_ptr is access __ghdl_file_index;
-
-type __ghdl_char is unsigned (8);
-
-type __ghdl_chararray is array [__ghdl_index_type] of __ghdl_char;
-
-type __ghdl_char_ptr is access __ghdl_chararray;
-
-type __ghdl_char_ptr_array is array [__ghdl_index_type] of __ghdl_char_ptr;
-
-type __ghdl_char_ptr_array_ptr is access __ghdl_char_ptr_array;
-
-type __ghdl_ptr is access __ghdl_char;
-
-type __ghdl_str_len is record
- len: __ghdl_index_type;
- str: __ghdl_char_ptr;
-end record;
-
-type __ghdl_str_len_array is array [__ghdl_index_type] of __ghdl_str_len;
-
-type __ghdl_str_len_ptr is access __ghdl_str_len;
-
-type __ghdl_bool_type is boolean {false, true};
-
-type __ghdl_bool_array_type is array [__ghdl_index_type] of __ghdl_bool_type;
-
-type __ghdl_bool_array_ptr is access __ghdl_bool_array_type;
-
-type __ghdl_compare_type is enum {lt = 0, eq = 1, gt = 2};
-
-type __ghdl_location is record
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- col: __ghdl_i32;
-end record;
-
-type __ghdl_location_ptr is access __ghdl_location;
-
-type __ghdl_dir_type is enum {dir_to = 0, dir_downto = 1};
-
-external function __ghdl_alloc (
- size: __ghdl_size_type)
- return __ghdl_ptr;
-
-external procedure __ghdl_program_error (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32;
- code: __ghdl_index_type);
-
-external procedure __ghdl_bound_check_failed_l0 (
- index: __ghdl_index_type);
-
-external procedure __ghdl_bound_check_failed_l1 (
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-external function __ghdl_stack2_allocate (
- size: __ghdl_index_type)
- return __ghdl_ptr;
-
-external function __ghdl_stack2_mark (
- )
- return __ghdl_ptr;
-
-external procedure __ghdl_stack2_release (
- mark: __ghdl_ptr);
-
-external procedure __ghdl_memcpy (
- dest: __ghdl_ptr;
- src: __ghdl_ptr;
- length: __ghdl_index_type);
-
-external procedure __ghdl_deallocate (
- OBJ: __ghdl_ptr);
-
-external function __ghdl_malloc (
- length: __ghdl_index_type)
- return __ghdl_ptr;
-
-external function __ghdl_malloc0 (
- length: __ghdl_index_type)
- return __ghdl_ptr;
-
-external function __ghdl_text_file_elaborate (
- )
- return __ghdl_file_index;
-
-external function __ghdl_file_elaborate (
- NAME: __ghdl_char_ptr)
- return __ghdl_file_index;
-
-external procedure __ghdl_file_finalize (
- file: __ghdl_file_index);
-
-external procedure __ghdl_text_file_finalize (
- file: __ghdl_file_index);
-
-external procedure __ghdl_protected_enter (
- OBJ: __ghdl_ptr);
-
-external procedure __ghdl_protected_leave (
- OBJ: __ghdl_ptr);
-
-external procedure __ghdl_protected_init (
- OBJ: __ghdl_ptr);
-
-external procedure __ghdl_protected_fini (
- OBJ: __ghdl_ptr);
-
-type __ghdl_rtik is enum {__ghdl_rtik_top = 0, __ghdl_rtik_library = 1,
- __ghdl_rtik_package = 2, __ghdl_rtik_package_body = 3,
- __ghdl_rtik_entity = 4, __ghdl_rtik_architecture = 5,
- __ghdl_rtik_process = 6, __ghdl_rtik_block = 7,
- __ghdl_rtik_if_generate = 8, __ghdl_rtik_for_generate = 9,
- __ghdl_rtik_instance = 10, __ghdl_rtik_constant = 11,
- __ghdl_rtik_iterator = 12, __ghdl_rtik_variable = 13,
- __ghdl_rtik_signal = 14, __ghdl_rtik_file = 15, __ghdl_rtik_port = 16,
- __ghdl_rtik_generic = 17, __ghdl_rtik_alias = 18, __ghdl_rtik_guard = 19,
- __ghdl_rtik_component = 20, __ghdl_rtik_attribute = 21,
- __ghdl_rtik_type_b2 = 22, __ghdl_rtik_type_e8 = 23,
- __ghdl_rtik_type_e32 = 24, __ghdl_rtik_type_i32 = 25,
- __ghdl_rtik_type_i64 = 26, __ghdl_rtik_type_f64 = 27,
- __ghdl_rtik_type_p32 = 28, __ghdl_rtik_type_p64 = 29,
- __ghdl_rtik_type_access = 30, __ghdl_rtik_type_array = 31,
- __ghdl_rtik_type_record = 32, __ghdl_rtik_type_file = 33,
- __ghdl_rtik_subtype_scalar = 34, __ghdl_rtik_subtype_array = 35,
- __ghdl_rtik_subtype_array_ptr = 36,
- __ghdl_rtik_subtype_unconstrained_array = 37,
- __ghdl_rtik_subtype_record = 38, __ghdl_rtik_subtype_access = 39,
- __ghdl_rtik_type_protected = 40, __ghdl_rtik_element = 41,
- __ghdl_rtik_unit = 42, __ghdl_rtik_attribute_transaction = 43,
- __ghdl_rtik_attribute_quiet = 44, __ghdl_rtik_attribute_stable = 45,
- __ghdl_rtik_psl_assert = 46, __ghdl_rtik_error = 47};
-
-type __ghdl_rti_depth is unsigned (8);
-
-type __ghdl_rti_u8 is unsigned (8);
-
-type __ghdl_rti_common is record
- kind: __ghdl_rtik;
- depth: __ghdl_rti_depth;
- mode: __ghdl_rti_u8;
- max_depth: __ghdl_rti_depth;
-end record;
-
-type __ghdl_rti_access is access __ghdl_rti_common;
-
-type __ghdl_rti_array is array [__ghdl_index_type] of __ghdl_rti_access;
-
-type __ghdl_rti_arr_acc is access __ghdl_rti_array;
-
-type __ghdl_component_link_type is record;
-
-type __ghdl_component_link_acc is access __ghdl_component_link_type;
-
-type __ghdl_entity_link_type is record
- rti: __ghdl_rti_access;
- parent: __ghdl_component_link_acc;
-end record;
-
-type __ghdl_entity_link_acc is access __ghdl_entity_link_type;
-
-type __ghdl_component_link_type is record
- INSTANCE: __ghdl_entity_link_acc;
- stmt: __ghdl_rti_access;
-end record;
-
-type __ghdl_rti_loc is union
- offset: __ghdl_index_type;
- address: __ghdl_ptr;
-end union;
-
-type __ghdl_rtin_block is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_rti_loc;
- parent: __ghdl_rti_access;
- size: __ghdl_index_type;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-end record;
-
-type __ghdl_rtin_type_scalar is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
-end record;
-
-type __ghdl_rtin_type_enum is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- lits: __ghdl_char_ptr_array_ptr;
-end record;
-
-type __ghdl_rtin_subtype_scalar is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
- range: __ghdl_rti_loc;
-end record;
-
-type __ghdl_rti_unit_val is union
- unit_32: __ghdl_i32;
- unit_64: __ghdl_i64;
- addr: __ghdl_ptr;
-end union;
-
-type __ghdl_rtin_unit is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- value: __ghdl_rti_unit_val;
-end record;
-
-type __ghdl_rtin_type_physical is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr: __ghdl_index_type;
- units: __ghdl_rti_arr_acc;
-end record;
-
-type __ghdl_rtin_type_fileacc is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- base: __ghdl_rti_access;
-end record;
-
-type __ghdl_rtin_type_array is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- element: __ghdl_rti_access;
- nbr_dim: __ghdl_index_type;
- indexes: __ghdl_rti_arr_acc;
-end record;
-
-type __ghdl_rtin_subtype_array is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- basetype: __ghdl_rti_access;
- bounds: __ghdl_rti_loc;
- val_size: __ghdl_rti_loc;
- sig_size: __ghdl_rti_loc;
-end record;
-
-type __ghdl_rtin_type_record is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbrel: __ghdl_index_type;
- elements: __ghdl_rti_arr_acc;
-end record;
-
-type __ghdl_rtin_element is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- eltype: __ghdl_rti_access;
- val_off: __ghdl_index_type;
- sig_off: __ghdl_index_type;
-end record;
-
-type __ghdl_rtin_object is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_rti_loc;
- obj_type: __ghdl_rti_access;
-end record;
-
-type __ghdl_rtin_instance is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- loc: __ghdl_rti_loc;
- parent: __ghdl_rti_access;
- instance: __ghdl_rti_access;
-end record;
-
-type __ghdl_rtin_component is record
- common: __ghdl_rti_common;
- name: __ghdl_char_ptr;
- nbr_child: __ghdl_index_type;
- children: __ghdl_rti_arr_acc;
-end record;
-
-external procedure __ghdl_signal_name_rti (
- OBJ: __ghdl_rti_access;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-external procedure __ghdl_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-external procedure __ghdl_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-external procedure __ghdl_postponed_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-external procedure __ghdl_postponed_sensitized_process_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr);
-
-external procedure __ghdl_finalize_register (
- this: __ghdl_ptr;
- proc: __ghdl_ptr);
-
--- package std.standard
-
-type std__standard__boolean is boolean {false, true};
-
-type std__standard__boolean__PTR is access std__standard__boolean;
-
-type std__standard__boolean__SIG is access std__standard__boolean;
-
-type std__standard__boolean__TRT is record
- left: std__standard__boolean;
- right: std__standard__boolean;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__boolean__TRPTR is access std__standard__boolean__TRT;
-
-type std__standard__BOOLEAN_ARRAY is array [__ghdl_index_type] of
- std__standard__boolean;
-
-type std__standard__bit is boolean {C_0, C_1};
-
-type std__standard__bit__PTR is access std__standard__bit;
-
-type std__standard__bit__SIG is access std__standard__bit;
-
-type std__standard__bit__TRT is record
- left: std__standard__bit;
- right: std__standard__bit;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__bit__TRPTR is access std__standard__bit__TRT;
-
-type std__standard__character is enum {nul = 0, soh = 1, stx = 2, etx = 3,
- eot = 4, enq = 5, ack = 6, bel = 7, bs = 8, ht = 9, lf = 10, vt = 11,
- ff = 12, cr = 13, so = 14, si = 15, dle = 16, dc1 = 17, dc2 = 18, dc3 = 19,
- dc4 = 20, nak = 21, syn = 22, etb = 23, can = 24, em = 25, sub = 26,
- esc = 27, fsp = 28, gsp = 29, rsp = 30, usp = 31, C20 = 32, C21 = 33,
- C22 = 34, C23 = 35, C24 = 36, C25 = 37, C26 = 38, C27 = 39, C28 = 40,
- C29 = 41, C2a = 42, C2b = 43, C2c = 44, C2d = 45, C2e = 46, C2f = 47,
- C_0 = 48, C_1 = 49, C_2 = 50, C_3 = 51, C_4 = 52, C_5 = 53, C_6 = 54,
- C_7 = 55, C_8 = 56, C_9 = 57, C3a = 58, C3b = 59, C3c = 60, C3d = 61,
- C3e = 62, C3f = 63, C40 = 64, C_A = 65, C_B = 66, C_C = 67, C_D = 68,
- C_E = 69, C_F = 70, C_G = 71, C_H = 72, C_I = 73, C_J = 74, C_K = 75,
- C_L = 76, C_M = 77, C_N = 78, C_O = 79, C_P = 80, C_Q = 81, C_R = 82,
- C_S = 83, C_T = 84, C_U = 85, C_V = 86, C_W = 87, C_X = 88, C_Y = 89,
- C_Z = 90, C5b = 91, C5c = 92, C5d = 93, C5e = 94, C5f = 95, C60 = 96,
- C_a = 97, C_b = 98, C_c = 99, C_d = 100, C_e = 101, C_f = 102, C_g = 103,
- C_h = 104, C_i = 105, C_j = 106, C_k = 107, C_l = 108, C_m = 109,
- C_n = 110, C_o = 111, C_p = 112, C_q = 113, C_r = 114, C_s = 115,
- C_t = 116, C_u = 117, C_v = 118, C_w = 119, C_x = 120, C_y = 121,
- C_z = 122, C7b = 123, C7c = 124, C7d = 125, C7e = 126, del = 127,
- c128 = 128, c129 = 129, c130 = 130, c131 = 131, c132 = 132, c133 = 133,
- c134 = 134, c135 = 135, c136 = 136, c137 = 137, c138 = 138, c139 = 139,
- c140 = 140, c141 = 141, c142 = 142, c143 = 143, c144 = 144, c145 = 145,
- c146 = 146, c147 = 147, c148 = 148, c149 = 149, c150 = 150, c151 = 151,
- c152 = 152, c153 = 153, c154 = 154, c155 = 155, c156 = 156, c157 = 157,
- c158 = 158, c159 = 159, Ca0 = 160, Ca1 = 161, Ca2 = 162, Ca3 = 163,
- Ca4 = 164, Ca5 = 165, Ca6 = 166, Ca7 = 167, Ca8 = 168, Ca9 = 169,
- Caa = 170, Cab = 171, Cac = 172, Cad = 173, Cae = 174, Caf = 175,
- Cb0 = 176, Cb1 = 177, Cb2 = 178, Cb3 = 179, Cb4 = 180, Cb5 = 181,
- Cb6 = 182, Cb7 = 183, Cb8 = 184, Cb9 = 185, Cba = 186, Cbb = 187,
- Cbc = 188, Cbd = 189, Cbe = 190, Cbf = 191, Cc0 = 192, Cc1 = 193,
- Cc2 = 194, Cc3 = 195, Cc4 = 196, Cc5 = 197, Cc6 = 198, Cc7 = 199,
- Cc8 = 200, Cc9 = 201, Cca = 202, Ccb = 203, Ccc = 204, Ccd = 205,
- Cce = 206, Ccf = 207, Cd0 = 208, Cd1 = 209, Cd2 = 210, Cd3 = 211,
- Cd4 = 212, Cd5 = 213, Cd6 = 214, Cd7 = 215, Cd8 = 216, Cd9 = 217,
- Cda = 218, Cdb = 219, Cdc = 220, Cdd = 221, Cde = 222, Cdf = 223,
- Ce0 = 224, Ce1 = 225, Ce2 = 226, Ce3 = 227, Ce4 = 228, Ce5 = 229,
- Ce6 = 230, Ce7 = 231, Ce8 = 232, Ce9 = 233, Cea = 234, Ceb = 235,
- Cec = 236, Ced = 237, Cee = 238, Cef = 239, Cf0 = 240, Cf1 = 241,
- Cf2 = 242, Cf3 = 243, Cf4 = 244, Cf5 = 245, Cf6 = 246, Cf7 = 247,
- Cf8 = 248, Cf9 = 249, Cfa = 250, Cfb = 251, Cfc = 252, Cfd = 253,
- Cfe = 254, Cff = 255};
-
-type std__standard__character__PTR is access std__standard__character;
-
-type std__standard__character__SIG is access std__standard__character;
-
-type std__standard__character__TRT is record
- left: std__standard__character;
- right: std__standard__character;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__character__TRPTR is access std__standard__character__TRT;
-
-external constant std__standard__character__BTR : std__standard__character__TRT
- ;
-
-type std__standard__severity_level is enum {note = 0, warning = 1, error = 2,
- failure = 3};
-
-type std__standard__severity_level__PTR is access std__standard__severity_level
- ;
-
-type std__standard__severity_level__SIG is access std__standard__severity_level
- ;
-
-type std__standard__severity_level__TRT is record
- left: std__standard__severity_level;
- right: std__standard__severity_level;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__severity_level__TRPTR is access
- std__standard__severity_level__TRT;
-
-external constant std__standard__severity_level__BTR :
- std__standard__severity_level__TRT;
-
-type std__standard__UNIVERSAL_INTEGER__BT is signed (32);
-
-type std__standard__UNIVERSAL_INTEGER__BT__PTR is access
- std__standard__UNIVERSAL_INTEGER__BT;
-
-type std__standard__UNIVERSAL_INTEGER__BT__SIG is access
- std__standard__UNIVERSAL_INTEGER__BT;
-
-type std__standard__UNIVERSAL_INTEGER__BT__TRT is record
- left: std__standard__UNIVERSAL_INTEGER__BT;
- right: std__standard__UNIVERSAL_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__UNIVERSAL_INTEGER__BT__TRPTR is access
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-external constant std__standard__UNIVERSAL_INTEGER__STR :
- std__standard__UNIVERSAL_INTEGER__BT__TRT;
-
-type std__standard__UNIVERSAL_REAL__BT is float;
-
-type std__standard__UNIVERSAL_REAL__BT__PTR is access
- std__standard__UNIVERSAL_REAL__BT;
-
-type std__standard__UNIVERSAL_REAL__BT__SIG is access
- std__standard__UNIVERSAL_REAL__BT;
-
-type std__standard__UNIVERSAL_REAL__BT__TRT is record
- left: std__standard__UNIVERSAL_REAL__BT;
- right: std__standard__UNIVERSAL_REAL__BT;
- dir: __ghdl_dir_type;
-end record;
-
-type std__standard__UNIVERSAL_REAL__BT__TRPTR is access
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-external constant std__standard__UNIVERSAL_REAL__STR :
- std__standard__UNIVERSAL_REAL__BT__TRT;
-
-type std__standard__CONVERTIBLE_INTEGER__BT is signed (32);
-
-type std__standard__CONVERTIBLE_INTEGER__BT__PTR is access
- std__standard__CONVERTIBLE_INTEGER__BT;
-
-type std__standard__CONVERTIBLE_INTEGER__BT__SIG is access
- std__standard__CONVERTIBLE_INTEGER__BT;
-
-type std__standard__CONVERTIBLE_INTEGER__BT__TRT is record
- left: std__standard__CONVERTIBLE_INTEGER__BT;
- right: std__standard__CONVERTIBLE_INTEGER__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__CONVERTIBLE_INTEGER__BT__TRPTR is access
- std__standard__CONVERTIBLE_INTEGER__BT__TRT;
-
-type std__standard__CONVERTIBLE_REAL__BT is float;
-
-type std__standard__CONVERTIBLE_REAL__BT__PTR is access
- std__standard__CONVERTIBLE_REAL__BT;
-
-type std__standard__CONVERTIBLE_REAL__BT__SIG is access
- std__standard__CONVERTIBLE_REAL__BT;
-
-type std__standard__CONVERTIBLE_REAL__BT__TRT is record
- left: std__standard__CONVERTIBLE_REAL__BT;
- right: std__standard__CONVERTIBLE_REAL__BT;
- dir: __ghdl_dir_type;
-end record;
-
-type std__standard__CONVERTIBLE_REAL__BT__TRPTR is access
- std__standard__CONVERTIBLE_REAL__BT__TRT;
-
-type std__standard__real__BT is float;
-
-type std__standard__real__BT__PTR is access std__standard__real__BT;
-
-type std__standard__real__BT__SIG is access std__standard__real__BT;
-
-type std__standard__real__BT__TRT is record
- left: std__standard__real__BT;
- right: std__standard__real__BT;
- dir: __ghdl_dir_type;
-end record;
-
-type std__standard__real__BT__TRPTR is access std__standard__real__BT__TRT;
-
-external constant std__standard__real__STR : std__standard__real__BT__TRT;
-
-type std__standard__integer__BT is signed (32);
-
-type std__standard__integer__BT__PTR is access std__standard__integer__BT;
-
-type std__standard__integer__BT__SIG is access std__standard__integer__BT;
-
-type std__standard__integer__BT__TRT is record
- left: std__standard__integer__BT;
- right: std__standard__integer__BT;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__integer__BT__TRPTR is access
- std__standard__integer__BT__TRT;
-
-external constant std__standard__integer__STR : std__standard__integer__BT__TRT
- ;
-
-external constant std__standard__natural__STR : std__standard__integer__BT__TRT
- ;
-
-external constant std__standard__positive__STR :
- std__standard__integer__BT__TRT;
-
-type std__standard__string__BASE is array [__ghdl_index_type] of
- std__standard__character;
-
-type std__standard__string__BASEP is access std__standard__string__BASE;
-
-type std__standard__string__SIGBASE is array [__ghdl_index_type] of
- std__standard__character__SIG;
-
-type std__standard__string__SIGBASEP is access std__standard__string__SIGBASE;
-
-type std__standard__string__BOUND is record
- dim_1: std__standard__integer__BT__TRT;
-end record;
-
-type std__standard__string__BOUNDP is access std__standard__string__BOUND;
-
-type std__standard__string is record
- BASE: std__standard__string__BASEP;
- BOUNDS: std__standard__string__BOUNDP;
-end record;
-
-type std__standard__string__PTR is access std__standard__string;
-
-type std__standard__string__SIG is record
- BASE: std__standard__string__SIGBASEP;
- BOUNDS: std__standard__string__BOUNDP;
-end record;
-
-type std__standard__string__SIGPTR is access std__standard__string__SIG;
-
-external constant std__standard__string__BR1 : std__standard__string__BOUND;
-
-external function std__standard__string_EQ (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- return std__standard__boolean;
-
-external function std__standard__string_CMP (
- left: std__standard__string__PTR;
- right: std__standard__string__PTR)
- return __ghdl_compare_type;
-
-external procedure std__standard__string_CONCAT (
- res: std__standard__string__PTR;
- left: std__standard__string__PTR;
- right: std__standard__string__PTR);
-
-type std__standard__bit_vector__BASE is array [__ghdl_index_type] of
- std__standard__bit;
-
-type std__standard__bit_vector__BASEP is access std__standard__bit_vector__BASE
- ;
-
-type std__standard__bit_vector__SIGBASE is array [__ghdl_index_type] of
- std__standard__bit__SIG;
-
-type std__standard__bit_vector__SIGBASEP is access
- std__standard__bit_vector__SIGBASE;
-
-type std__standard__bit_vector__BOUND is record
- dim_1: std__standard__integer__BT__TRT;
-end record;
-
-type std__standard__bit_vector__BOUNDP is access
- std__standard__bit_vector__BOUND;
-
-type std__standard__bit_vector is record
- BASE: std__standard__bit_vector__BASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-end record;
-
-type std__standard__bit_vector__PTR is access std__standard__bit_vector;
-
-type std__standard__bit_vector__SIG is record
- BASE: std__standard__bit_vector__SIGBASEP;
- BOUNDS: std__standard__bit_vector__BOUNDP;
-end record;
-
-type std__standard__bit_vector__SIGPTR is access std__standard__bit_vector__SIG
- ;
-
-external constant std__standard__bit_vector__BR1 :
- std__standard__bit_vector__BOUND;
-
-external function std__standard__bit_vector_EQ (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- return std__standard__boolean;
-
-external function std__standard__bit_vector_CMP (
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR)
- return __ghdl_compare_type;
-
-external procedure std__standard__bit_vector_CONCAT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_NOT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_AND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_OR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_NAND (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_NOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_XOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_XNOR (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__bit_vector__PTR);
-
-external procedure std__standard__bit_vector_SHL (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-external procedure std__standard__bit_vector_SHA (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-external procedure std__standard__bit_vector_ROT (
- res: std__standard__bit_vector__PTR;
- left: std__standard__bit_vector__PTR;
- right: std__standard__integer__BT);
-
-type std__standard__time__BT is signed (64);
-
-type std__standard__time__BT__PTR is access std__standard__time__BT;
-
-type std__standard__time__BT__SIG is access std__standard__time__BT;
-
-type std__standard__time__BT__TRT is record
- left: std__standard__time__BT;
- right: std__standard__time__BT;
- dir: __ghdl_dir_type;
-end record;
-
-type std__standard__time__BT__TRPTR is access std__standard__time__BT__TRT;
-
-external constant std__standard__time__STR : std__standard__time__BT__TRT;
-
-external constant std__standard__delay_length__STR :
- std__standard__time__BT__TRT;
-
-type std__standard__file_open_kind is enum {read_mode = 0, write_mode = 1,
- append_mode = 2};
-
-type std__standard__file_open_kind__PTR is access std__standard__file_open_kind
- ;
-
-type std__standard__file_open_kind__SIG is access std__standard__file_open_kind
- ;
-
-type std__standard__file_open_kind__TRT is record
- left: std__standard__file_open_kind;
- right: std__standard__file_open_kind;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__file_open_kind__TRPTR is access
- std__standard__file_open_kind__TRT;
-
-external constant std__standard__file_open_kind__BTR :
- std__standard__file_open_kind__TRT;
-
-type std__standard__file_open_status is enum {open_ok = 0, status_error = 1,
- name_error = 2, mode_error = 3};
-
-type std__standard__file_open_status__PTR is access
- std__standard__file_open_status;
-
-type std__standard__file_open_status__SIG is access
- std__standard__file_open_status;
-
-type std__standard__file_open_status__TRT is record
- left: std__standard__file_open_status;
- right: std__standard__file_open_status;
- dir: __ghdl_dir_type;
- length: __ghdl_index_type;
-end record;
-
-type std__standard__file_open_status__TRPTR is access
- std__standard__file_open_status__TRT;
-
-external constant std__standard__file_open_status__BTR :
- std__standard__file_open_status__TRT;
-
-external constant std__standard__RTI : __ghdl_rtin_block;
-
-external constant std__standard__boolean__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__bit__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__character__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__severity_level__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__UNIVERSAL_INTEGER__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-external constant std__standard__UNIVERSAL_INTEGER__RTI :
- __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__UNIVERSAL_REAL__BT__RTI :
- __ghdl_rtin_type_scalar;
-
-external constant std__standard__UNIVERSAL_REAL__RTI :
- __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__integer__BT__RTI : __ghdl_rtin_type_scalar;
-
-external constant std__standard__integer__RTI : __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__real__BT__RTI : __ghdl_rtin_type_scalar;
-
-external constant std__standard__real__RTI : __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__natural__RTI : __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__positive__RTI : __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__string__RTI : __ghdl_rtin_type_array;
-
-external constant std__standard__bit_vector__RTI : __ghdl_rtin_type_array;
-
-external constant std__standard__time__BT__RTI : __ghdl_rtin_type_physical;
-
-external constant std__standard__time__RTI : __ghdl_rtin_subtype_scalar;
-
-external constant std__standard__delay_length__RTI : __ghdl_rtin_subtype_scalar
- ;
-
-external constant std__standard__file_open_kind__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__file_open_status__RTI : __ghdl_rtin_type_enum;
-
-external constant std__standard__foreign__RTI : __ghdl_rtin_object;
-
-type __ghdl_std_ulogic_boolean_array_type is subarray
- std__standard__BOOLEAN_ARRAY[__ghdl_index_type'[9]];
-
-external constant __ghdl_std_ulogic_to_boolean_array :
- __ghdl_std_ulogic_boolean_array_type;
-
--- internal declarations, part 2
-
-external var __ghdl_now : std__standard__time__BT;
-
-external procedure __ghdl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr;
- unit: __ghdl_rti_access);
-
-external procedure __ghdl_psl_assert_failed (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr;
- unit: __ghdl_rti_access);
-
-external procedure __ghdl_report (
- msg: std__standard__string__PTR;
- severity: std__standard__severity_level;
- location: __ghdl_location_ptr;
- unit: __ghdl_rti_access);
-
-external var __ghdl_assert_default_report : std__standard__string;
-
-external procedure __ghdl_text_write (
- file: __ghdl_file_index;
- str: std__standard__string__PTR);
-
-external function __ghdl_text_read_length (
- file: __ghdl_file_index;
- str: std__standard__string__PTR)
- return std__standard__integer__BT;
-
-external procedure __ghdl_write_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-external procedure __ghdl_read_scalar (
- file: __ghdl_file_index;
- ptr: __ghdl_ptr;
- length: __ghdl_index_type);
-
-external function __ghdl_real_exp (
- left: std__standard__real__BT;
- right: std__standard__integer__BT)
- return std__standard__real__BT;
-
-external function __ghdl_integer_exp (
- left: std__standard__integer__BT;
- right: std__standard__integer__BT)
- return std__standard__integer__BT;
-
-external procedure __ghdl_image_b2 (
- res: std__standard__string__PTR;
- val: __ghdl_bool_type;
- rti: __ghdl_rti_access);
-
-external function __ghdl_value_b2 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- return __ghdl_bool_type;
-
-external procedure __ghdl_image_e8 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- rti: __ghdl_rti_access);
-
-external function __ghdl_value_e8 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- return __ghdl_i32;
-
-external procedure __ghdl_image_e32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- rti: __ghdl_rti_access);
-
-external function __ghdl_value_e32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- return __ghdl_i32;
-
-external procedure __ghdl_image_i32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32);
-
-external function __ghdl_value_i32 (
- val: std__standard__string__PTR)
- return __ghdl_i32;
-
-external procedure __ghdl_image_p32 (
- res: std__standard__string__PTR;
- val: __ghdl_i32;
- rti: __ghdl_rti_access);
-
-external function __ghdl_value_p32 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- return __ghdl_i32;
-
-external procedure __ghdl_image_p64 (
- res: std__standard__string__PTR;
- val: __ghdl_i64;
- rti: __ghdl_rti_access);
-
-external function __ghdl_value_p64 (
- val: std__standard__string__PTR;
- rti: __ghdl_rti_access)
- return __ghdl_i64;
-
-external procedure __ghdl_image_f64 (
- res: std__standard__string__PTR;
- val: __ghdl_real);
-
-external function __ghdl_value_f64 (
- val: std__standard__string__PTR)
- return __ghdl_real;
-
-external procedure __ghdl_text_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-external procedure __ghdl_file_open (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR);
-
-external function __ghdl_text_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- return __ghdl_i32;
-
-external function __ghdl_file_open_status (
- file: __ghdl_file_index;
- mode: __ghdl_i32;
- str: std__standard__string__PTR)
- return __ghdl_i32;
-
-external function __ghdl_file_endfile (
- file: __ghdl_file_index)
- return std__standard__boolean;
-
-external procedure __ghdl_text_file_close (
- file: __ghdl_file_index);
-
-external procedure __ghdl_file_close (
- file: __ghdl_file_index);
-
-external procedure __ghdl_signal_create_resolution (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- sig: __ghdl_ptr;
- nbr_sig: __ghdl_index_type);
-
-type __ghdl_scalar_bytes is subarray __ghdl_chararray[__ghdl_index_type'[8]];
-
-type __ghdl_signal_ptr is access;
-
-type __ghdl_signal is record
- value: __ghdl_scalar_bytes;
- driving_value: __ghdl_scalar_bytes;
- last_value: __ghdl_scalar_bytes;
- last_event: std__standard__time__BT;
- last_active: std__standard__time__BT;
- active_chain: __ghdl_signal_ptr;
- event: std__standard__boolean;
- active: std__standard__boolean;
- has_active: __ghdl_bool_type;
-end record;
-
-type __ghdl_signal_ptr is access __ghdl_signal;
-
-type __ghdl_signal_ptr_ptr is access __ghdl_signal_ptr;
-
-external var __ghdl_signal_active_chain : __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_merge_rti (
- sig: __ghdl_signal_ptr;
- RTI: __ghdl_rti_access);
-
-external procedure __ghdl_signal_add_source (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-external procedure __ghdl_signal_effective_value (
- targ: __ghdl_signal_ptr;
- src: __ghdl_signal_ptr);
-
-external procedure __ghdl_signal_set_disconnect (
- sig: __ghdl_signal_ptr;
- time: std__standard__time__BT);
-
-external procedure __ghdl_signal_disconnect (
- sig: __ghdl_signal_ptr);
-
-external function __ghdl_signal_get_nbr_drivers (
- sig: __ghdl_signal_ptr)
- return __ghdl_index_type;
-
-external function __ghdl_signal_get_nbr_ports (
- sig: __ghdl_signal_ptr)
- return __ghdl_index_type;
-
-external function __ghdl_signal_read_driver (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- return __ghdl_ptr;
-
-external function __ghdl_signal_read_port (
- sig: __ghdl_signal_ptr;
- num: __ghdl_index_type)
- return __ghdl_ptr;
-
-external function __ghdl_signal_driving (
- sig: __ghdl_signal_ptr)
- return std__standard__boolean;
-
-external procedure __ghdl_signal_simple_assign_error (
- sig: __ghdl_signal_ptr;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-external procedure __ghdl_signal_start_assign_error (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-external procedure __ghdl_signal_next_assign_error (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT;
- filename: __ghdl_char_ptr;
- line: __ghdl_i32);
-
-external procedure __ghdl_signal_start_assign_null (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_null (
- sig: __ghdl_signal_ptr;
- after: std__standard__time__BT);
-
-external function __ghdl_create_signal_e8 (
- init_val: __ghdl_i32;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_simple_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_start_assign_e8 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_e8 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external function __ghdl_signal_driving_value_e8 (
- sig: __ghdl_signal_ptr)
- return __ghdl_i32;
-
-external function __ghdl_create_signal_e32 (
- init_val: __ghdl_i32;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_simple_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_start_assign_e32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_e32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external function __ghdl_signal_driving_value_e32 (
- sig: __ghdl_signal_ptr)
- return __ghdl_i32;
-
-external function __ghdl_create_signal_b2 (
- init_val: __ghdl_bool_type;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_b2 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-external procedure __ghdl_signal_simple_assign_b2 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-external procedure __ghdl_signal_start_assign_b2 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_b2 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_b2 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_bool_type);
-
-external function __ghdl_signal_driving_value_b2 (
- sig: __ghdl_signal_ptr)
- return __ghdl_bool_type;
-
-external function __ghdl_create_signal_i32 (
- init_val: __ghdl_i32;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_simple_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external procedure __ghdl_signal_start_assign_i32 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_i32 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i32);
-
-external function __ghdl_signal_driving_value_i32 (
- sig: __ghdl_signal_ptr)
- return __ghdl_i32;
-
-external function __ghdl_create_signal_f64 (
- init_val: __ghdl_real;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-external procedure __ghdl_signal_simple_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-external procedure __ghdl_signal_start_assign_f64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_f64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_real);
-
-external function __ghdl_signal_driving_value_f64 (
- sig: __ghdl_signal_ptr)
- return __ghdl_real;
-
-external function __ghdl_create_signal_i64 (
- init_val: __ghdl_i64;
- resolv_func: __ghdl_ptr;
- resolv_inst: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_init_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-external procedure __ghdl_signal_simple_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-external procedure __ghdl_signal_start_assign_i64 (
- sig: __ghdl_signal_ptr;
- reject: std__standard__time__BT;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_next_assign_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64;
- after: std__standard__time__BT);
-
-external procedure __ghdl_signal_associate_i64 (
- sig: __ghdl_signal_ptr;
- val: __ghdl_i64);
-
-external function __ghdl_signal_driving_value_i64 (
- sig: __ghdl_signal_ptr)
- return __ghdl_i64;
-
-external procedure __ghdl_process_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-external procedure __ghdl_process_add_driver (
- sig: __ghdl_signal_ptr);
-
-external procedure __ghdl_signal_direct_driver (
- sig: __ghdl_signal_ptr;
- drv: __ghdl_ptr);
-
-external procedure __ghdl_signal_in_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-external procedure __ghdl_signal_out_conversion (
- func: __ghdl_ptr;
- INSTANCE: __ghdl_ptr;
- src: __ghdl_signal_ptr;
- src_len: __ghdl_index_type;
- dst: __ghdl_signal_ptr;
- dst_len: __ghdl_index_type);
-
-external function __ghdl_create_stable_signal (
- val: std__standard__time__BT)
- return __ghdl_signal_ptr;
-
-external function __ghdl_create_quiet_signal (
- val: std__standard__time__BT)
- return __ghdl_signal_ptr;
-
-external function __ghdl_create_transaction_signal (
- )
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_attribute_register_prefix (
- sig: __ghdl_signal_ptr);
-
-external function __ghdl_create_delayed_signal (
- sig: __ghdl_signal_ptr;
- val: std__standard__time__BT)
- return __ghdl_signal_ptr;
-
-external function __ghdl_signal_create_guard (
- this: __ghdl_ptr;
- proc: __ghdl_ptr)
- return __ghdl_signal_ptr;
-
-external procedure __ghdl_signal_guard_dependence (
- sig: __ghdl_signal_ptr);
-
-external procedure __ghdl_process_wait_exit (
- );
-
-external procedure __ghdl_process_wait_timeout (
- time: std__standard__time__BT);
-
-external procedure __ghdl_process_wait_set_timeout (
- time: std__standard__time__BT);
-
-external procedure __ghdl_process_wait_add_sensitivity (
- sig: __ghdl_signal_ptr);
-
-external function __ghdl_process_wait_suspend (
- )
- return __ghdl_bool_type;
-
-external procedure __ghdl_process_wait_close (
- );
-
-external procedure __ghdl_get_path_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-external procedure __ghdl_get_instance_name (
- res: std__standard__string__PTR;
- ctxt: __ghdl_rti_access;
- addr: __ghdl_ptr;
- name: __ghdl_str_len_ptr);
-
-private constant _UI00000000 : subarray __ghdl_chararray[__ghdl_index_type'[11]
- ];
-
-constant _UI00000000 := {__ghdl_char'[114], __ghdl_char'[101],
- __ghdl_char'[112], __ghdl_char'[114], __ghdl_char'[111], __ghdl_char'[46],
- __ghdl_char'[118], __ghdl_char'[104], __ghdl_char'[100], __ghdl_char'[108],
- __ghdl_char'[0]};
-
---F repro.vhdl
-
--- entity repro
-
-type work__repro__INSTTYPE is record;
-
-type work__repro__INSTPTR is access work__repro__INSTTYPE;
-
-type work__repro__INSTTYPE is record
- RTI: __ghdl_entity_link_type;
-end record;
-
-public procedure work__repro__ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-external constant work__RTI : __ghdl_rtin_type_scalar;
-
-public constant work__repro__RTI : __ghdl_rtin_block;
-
-private constant work__repro__RTISTR : subarray __ghdl_chararray[
- __ghdl_index_type'[6]];
-
-constant work__repro__RTISTR := {__ghdl_char'[114], __ghdl_char'[101],
- __ghdl_char'[112], __ghdl_char'[114], __ghdl_char'[111], __ghdl_char'[0]};
-
-private constant work__repro__RTIARRAY : subarray __ghdl_rti_array[
- __ghdl_index_type'[1]];
-
-constant work__repro__RTIARRAY := {__ghdl_rti_access'[null]};
-
-constant work__repro__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_entity], .depth = __ghdl_rti_depth'[1],
- .mode = __ghdl_rti_u8'[0], .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__RTISTR),
- .loc = {.address = __ghdl_ptr'[null]},
- .parent = __ghdl_rti_access'unchecked_address (work__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__INSTTYPE),
- .nbr_child = __ghdl_index_type'[0],
- .children = __ghdl_rti_arr_acc'address (work__repro__RTIARRAY)};
-
-public procedure work__repro__ELAB (
- INSTANCE: work__repro__INSTPTR)
-declare
-begin
- --# 1
- --# 1
-end;
-
---F repro.vhdl
-
--- architecture ghdl_bug
-
-type work__repro__ARCH__ghdl_bug__INSTTYPE is record;
-
-type work__repro__ARCH__ghdl_bug__INSTPTR is access
- work__repro__ARCH__ghdl_bug__INSTTYPE;
-
-type work__repro__ARCH__ghdl_bug__P0__INSTTYPE is record
-end record;
-
-type work__repro__ARCH__ghdl_bug__P1__INSTTYPE is record
-end record;
-
-type work__repro__ARCH__ghdl_bug__P2__INSTTYPE is record
-end record;
-
-type work__repro__ARCH__ghdl_bug__P3__INSTTYPE is record
-end record;
-
-type work__repro__ARCH__ghdl_bug__INSTTYPE is record
- ENTITY: work__repro__INSTTYPE;
- P0: work__repro__ARCH__ghdl_bug__P0__INSTTYPE;
- P1: work__repro__ARCH__ghdl_bug__P1__INSTTYPE;
- P2: work__repro__ARCH__ghdl_bug__P2__INSTTYPE;
- P3: work__repro__ARCH__ghdl_bug__P3__INSTTYPE;
-end record;
-
-public constant work__repro__ARCH__ghdl_bug__INSTSIZE : __ghdl_index_type;
-
-constant work__repro__ARCH__ghdl_bug__INSTSIZE := __ghdl_index_type'sizeof (
- work__repro__ARCH__ghdl_bug__INSTTYPE);
-
-public procedure work__repro__ARCH__ghdl_bug__ELAB (
- INSTANCE: work__repro__INSTPTR);
-
-public constant work__repro__ARCH__ghdl_bug__RTI : __ghdl_rtin_block;
-
-public constant work__repro__ARCH__ghdl_bug__P0__RTI : __ghdl_rtin_block;
-
-private constant work__repro__ARCH__ghdl_bug__P0__RTISTR : subarray
- __ghdl_chararray[__ghdl_index_type'[3]];
-
-constant work__repro__ARCH__ghdl_bug__P0__RTISTR := {__ghdl_char'[80],
- __ghdl_char'[48], __ghdl_char'[0]};
-
-private constant work__repro__ARCH__ghdl_bug__P0__RTIARRAY : subarray
- __ghdl_rti_array[__ghdl_index_type'[1]];
-
-constant work__repro__ARCH__ghdl_bug__P0__RTIARRAY :=
- {__ghdl_rti_access'[null]};
-
-constant work__repro__ARCH__ghdl_bug__P0__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_process], .depth = __ghdl_rti_depth'[2],
- .mode = __ghdl_rti_u8'[0], .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__ARCH__ghdl_bug__P0__RTISTR),
- .loc = {.offset = __ghdl_index_type'offsetof (
- work__repro__ARCH__ghdl_bug__INSTTYPE.P0)},
- .parent = __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__ghdl_bug__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__ARCH__ghdl_bug__P0__INSTTYPE)
- , .nbr_child = __ghdl_index_type'[0],
- .children = __ghdl_rti_arr_acc'address (
- work__repro__ARCH__ghdl_bug__P0__RTIARRAY)};
-
-public constant work__repro__ARCH__ghdl_bug__P1__RTI : __ghdl_rtin_block;
-
-private constant work__repro__ARCH__ghdl_bug__P1__RTISTR : subarray
- __ghdl_chararray[__ghdl_index_type'[3]];
-
-constant work__repro__ARCH__ghdl_bug__P1__RTISTR := {__ghdl_char'[80],
- __ghdl_char'[49], __ghdl_char'[0]};
-
-private constant work__repro__ARCH__ghdl_bug__P1__RTIARRAY : subarray
- __ghdl_rti_array[__ghdl_index_type'[1]];
-
-constant work__repro__ARCH__ghdl_bug__P1__RTIARRAY :=
- {__ghdl_rti_access'[null]};
-
-constant work__repro__ARCH__ghdl_bug__P1__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_process], .depth = __ghdl_rti_depth'[2],
- .mode = __ghdl_rti_u8'[0], .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__ARCH__ghdl_bug__P1__RTISTR),
- .loc = {.offset = __ghdl_index_type'offsetof (
- work__repro__ARCH__ghdl_bug__INSTTYPE.P1)},
- .parent = __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__ghdl_bug__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__ARCH__ghdl_bug__P1__INSTTYPE)
- , .nbr_child = __ghdl_index_type'[0],
- .children = __ghdl_rti_arr_acc'address (
- work__repro__ARCH__ghdl_bug__P1__RTIARRAY)};
-
-public constant work__repro__ARCH__ghdl_bug__P2__RTI : __ghdl_rtin_block;
-
-private constant work__repro__ARCH__ghdl_bug__P2__RTISTR : subarray
- __ghdl_chararray[__ghdl_index_type'[3]];
-
-constant work__repro__ARCH__ghdl_bug__P2__RTISTR := {__ghdl_char'[80],
- __ghdl_char'[50], __ghdl_char'[0]};
-
-private constant work__repro__ARCH__ghdl_bug__P2__RTIARRAY : subarray
- __ghdl_rti_array[__ghdl_index_type'[1]];
-
-constant work__repro__ARCH__ghdl_bug__P2__RTIARRAY :=
- {__ghdl_rti_access'[null]};
-
-constant work__repro__ARCH__ghdl_bug__P2__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_process], .depth = __ghdl_rti_depth'[2],
- .mode = __ghdl_rti_u8'[0], .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__ARCH__ghdl_bug__P2__RTISTR),
- .loc = {.offset = __ghdl_index_type'offsetof (
- work__repro__ARCH__ghdl_bug__INSTTYPE.P2)},
- .parent = __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__ghdl_bug__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__ARCH__ghdl_bug__P2__INSTTYPE)
- , .nbr_child = __ghdl_index_type'[0],
- .children = __ghdl_rti_arr_acc'address (
- work__repro__ARCH__ghdl_bug__P2__RTIARRAY)};
-
-public constant work__repro__ARCH__ghdl_bug__P3__RTI : __ghdl_rtin_block;
-
-private constant work__repro__ARCH__ghdl_bug__P3__RTISTR : subarray
- __ghdl_chararray[__ghdl_index_type'[3]];
-
-constant work__repro__ARCH__ghdl_bug__P3__RTISTR := {__ghdl_char'[80],
- __ghdl_char'[51], __ghdl_char'[0]};
-
-private constant work__repro__ARCH__ghdl_bug__P3__RTIARRAY : subarray
- __ghdl_rti_array[__ghdl_index_type'[1]];
-
-constant work__repro__ARCH__ghdl_bug__P3__RTIARRAY :=
- {__ghdl_rti_access'[null]};
-
-constant work__repro__ARCH__ghdl_bug__P3__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_process], .depth = __ghdl_rti_depth'[2],
- .mode = __ghdl_rti_u8'[0], .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__ARCH__ghdl_bug__P3__RTISTR),
- .loc = {.offset = __ghdl_index_type'offsetof (
- work__repro__ARCH__ghdl_bug__INSTTYPE.P3)},
- .parent = __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__ghdl_bug__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__ARCH__ghdl_bug__P3__INSTTYPE)
- , .nbr_child = __ghdl_index_type'[0],
- .children = __ghdl_rti_arr_acc'address (
- work__repro__ARCH__ghdl_bug__P3__RTIARRAY)};
-
-private constant work__repro__ARCH__ghdl_bug__RTISTR : subarray
- __ghdl_chararray[__ghdl_index_type'[9]];
-
-constant work__repro__ARCH__ghdl_bug__RTISTR := {__ghdl_char'[103],
- __ghdl_char'[104], __ghdl_char'[100], __ghdl_char'[108], __ghdl_char'[95],
- __ghdl_char'[98], __ghdl_char'[117], __ghdl_char'[103], __ghdl_char'[0]};
-
-private constant work__repro__ARCH__ghdl_bug__RTIARRAY : subarray
- __ghdl_rti_array[__ghdl_index_type'[5]];
-
-constant work__repro__ARCH__ghdl_bug__RTIARRAY :=
- {__ghdl_rti_access'unchecked_address (work__repro__ARCH__ghdl_bug__P0__RTI),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__ghdl_bug__P1__RTI),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__ghdl_bug__P2__RTI),
- __ghdl_rti_access'unchecked_address (work__repro__ARCH__ghdl_bug__P3__RTI),
- __ghdl_rti_access'[null]};
-
-constant work__repro__ARCH__ghdl_bug__RTI := {.common =
- {.kind = __ghdl_rtik'[__ghdl_rtik_architecture],
- .depth = __ghdl_rti_depth'[1], .mode = __ghdl_rti_u8'[0],
- .max_depth = __ghdl_rti_depth'[0]},
- .name = __ghdl_char_ptr'address (work__repro__ARCH__ghdl_bug__RTISTR),
- .loc = {.offset = __ghdl_index_type'offsetof (
- work__repro__ARCH__ghdl_bug__INSTTYPE.ENTITY)},
- .parent = __ghdl_rti_access'unchecked_address (work__repro__RTI),
- .size = __ghdl_index_type'sizeof (work__repro__ARCH__ghdl_bug__INSTTYPE),
- .nbr_child = __ghdl_index_type'[4],
- .children = __ghdl_rti_arr_acc'address (work__repro__ARCH__ghdl_bug__RTIARRAY
- )};
-
-
-private procedure work__repro__ARCH__ghdl_bug__P0__PROC (
- INSTANCE: work__repro__ARCH__ghdl_bug__INSTPTR)
-declare
- type work__repro__ARCH__ghdl_bug__P0__U0 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI00000001 : work__repro__ARCH__ghdl_bug__P0__U0;
- constant _UI00000001 := {};
- private constant work__repro__ARCH__ghdl_bug__P0__U1__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P0__U1__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4], .dir = __ghdl_dir_type'[dir_to],
- .length = __ghdl_index_type'[5]}};
-begin
- --# 7
- declare
- local var T0_0 : std__standard__bit_vector;
- type work__repro__ARCH__ghdl_bug__P0__U2 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI00000002 : work__repro__ARCH__ghdl_bug__P0__U2;
- constant _UI00000002 := {std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_0], std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P0__U3__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P0__U3__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[5]}};
- local var T0_1 : std__standard__bit_vector;
- private constant _UI00000003 : __ghdl_location;
- constant _UI00000003 :=
- {.filename = __ghdl_char_ptr'address (_UI00000000),
- .line = __ghdl_i32'[7], .col = __ghdl_i32'[3]};
- type work__repro__ARCH__ghdl_bug__P0__U4 is subarray
- std__standard__string__BASE[__ghdl_index_type'[16]];
- private constant _UI00000004 : work__repro__ARCH__ghdl_bug__P0__U4;
- constant _UI00000004 := {std__standard__character'[C_r],
- std__standard__character'[C_o], std__standard__character'[C_r],
- std__standard__character'[C20], std__standard__character'[C20],
- std__standard__character'[C_5], std__standard__character'[C20],
- std__standard__character'[C_i], std__standard__character'[C_s],
- std__standard__character'[C20], std__standard__character'[C_b],
- std__standard__character'[C_r], std__standard__character'[C_o],
- std__standard__character'[C_k], std__standard__character'[C_e],
- std__standard__character'[C_n]};
- private constant work__repro__ARCH__ghdl_bug__P0__U5__STB :
- std__standard__string__BOUND;
- constant work__repro__ARCH__ghdl_bug__P0__U5__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[1],
- .right = std__standard__integer__BT'[16],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[16]}};
- begin
- T0_0.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI00000001));
- T0_0.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P0__U1__STB);
- T0_1.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI00000002));
- T0_1.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P0__U3__STB);
- if not std__standard__bit_vector_EQ (std__standard__bit_vector__PTR
- 'address (T0_0), std__standard__bit_vector__PTR'address (T0_1)) then
- declare
- local var T1_0 : std__standard__string;
- begin
- T1_0.BASE := std__standard__string__BASEP'conv (
- std__standard__string__BASEP'address (_UI00000004));
- T1_0.BOUNDS := std__standard__string__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P0__U5__STB);
- __ghdl_assert_failed (std__standard__string__PTR'address (T1_0),
- std__standard__severity_level'[warning], __ghdl_location_ptr
- 'address (_UI00000003), __ghdl_rti_access'[null]);
- end;
- end if;
- end;
-end;
-
-
-private procedure work__repro__ARCH__ghdl_bug__P1__PROC (
- INSTANCE: work__repro__ARCH__ghdl_bug__INSTPTR)
-declare
- type work__repro__ARCH__ghdl_bug__P1__U0 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI00000005 : work__repro__ARCH__ghdl_bug__P1__U0;
- constant _UI00000005 := {std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_0],
- std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P1__U1__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P1__U1__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4], .dir = __ghdl_dir_type'[dir_to],
- .length = __ghdl_index_type'[5]}};
-begin
- --# 8
- declare
- local var T0_0 : std__standard__bit_vector;
- local var T0_1 : __ghdl_ptr;
- local var T0_2 : std__standard__bit_vector;
- type work__repro__ARCH__ghdl_bug__P1__U2 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI00000006 : work__repro__ARCH__ghdl_bug__P1__U2;
- constant _UI00000006 := {std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_0], std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P1__U3__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P1__U3__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[5]}};
- local var T0_3 : std__standard__bit_vector;
- private constant _UI00000007 : __ghdl_location;
- constant _UI00000007 :=
- {.filename = __ghdl_char_ptr'address (_UI00000000),
- .line = __ghdl_i32'[8], .col = __ghdl_i32'[3]};
- type work__repro__ARCH__ghdl_bug__P1__U4 is subarray
- std__standard__string__BASE[__ghdl_index_type'[17]];
- private constant _UI00000008 : work__repro__ARCH__ghdl_bug__P1__U4;
- constant _UI00000008 := {std__standard__character'[C_r],
- std__standard__character'[C_o], std__standard__character'[C_r],
- std__standard__character'[C20], std__standard__character'[C20],
- std__standard__character'[C_5], std__standard__character'[C20],
- std__standard__character'[C_i], std__standard__character'[C_s],
- std__standard__character'[C20], std__standard__character'[C_b],
- std__standard__character'[C_r], std__standard__character'[C_o],
- std__standard__character'[C_k], std__standard__character'[C_e],
- std__standard__character'[C_n], std__standard__character'[C20]};
- private constant work__repro__ARCH__ghdl_bug__P1__U5__STB :
- std__standard__string__BOUND;
- constant work__repro__ARCH__ghdl_bug__P1__U5__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[1],
- .right = std__standard__integer__BT'[17],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[17]}};
- begin
- T0_0.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI00000005));
- T0_0.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P1__U1__STB);
- T0_1 := __ghdl_stack2_mark ();
- std__standard__bit_vector_ROT (std__standard__bit_vector__PTR'address (T0_2
- ), std__standard__bit_vector__PTR'address (T0_0),
- std__standard__integer__BT'[5]);
- T0_3.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI00000006));
- T0_3.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P1__U3__STB);
- if not std__standard__bit_vector_EQ (std__standard__bit_vector__PTR
- 'address (T0_2), std__standard__bit_vector__PTR'address (T0_3)) then
- declare
- local var T1_0 : std__standard__string;
- begin
- T1_0.BASE := std__standard__string__BASEP'conv (
- std__standard__string__BASEP'address (_UI00000008));
- T1_0.BOUNDS := std__standard__string__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P1__U5__STB);
- __ghdl_assert_failed (std__standard__string__PTR'address (T1_0),
- std__standard__severity_level'[warning], __ghdl_location_ptr
- 'address (_UI00000007), __ghdl_rti_access'[null]);
- end;
- end if;
- __ghdl_stack2_release (T0_1);
- end;
-end;
-
-
-private procedure work__repro__ARCH__ghdl_bug__P2__PROC (
- INSTANCE: work__repro__ARCH__ghdl_bug__INSTPTR)
-declare
- type work__repro__ARCH__ghdl_bug__P2__U0 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI00000009 : work__repro__ARCH__ghdl_bug__P2__U0;
- constant _UI00000009 := {};
- private constant work__repro__ARCH__ghdl_bug__P2__U1__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P2__U1__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4], .dir = __ghdl_dir_type'[dir_to],
- .length = __ghdl_index_type'[5]}};
-begin
- --# 10
- declare
- local var T0_0 : std__standard__bit_vector;
- type work__repro__ARCH__ghdl_bug__P2__U2 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI0000000a : work__repro__ARCH__ghdl_bug__P2__U2;
- constant _UI0000000a := {std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_0], std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P2__U3__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P2__U3__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[5]}};
- local var T0_1 : std__standard__bit_vector;
- private constant _UI0000000b : __ghdl_location;
- constant _UI0000000b :=
- {.filename = __ghdl_char_ptr'address (_UI00000000),
- .line = __ghdl_i32'[10], .col = __ghdl_i32'[3]};
- type work__repro__ARCH__ghdl_bug__P2__U4 is subarray
- std__standard__string__BASE[__ghdl_index_type'[16]];
- private constant _UI0000000c : work__repro__ARCH__ghdl_bug__P2__U4;
- constant _UI0000000c := {std__standard__character'[C_r],
- std__standard__character'[C_o], std__standard__character'[C_l],
- std__standard__character'[C20], std__standard__character'[C2d],
- std__standard__character'[C_5], std__standard__character'[C20],
- std__standard__character'[C_i], std__standard__character'[C_s],
- std__standard__character'[C20], std__standard__character'[C_b],
- std__standard__character'[C_r], std__standard__character'[C_o],
- std__standard__character'[C_k], std__standard__character'[C_e],
- std__standard__character'[C_n]};
- private constant work__repro__ARCH__ghdl_bug__P2__U5__STB :
- std__standard__string__BOUND;
- constant work__repro__ARCH__ghdl_bug__P2__U5__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[1],
- .right = std__standard__integer__BT'[16],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[16]}};
- begin
- T0_0.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI00000009));
- T0_0.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P2__U1__STB);
- T0_1.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI0000000a));
- T0_1.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P2__U3__STB);
- if not std__standard__bit_vector_EQ (std__standard__bit_vector__PTR
- 'address (T0_0), std__standard__bit_vector__PTR'address (T0_1)) then
- declare
- local var T1_0 : std__standard__string;
- begin
- T1_0.BASE := std__standard__string__BASEP'conv (
- std__standard__string__BASEP'address (_UI0000000c));
- T1_0.BOUNDS := std__standard__string__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P2__U5__STB);
- __ghdl_assert_failed (std__standard__string__PTR'address (T1_0),
- std__standard__severity_level'[warning], __ghdl_location_ptr
- 'address (_UI0000000b), __ghdl_rti_access'[null]);
- end;
- end if;
- end;
-end;
-
-
-private procedure work__repro__ARCH__ghdl_bug__P3__PROC (
- INSTANCE: work__repro__ARCH__ghdl_bug__INSTPTR)
-declare
- type work__repro__ARCH__ghdl_bug__P3__U0 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI0000000d : work__repro__ARCH__ghdl_bug__P3__U0;
- constant _UI0000000d := {std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_0],
- std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P3__U1__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P3__U1__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4], .dir = __ghdl_dir_type'[dir_to],
- .length = __ghdl_index_type'[5]}};
-begin
- --# 11
- declare
- local var T0_0 : std__standard__bit_vector;
- local var T0_1 : __ghdl_ptr;
- local var T0_2 : std__standard__bit_vector;
- type work__repro__ARCH__ghdl_bug__P3__U2 is subarray
- std__standard__bit_vector__BASE[__ghdl_index_type'[5]];
- private constant _UI0000000e : work__repro__ARCH__ghdl_bug__P3__U2;
- constant _UI0000000e := {std__standard__bit'[C_1],
- std__standard__bit'[C_1], std__standard__bit'[C_1],
- std__standard__bit'[C_0], std__standard__bit'[C_0]};
- private constant work__repro__ARCH__ghdl_bug__P3__U3__STB :
- std__standard__bit_vector__BOUND;
- constant work__repro__ARCH__ghdl_bug__P3__U3__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[0],
- .right = std__standard__integer__BT'[4],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[5]}};
- local var T0_3 : std__standard__bit_vector;
- private constant _UI0000000f : __ghdl_location;
- constant _UI0000000f :=
- {.filename = __ghdl_char_ptr'address (_UI00000000),
- .line = __ghdl_i32'[11], .col = __ghdl_i32'[3]};
- type work__repro__ARCH__ghdl_bug__P3__U4 is subarray
- std__standard__string__BASE[__ghdl_index_type'[17]];
- private constant _UI00000010 : work__repro__ARCH__ghdl_bug__P3__U4;
- constant _UI00000010 := {std__standard__character'[C_r],
- std__standard__character'[C_o], std__standard__character'[C_l],
- std__standard__character'[C20], std__standard__character'[C2d],
- std__standard__character'[C_5], std__standard__character'[C20],
- std__standard__character'[C_i], std__standard__character'[C_s],
- std__standard__character'[C20], std__standard__character'[C_b],
- std__standard__character'[C_r], std__standard__character'[C_o],
- std__standard__character'[C_k], std__standard__character'[C_e],
- std__standard__character'[C_n], std__standard__character'[C20]};
- private constant work__repro__ARCH__ghdl_bug__P3__U5__STB :
- std__standard__string__BOUND;
- constant work__repro__ARCH__ghdl_bug__P3__U5__STB := {.dim_1 =
- {.left = std__standard__integer__BT'[1],
- .right = std__standard__integer__BT'[17],
- .dir = __ghdl_dir_type'[dir_to], .length = __ghdl_index_type'[17]}};
- begin
- T0_0.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI0000000d));
- T0_0.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P3__U1__STB);
- T0_1 := __ghdl_stack2_mark ();
- std__standard__bit_vector_ROT (std__standard__bit_vector__PTR'address (T0_2
- ), std__standard__bit_vector__PTR'address (T0_0), -
- std__standard__integer__BT'[-5]);
- T0_3.BASE := std__standard__bit_vector__BASEP'conv (
- std__standard__bit_vector__BASEP'address (_UI0000000e));
- T0_3.BOUNDS := std__standard__bit_vector__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P3__U3__STB);
- if not std__standard__bit_vector_EQ (std__standard__bit_vector__PTR
- 'address (T0_2), std__standard__bit_vector__PTR'address (T0_3)) then
- declare
- local var T1_0 : std__standard__string;
- begin
- T1_0.BASE := std__standard__string__BASEP'conv (
- std__standard__string__BASEP'address (_UI00000010));
- T1_0.BOUNDS := std__standard__string__BOUNDP'address (
- work__repro__ARCH__ghdl_bug__P3__U5__STB);
- __ghdl_assert_failed (std__standard__string__PTR'address (T1_0),
- std__standard__severity_level'[warning], __ghdl_location_ptr
- 'address (_UI0000000f), __ghdl_rti_access'[null]);
- end;
- end if;
- __ghdl_stack2_release (T0_1);
- end;
-end;
-
-public procedure work__repro__ARCH__ghdl_bug__ELAB (
- INSTANCE: work__repro__INSTPTR)
-declare
- local var ARCH_INSTANCE : work__repro__ARCH__ghdl_bug__INSTPTR;
-begin
- ARCH_INSTANCE := work__repro__ARCH__ghdl_bug__INSTPTR'conv (INSTANCE);
- INSTANCE.all.RTI.rti := __ghdl_rti_access'unchecked_address (
- work__repro__ARCH__ghdl_bug__RTI);
- work__repro__ELAB (INSTANCE);
- --# 4
- --# 4
- --# 7
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.all), __ghdl_ptr'subprg_addr (
- work__repro__ARCH__ghdl_bug__P0__PROC), __ghdl_rti_access
- 'unchecked_address (work__repro__ARCH__ghdl_bug__P0__RTI), __ghdl_ptr
- 'unchecked_address (ARCH_INSTANCE.all.P0));
- --# 8
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.all), __ghdl_ptr'subprg_addr (
- work__repro__ARCH__ghdl_bug__P1__PROC), __ghdl_rti_access
- 'unchecked_address (work__repro__ARCH__ghdl_bug__P1__RTI), __ghdl_ptr
- 'unchecked_address (ARCH_INSTANCE.all.P1));
- --# 10
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.all), __ghdl_ptr'subprg_addr (
- work__repro__ARCH__ghdl_bug__P2__PROC), __ghdl_rti_access
- 'unchecked_address (work__repro__ARCH__ghdl_bug__P2__RTI), __ghdl_ptr
- 'unchecked_address (ARCH_INSTANCE.all.P2));
- --# 11
- __ghdl_sensitized_process_register (__ghdl_ptr'unchecked_address (
- ARCH_INSTANCE.all), __ghdl_ptr'subprg_addr (
- work__repro__ARCH__ghdl_bug__P3__PROC), __ghdl_rti_access
- 'unchecked_address (work__repro__ARCH__ghdl_bug__P3__RTI), __ghdl_ptr
- 'unchecked_address (ARCH_INSTANCE.all.P3));
-end;
-