From 70c44f934b5828b9ca435c31ed77052f1c9d3c11 Mon Sep 17 00:00:00 2001 From: Alexander Senier Date: Wed, 20 Feb 2019 14:21:24 +0100 Subject: [PATCH] Port libsparkcrypto test cases --- lib/import/import-libsparkcryptofat.mk | 1 + lib/mk/ada.mk | 9 +- lib/mk/libsparkcryptofat.mk | 2 + lib/symbols/ada | 848 ++++++++++-------- lib/symbols/libsparkcryptofat | 326 +++++++ run/test-libsparkcrypto.run | 72 ++ .../libsparkcrypto/lsc_internal_benchmark.adb | 64 ++ src/test/libsparkcrypto/startup.cc | 14 + src/test/libsparkcrypto/target.mk | 44 + 9 files changed, 990 insertions(+), 390 deletions(-) create mode 100644 lib/import/import-libsparkcryptofat.mk create mode 100644 lib/mk/libsparkcryptofat.mk create mode 100644 lib/symbols/libsparkcryptofat create mode 100644 run/test-libsparkcrypto.run create mode 100644 src/test/libsparkcrypto/lsc_internal_benchmark.adb create mode 100644 src/test/libsparkcrypto/startup.cc create mode 100644 src/test/libsparkcrypto/target.mk diff --git a/lib/import/import-libsparkcryptofat.mk b/lib/import/import-libsparkcryptofat.mk new file mode 100644 index 0000000..97027ad --- /dev/null +++ b/lib/import/import-libsparkcryptofat.mk @@ -0,0 +1 @@ +include $(call select_from_repositories,lib/import/import-libsparkcrypto.mk) diff --git a/lib/mk/ada.mk b/lib/mk/ada.mk index 56321e3..4f11716 100644 --- a/lib/mk/ada.mk +++ b/lib/mk/ada.mk @@ -10,7 +10,8 @@ SRC_C += \ posix_common.c \ posix_fat.c -SRC_ADS += system.ads \ +SRC_ADS += \ + system.ads \ s-soflin.ads \ s-imgint.ads \ s-stoele.ads \ @@ -25,9 +26,10 @@ SRC_ADS += system.ads \ ada.ads \ g-souinf.ads \ g-trasym.ads \ - s-unstyp.ads + s-unstyp.ads \ -SRC_ADB += g-io.adb \ +SRC_ADB += \ + g-io.adb \ a-except.adb \ a-tags.adb \ a-finali.adb \ @@ -94,6 +96,7 @@ vpath platform.% $(ADA_RUNTIME_LIB_DIR) vpath string_utils.% $(ADA_RUNTIME_LIB_DIR) vpath ss_utils.% $(ADA_RUNTIME_LIB_DIR) vpath a-except.adb $(ADA_RUNTIME_DIR) +vpath s-osprim.adb $(ADA_RUNTIME_DIR) vpath %.c $(ADA_RUNTIME_PLATFORM_DIR) vpath %.ads $(ADA_RTS_SOURCE) diff --git a/lib/mk/libsparkcryptofat.mk b/lib/mk/libsparkcryptofat.mk new file mode 100644 index 0000000..c2fadd3 --- /dev/null +++ b/lib/mk/libsparkcryptofat.mk @@ -0,0 +1,2 @@ +LSC_RUNTIME := ada +include $(call select_from_repositories,lib/mk/libsparkcrypto.inc) diff --git a/lib/symbols/ada b/lib/symbols/ada index 2ca0e10..bc700f0 100644 --- a/lib/symbols/ada +++ b/lib/symbols/ada @@ -1,3 +1,330 @@ +_abort_signal D 40 +ada__calendar__ada_high_and_leaps R 8 +ada__calendar__ada_high R 8 +ada__calendar__ada_low R 8 +ada__calendar__ada_min_year R 4 +ada__calendar__arithmetic_operations__add T +ada__calendar__arithmetic_operations__difference T +ada__calendar__arithmetic_operations__subtract T +ada__calendar__check_within_time_bounds T +ada__calendar__clock T +ada__calendar__conversion_operations__to_ada_time__2 T +ada__calendar__conversion_operations__to_ada_time T +ada__calendar__conversion_operations__to_duration T +ada__calendar__conversion_operations__to_struct_timespec T +ada__calendar__conversion_operations__to_struct_tm T +ada__calendar__conversion_operations__to_unix_time T +ada__calendar__cumulative_days_before_month R 48 +ada__calendar__cumulative_leap_seconds T +ada__calendar__days_in_month R 48 +ada__calendar__day T +ada__calendar__delay_operations__to_duration T +ada__calendar_E D 2 +ada__calendar___elabb T +ada__calendar___elabs T +ada__calendar__end_of_time R 8 +ada__calendar__epoch_offset R 8 +ada__calendar__formatting_operations__day_of_week T +ada__calendar__is_leap T +ada__calendar__leap_seconds_count R 4 +ada__calendar__leap_second_times R 200 +ada__calendar__leap_support B 1 +ada__calendar__month T +ada__calendar__Oadd__2 T +ada__calendar__Oadd T +ada__calendar__Oge T +ada__calendar__Ogt T +ada__calendar__Ole T +ada__calendar__Olt T +ada__calendar__Osubtract__2 T +ada__calendar__Osubtract T +ada__calendar__R2s D 8 +ada__calendar__seconds T +ada__calendar__split T +ada__calendar__start_of_time R 8 +ada__calendar__time_error D 40 +ada__calendar__time_errorE R 24 +ada__calendar__time_of T +ada__calendar__time_zones_operations__utc_time_offset T +ada__calendar__unix_max R 8 +ada__calendar__unix_min R 8 +ada__calendar__utc_time_offset T +ada__calendar__year T +ada_E D 2 +ada__exceptions__counter R 4 +ada__exceptions_E D 2 +ada__exceptions__eid_to_string T +ada__exceptions__eo_to_string T +ada__exceptions__exception_data__append_info_addressXn T +ada__exceptions__exception_data__append_info_basic_exception_informationXn T +ada__exceptions__exception_data__append_info_characterXn T +ada__exceptions__exception_data__append_info_exception_name__2Xn T +ada__exceptions__exception_data__append_info_exception_nameXn T +ada__exceptions__exception_data__append_info_natXn T +ada__exceptions__exception_data__append_info_nlXn T +ada__exceptions__exception_data__append_info_stringXn T +ada__exceptions__exception_data__append_info_untailored_exception_tracebackXn T +ada__exceptions__exception_data__basic_exception_info_maxlengthXn T +ada__exceptions__exception_data__bei_msg_headerXn R 4 +ada__exceptions__exception_data__bei_name_headerXn R 8 +ada__exceptions__exception_data__bei_pid_headerXn R 8 +ada__exceptions__exception_data__betb_headerXn R 31 +ada__exceptions__exception_data__exception_info_maxlengthXn T +ada__exceptions__exception_data__exception_informationXn T +ada__exceptions__exception_data__exception_name_length__2Xn T +ada__exceptions__exception_data__exception_name_lengthXn T +ada__exceptions__exception_data__ldad_headerXn R 16 +ada__exceptions__exception_data__set_exception_c_msgXn T +ada__exceptions__exception_data__set_exception_msgXn T +ada__exceptions__exception_data__tailored_exception_tracebackXn T +ada__exceptions__exception_data__untailored_exception_informationXn T +ada__exceptions__exception_data__untailored_exception_traceback_maxlengthXn T +ada__exceptions__exception_data__untailored_exception_tracebackXn T +ada__exceptions__exception_identity T +ada__exceptions__exception_information T +ada__exceptions__exception_message T +ada__exceptions__exception_name__2 T +ada__exceptions__exception_name_simple T +ada__exceptions__exception_name T +ada__exceptions__exception_occurrenceIP T +ada__exceptions__exception_traces__nlineXn R 1 +ada__exceptions__exception_traces__notify_exceptionXn T +ada__exceptions__exception_traces__unhandled_exception_terminateXn T +ada__exceptions__last_chance_handler_E D 2 +ada__exceptions__null_id R 8 +ada__exceptions__null_loc R 8 +ada__exceptions__null_occurrence R 632 +ada__exceptions__poll T +ada__exceptions__process_raise_exception T +ada__exceptions__raise_exception_no_defer T +ada__exceptions__raise_exception T +ada__exceptions__raise_from_signal_handler T +ada__exceptions__raise_with_location_and_msg T +ada__exceptions__reraise_occurrence_always T +ada__exceptions__reraise_occurrence_no_defer T +ada__exceptions__reraise_occurrence T +ada__exceptions__rmsg_00 R 20 +ada__exceptions__rmsg_01 R 25 +ada__exceptions__rmsg_02 R 26 +ada__exceptions__rmsg_03 R 16 +ada__exceptions__rmsg_04 R 16 +ada__exceptions__rmsg_05 R 19 +ada__exceptions__rmsg_06 R 16 +ada__exceptions__rmsg_07 R 20 +ada__exceptions__rmsg_08 R 18 +ada__exceptions__rmsg_09 R 28 +ada__exceptions__rmsg_10 R 22 +ada__exceptions__rmsg_11 R 23 +ada__exceptions__rmsg_12 R 19 +ada__exceptions__rmsg_13 R 17 +ada__exceptions__rmsg_14 R 26 +ada__exceptions__rmsg_15 R 27 +ada__exceptions__rmsg_16 R 48 +ada__exceptions__rmsg_17 R 19 +ada__exceptions__rmsg_18 R 18 +ada__exceptions__rmsg_19 R 47 +ada__exceptions__rmsg_20 R 38 +ada__exceptions__rmsg_21 R 25 +ada__exceptions__rmsg_22 R 16 +ada__exceptions__rmsg_23 R 33 +ada__exceptions__rmsg_24 R 31 +ada__exceptions__rmsg_25 R 25 +ada__exceptions__rmsg_26 R 16 +ada__exceptions__rmsg_27 R 27 +ada__exceptions__rmsg_28 R 31 +ada__exceptions__rmsg_29 R 26 +ada__exceptions__rmsg_30 R 28 +ada__exceptions__rmsg_31 R 51 +ada__exceptions__rmsg_32 R 19 +ada__exceptions__rmsg_33 R 16 +ada__exceptions__rmsg_34 R 19 +ada__exceptions__rmsg_35 R 17 +ada__exceptions__rmsg_36 R 29 +ada__exceptions__save_occurrence__2 T +ada__exceptions__save_occurrence T +ada__exceptions__stream_attributes__eid_to_stringXn T +ada__exceptions__stream_attributes__eo_to_stringXn T +ada__exceptions__stream_attributes__string_to_eidXn T +ada__exceptions__stream_attributes__string_to_eoXn T +ada__exceptions__string_to_eid T +ada__exceptions__string_to_eo T +ada__exceptions__triggered_by_abort T +ada__finalization__adjust T +ada__finalization___assign__3 T +ada__finalization__controlledB46s D 88 +ada__finalization__controlledDA__2 T +ada__finalization__controlledDF__2 T +ada__finalization__controlledE42s R 28 +ada__finalization__controlledFD T +ada__finalization__controlledH43s D 8 +ada__finalization__controlledIP T +ada__finalization__controlledP D 8 +ada__finalization__controlledR44s D 8 +ada__finalization__controlledR44s___UNC D 80 +ada__finalization__controlledSO__2 T +ada__finalization__controlledSR__2 T +ada__finalization__controlledSW__2 T +ada__finalization__controlledT D 56 +ada__finalization__controlledY D 8 +ada__finalization_E D 2 +ada__finalization___elabs T +ada__finalization__finalize__2 T +ada__finalization__finalize T +ada__finalization__initialize__2 T +ada__finalization__initialize T +ada__finalization__limited_controlledB79s D 88 +ada__finalization__limited_controlledDF__2 T +ada__finalization__limited_controlledE75s R 36 +ada__finalization__limited_controlledFD T +ada__finalization__limited_controlledH76s D 8 +ada__finalization__limited_controlledIP T +ada__finalization__limited_controlledP D 8 +ada__finalization__limited_controlledR77s D 8 +ada__finalization__limited_controlledR77s___UNC D 80 +ada__finalization__limited_controlledT D 56 +ada__finalization__limited_controlledY D 8 +ada__finalization__Oeq__3 T +ada__finalization___size__3 T +ada__finalization___size__4 T +ada__finalization__TcontrolledCFD T +ada__finalization__Tlimited_controlledCFD T +ada__io_exceptions__data_error D 40 +ada__io_exceptions__data_errorE R 29 +ada__io_exceptions__device_error D 40 +ada__io_exceptions__device_errorE R 31 +ada__io_exceptions_E D 2 +ada__io_exceptions___elabs T +ada__io_exceptions__end_error D 40 +ada__io_exceptions__end_errorE R 28 +ada__io_exceptions__layout_error D 40 +ada__io_exceptions__layout_errorE R 31 +ada__io_exceptions__mode_error D 40 +ada__io_exceptions__mode_errorE R 29 +ada__io_exceptions__name_error D 40 +ada__io_exceptions__name_errorE R 29 +ada__io_exceptions__R11s D 8 +ada__io_exceptions__R14s D 8 +ada__io_exceptions__R17s D 8 +ada__io_exceptions__R20s D 8 +ada__io_exceptions__R23s D 8 +ada__io_exceptions__R2s D 8 +ada__io_exceptions__R5s D 8 +ada__io_exceptions__R8s D 8 +ada__io_exceptions__status_error D 40 +ada__io_exceptions__status_errorE R 31 +ada__io_exceptions__use_error D 40 +ada__io_exceptions__use_errorE R 28 +ada__streams_E D 2 +ada__streams___elabs T +ada__streams__read_sea T +ada__streams__root_stream_typeB32s D 80 +ada__streams__root_stream_typeDF T +ada__streams__root_stream_typeE28s R 29 +ada__streams__root_stream_typeH29s D 8 +ada__streams__root_stream_typeIP T +ada__streams__root_stream_typeP D 8 +ada__streams__root_stream_typeR30s D 8 +ada__streams__root_stream_typeR30s___UNC D 80 +ada__streams__root_stream_typeT D 48 +ada__streams__root_stream_typeY D 8 +ada__streams___size T +ada__streams__stream_element_arrayIP T +ada__streams__stream_element_arraySR T +ada__streams__stream_element_arraySW T +ada__streams__Troot_stream_typeCFD T +ada__streams__write_sea T +_ada_system__address_image T +ada__tags__address_arrayIP T +ada__tags__base_address T +ada__tags__check_tsd T +ada__tags__cw_membership T +ada__tags__descendant_tag T +ada__tags__dispatch_table_wrapperIP T +ada__tags__displace T +ada__tags__dt_offset_to_top_offset R 8 +ada__tags__dt_offset_to_top_size R 8 +ada__tags__dt_predef_prims_offset R 8 +ada__tags__dt_predef_prims_size R 8 +ada__tags__dt T +ada__tags__dt_typeinfo_ptr_size R 8 +ada__tags_E D 2 +ada__tags___elabb T +ada__tags___elabs T +ada__tags__expanded_name T +ada__tags__external_tag_htable__get_firstXn T +ada__tags__external_tag_htable__get_nextXn T +ada__tags__external_tag_htable__get_non_nullXn T +ada__tags__external_tag_htable__getXn T +ada__tags__external_tag_htable__iterator_indexXn B 1 +ada__tags__external_tag_htable__iterator_ptrXn D 8 +ada__tags__external_tag_htable__iterator_startedXn D 1 +ada__tags__external_tag_htable__null_ptrXn R 8 +ada__tags__external_tag_htable__presentXn T +ada__tags__external_tag_htable__removeXn T +ada__tags__external_tag_htable__resetXn T +ada__tags__external_tag_htable__set_if_not_presentXn T +ada__tags__external_tag_htable__setXn T +ada__tags__external_tag_htable__tableXn B 512 +ada__tags__external_tag_htable__TtableBIPXn T +ada__tags__external_tag T +ada__tags__get_entry_index T +ada__tags__get_external_tag T +ada__tags__get_offset_index T +ada__tags__get_prim_op_kind T +ada__tags__get_tagged_kind T +ada__tags__htable_subprograms__equalXn T +ada__tags__htable_subprograms__get_ht_linkXn T +ada__tags__htable_subprograms__hashXn T +ada__tags__htable_subprograms__set_ht_linkXn T +ada__tags__interface_ancestor_tags T +ada__tags__interface_data_elementIP T +ada__tags__interface_dataIP T +ada__tags__interfaces_arrayIP T +ada__tags__internal_tag T +ada__tags__is_descendant_at_same_level T +ada__tags__is_primary_dt T +ada__tags__iw_membership T +ada__tags__length T +ada__tags__max_predef_prims R 4 +ada__tags__needs_finalization T +ada__tags__no_dispatch_table_wrapperIP T +ada__tags__no_tag R 8 +ada__tags__object_specific_data_arrayIP T +ada__tags__object_specific_dataIP T +ada__tags__offset_to_top T +ada__tags__osd T +ada__tags__parent_size T +ada__tags__parent_tag T +ada__tags__prim_op_kindN R 18 +ada__tags__prim_op_kindS R 138 +ada__tags__R4s D 8 +ada__tags__register_interface_offset T +ada__tags__register_tag T +ada__tags__secondary_tag T +ada__tags__select_specific_data_arrayIP T +ada__tags__select_specific_data_elementIP T +ada__tags__select_specific_dataIP T +ada__tags__set_dynamic_offset_to_top T +ada__tags__set_entry_index T +ada__tags__set_prim_op_kind T +ada__tags__signature_kindN R 4 +ada__tags__signature_kindS R 29 +ada__tags__ssd T +ada__tags__tag_arrayIP T +ada__tags__tag_error D 40 +ada__tags__tag_errorE R 19 +ada__tags__tagged_kindN R 8 +ada__tags__tagged_kindS R 89 +ada__tags__tag_tableIP T +ada__tags__type_is_abstract T +ada__tags__type_specific_dataIP T +ada__tags__unregister_tag T +ada__tags__wide_expanded_name T +ada__tags__wide_wide_expanded_name T +ada__unchecked_deallocation_E D 2 +allocate_secondary_stack T +constraint_error D 40 +get_thread T __gl_default_stack_size D 4 __gl_detect_blocking B 4 __gl_interrupt_states B 8 @@ -15,32 +342,58 @@ __gl_unreserve_all_interrupts B 4 __gl_wc_encoding D 1 __gnat_append_info_e_msg T __gnat_append_info_u_e_info T +gnat_argc B 4 +gnat_argv B 8 __gnat_binder_ss_count B 4 __gnat_break_start T __gnat_debug_raise_assert_failure T __gnat_debug_raise_exception T __gnat_default_ss_pool B 4 __gnat_default_ss_size B 4 +gnat_E D 2 +gnat_envp B 8 __gnat_exception_actions_global_action D 8 __gnat_exception_actions_initialized D 1 __gnat_exception_msg_len T +gnat_exit_status T __gnat_finalize_library_objects D 8 __gnat_finalize T __gnat_free T __gnat_initialize T +gnat__io__current_out D 1 +gnat__io_E D 2 +gnat__io__file_typeN R 4 +gnat__io__file_typeS R 16 +gnat__io__get__2 T +gnat__io__get_line T +gnat__io__get T +gnat__io__new_line__2 T +gnat__io__new_line T +gnat__io__put__2 T +gnat__io__put__3 T +gnat__io__put__4 T +gnat__io__put__5 T +gnat__io__put__6 T +gnat__io__put_line__2 T +gnat__io__put_line T +gnat__io__put T +gnat__io__set_output T +gnat__io__standard_error T +gnat__io__standard_output T __gnat_last_chance_handler T __gnat_malloc T +__gnat_mulv64 T __gnat_notify_handled_exception T __gnat_notify_unhandled_exception T -__gnat_raise_constraint_error T __gnat_raise_constraint_error_msg T +__gnat_raise_constraint_error T __gnat_raise_exception T __gnat_raise_from_controlled_operation T __gnat_raise_nodefer_with_msg T -__gnat_raise_program_error T __gnat_raise_program_error_msg T -__gnat_raise_storage_error T +__gnat_raise_program_error T __gnat_raise_storage_error_msg T +__gnat_raise_storage_error T __gnat_raise_with_msg T __gnat_rcheck_00 T __gnat_rcheck_01 T @@ -117,334 +470,32 @@ __gnat_rcheck_SE_Explicit_Raise T __gnat_rcheck_SE_Infinite_Recursion T __gnat_rcheck_SE_Object_Too_Large T __gnat_realloc T -__gnat_reraise T __gnat_reraise_library_exception_if_any T +__gnat_reraise T __gnat_set_exit_status T +gnat__source_info_E D 2 __gnat_stack_limit B 8 -__gnat_to_stderr T +__gnat_timeval_to_duration T __gnat_to_stderr_char T +__gnat_to_stderr T __gnat_transfer_occurrence T __gnat_unhandled_exception T __gnat_unhandled_terminate T -_abort_signal D 40 -_ada_system__address_image T -ada_E D 2 -ada__exceptions_E D 2 -ada__exceptions__counter R 4 -ada__exceptions__eid_to_string T -ada__exceptions__eo_to_string T -ada__exceptions__exception_data__append_info_addressXn T -ada__exceptions__exception_data__append_info_basic_exception_informationXn T -ada__exceptions__exception_data__append_info_characterXn T -ada__exceptions__exception_data__append_info_exception_nameXn T -ada__exceptions__exception_data__append_info_exception_name__2Xn T -ada__exceptions__exception_data__append_info_natXn T -ada__exceptions__exception_data__append_info_nlXn T -ada__exceptions__exception_data__append_info_stringXn T -ada__exceptions__exception_data__append_info_untailored_exception_tracebackXn T -ada__exceptions__exception_data__basic_exception_info_maxlengthXn T -ada__exceptions__exception_data__bei_msg_headerXn R 4 -ada__exceptions__exception_data__bei_name_headerXn R 8 -ada__exceptions__exception_data__bei_pid_headerXn R 8 -ada__exceptions__exception_data__betb_headerXn R 31 -ada__exceptions__exception_data__exception_info_maxlengthXn T -ada__exceptions__exception_data__exception_informationXn T -ada__exceptions__exception_data__exception_name_lengthXn T -ada__exceptions__exception_data__exception_name_length__2Xn T -ada__exceptions__exception_data__ldad_headerXn R 16 -ada__exceptions__exception_data__set_exception_c_msgXn T -ada__exceptions__exception_data__set_exception_msgXn T -ada__exceptions__exception_data__tailored_exception_tracebackXn T -ada__exceptions__exception_data__untailored_exception_informationXn T -ada__exceptions__exception_data__untailored_exception_tracebackXn T -ada__exceptions__exception_data__untailored_exception_traceback_maxlengthXn T -ada__exceptions__exception_identity T -ada__exceptions__exception_information T -ada__exceptions__exception_message T -ada__exceptions__exception_name T -ada__exceptions__exception_name__2 T -ada__exceptions__exception_name_simple T -ada__exceptions__exception_occurrenceIP T -ada__exceptions__exception_traces__nlineXn R 1 -ada__exceptions__exception_traces__notify_exceptionXn T -ada__exceptions__exception_traces__unhandled_exception_terminateXn T -ada__exceptions__last_chance_handler_E D 2 -ada__exceptions__null_id R 8 -ada__exceptions__null_loc R 8 -ada__exceptions__null_occurrence R 632 -ada__exceptions__poll T -ada__exceptions__process_raise_exception T -ada__exceptions__raise_exception T -ada__exceptions__raise_exception_no_defer T -ada__exceptions__raise_from_signal_handler T -ada__exceptions__raise_with_location_and_msg T -ada__exceptions__reraise_occurrence T -ada__exceptions__reraise_occurrence_always T -ada__exceptions__reraise_occurrence_no_defer T -ada__exceptions__rmsg_00 R 20 -ada__exceptions__rmsg_01 R 25 -ada__exceptions__rmsg_02 R 26 -ada__exceptions__rmsg_03 R 16 -ada__exceptions__rmsg_04 R 16 -ada__exceptions__rmsg_05 R 19 -ada__exceptions__rmsg_06 R 16 -ada__exceptions__rmsg_07 R 20 -ada__exceptions__rmsg_08 R 18 -ada__exceptions__rmsg_09 R 28 -ada__exceptions__rmsg_10 R 22 -ada__exceptions__rmsg_11 R 23 -ada__exceptions__rmsg_12 R 19 -ada__exceptions__rmsg_13 R 17 -ada__exceptions__rmsg_14 R 26 -ada__exceptions__rmsg_15 R 27 -ada__exceptions__rmsg_16 R 48 -ada__exceptions__rmsg_17 R 19 -ada__exceptions__rmsg_18 R 18 -ada__exceptions__rmsg_19 R 47 -ada__exceptions__rmsg_20 R 38 -ada__exceptions__rmsg_21 R 25 -ada__exceptions__rmsg_22 R 16 -ada__exceptions__rmsg_23 R 33 -ada__exceptions__rmsg_24 R 31 -ada__exceptions__rmsg_25 R 25 -ada__exceptions__rmsg_26 R 16 -ada__exceptions__rmsg_27 R 27 -ada__exceptions__rmsg_28 R 31 -ada__exceptions__rmsg_29 R 26 -ada__exceptions__rmsg_30 R 28 -ada__exceptions__rmsg_31 R 51 -ada__exceptions__rmsg_32 R 19 -ada__exceptions__rmsg_33 R 16 -ada__exceptions__rmsg_34 R 19 -ada__exceptions__rmsg_35 R 17 -ada__exceptions__rmsg_36 R 29 -ada__exceptions__save_occurrence T -ada__exceptions__save_occurrence__2 T -ada__exceptions__stream_attributes__eid_to_stringXn T -ada__exceptions__stream_attributes__eo_to_stringXn T -ada__exceptions__stream_attributes__string_to_eidXn T -ada__exceptions__stream_attributes__string_to_eoXn T -ada__exceptions__string_to_eid T -ada__exceptions__string_to_eo T -ada__exceptions__triggered_by_abort T -ada__finalization_E D 2 -ada__finalization__Oeq__3 T -ada__finalization__TcontrolledCFD T -ada__finalization__Tlimited_controlledCFD T -ada__finalization___assign__3 T -ada__finalization___elabs T -ada__finalization___size__3 T -ada__finalization___size__4 T -ada__finalization__adjust T -ada__finalization__controlledB46s D 88 -ada__finalization__controlledDA__2 T -ada__finalization__controlledDF__2 T -ada__finalization__controlledE42s R 28 -ada__finalization__controlledFD T -ada__finalization__controlledH43s D 8 -ada__finalization__controlledIP T -ada__finalization__controlledP D 8 -ada__finalization__controlledR44s D 8 -ada__finalization__controlledR44s___UNC D 80 -ada__finalization__controlledSO__2 T -ada__finalization__controlledSR__2 T -ada__finalization__controlledSW__2 T -ada__finalization__controlledT D 56 -ada__finalization__controlledY D 8 -ada__finalization__finalize T -ada__finalization__finalize__2 T -ada__finalization__initialize T -ada__finalization__initialize__2 T -ada__finalization__limited_controlledB79s D 88 -ada__finalization__limited_controlledDF__2 T -ada__finalization__limited_controlledE75s R 36 -ada__finalization__limited_controlledFD T -ada__finalization__limited_controlledH76s D 8 -ada__finalization__limited_controlledIP T -ada__finalization__limited_controlledP D 8 -ada__finalization__limited_controlledR77s D 8 -ada__finalization__limited_controlledR77s___UNC D 80 -ada__finalization__limited_controlledT D 56 -ada__finalization__limited_controlledY D 8 -ada__io_exceptions_E D 2 -ada__io_exceptions__R11s D 8 -ada__io_exceptions__R14s D 8 -ada__io_exceptions__R17s D 8 -ada__io_exceptions__R20s D 8 -ada__io_exceptions__R23s D 8 -ada__io_exceptions__R2s D 8 -ada__io_exceptions__R5s D 8 -ada__io_exceptions__R8s D 8 -ada__io_exceptions___elabs T -ada__io_exceptions__data_error D 40 -ada__io_exceptions__data_errorE R 29 -ada__io_exceptions__device_error D 40 -ada__io_exceptions__device_errorE R 31 -ada__io_exceptions__end_error D 40 -ada__io_exceptions__end_errorE R 28 -ada__io_exceptions__layout_error D 40 -ada__io_exceptions__layout_errorE R 31 -ada__io_exceptions__mode_error D 40 -ada__io_exceptions__mode_errorE R 29 -ada__io_exceptions__name_error D 40 -ada__io_exceptions__name_errorE R 29 -ada__io_exceptions__status_error D 40 -ada__io_exceptions__status_errorE R 31 -ada__io_exceptions__use_error D 40 -ada__io_exceptions__use_errorE R 28 -ada__streams_E D 2 -ada__streams__Troot_stream_typeCFD T -ada__streams___elabs T -ada__streams___size T -ada__streams__read_sea T -ada__streams__root_stream_typeB32s D 80 -ada__streams__root_stream_typeDF T -ada__streams__root_stream_typeE28s R 29 -ada__streams__root_stream_typeH29s D 8 -ada__streams__root_stream_typeIP T -ada__streams__root_stream_typeP D 8 -ada__streams__root_stream_typeR30s D 8 -ada__streams__root_stream_typeR30s___UNC D 80 -ada__streams__root_stream_typeT D 48 -ada__streams__root_stream_typeY D 8 -ada__streams__stream_element_arrayIP T -ada__streams__stream_element_arraySR T -ada__streams__stream_element_arraySW T -ada__streams__write_sea T -ada__tags_E D 2 -ada__tags__R4s D 8 -ada__tags___elabb T -ada__tags___elabs T -ada__tags__address_arrayIP T -ada__tags__base_address T -ada__tags__check_tsd T -ada__tags__cw_membership T -ada__tags__descendant_tag T -ada__tags__dispatch_table_wrapperIP T -ada__tags__displace T -ada__tags__dt T -ada__tags__dt_offset_to_top_offset R 8 -ada__tags__dt_offset_to_top_size R 8 -ada__tags__dt_predef_prims_offset R 8 -ada__tags__dt_predef_prims_size R 8 -ada__tags__dt_typeinfo_ptr_size R 8 -ada__tags__expanded_name T -ada__tags__external_tag T -ada__tags__external_tag_htable__TtableBIPXn T -ada__tags__external_tag_htable__getXn T -ada__tags__external_tag_htable__get_firstXn T -ada__tags__external_tag_htable__get_nextXn T -ada__tags__external_tag_htable__get_non_nullXn T -ada__tags__external_tag_htable__iterator_indexXn B 1 -ada__tags__external_tag_htable__iterator_ptrXn D 8 -ada__tags__external_tag_htable__iterator_startedXn D 1 -ada__tags__external_tag_htable__null_ptrXn R 8 -ada__tags__external_tag_htable__presentXn T -ada__tags__external_tag_htable__removeXn T -ada__tags__external_tag_htable__resetXn T -ada__tags__external_tag_htable__setXn T -ada__tags__external_tag_htable__set_if_not_presentXn T -ada__tags__external_tag_htable__tableXn B 512 -ada__tags__get_entry_index T -ada__tags__get_external_tag T -ada__tags__get_offset_index T -ada__tags__get_prim_op_kind T -ada__tags__get_tagged_kind T -ada__tags__htable_subprograms__equalXn T -ada__tags__htable_subprograms__get_ht_linkXn T -ada__tags__htable_subprograms__hashXn T -ada__tags__htable_subprograms__set_ht_linkXn T -ada__tags__interface_ancestor_tags T -ada__tags__interface_dataIP T -ada__tags__interface_data_elementIP T -ada__tags__interfaces_arrayIP T -ada__tags__internal_tag T -ada__tags__is_descendant_at_same_level T -ada__tags__is_primary_dt T -ada__tags__iw_membership T -ada__tags__length T -ada__tags__max_predef_prims R 4 -ada__tags__needs_finalization T -ada__tags__no_dispatch_table_wrapperIP T -ada__tags__no_tag R 8 -ada__tags__object_specific_dataIP T -ada__tags__object_specific_data_arrayIP T -ada__tags__offset_to_top T -ada__tags__osd T -ada__tags__parent_size T -ada__tags__parent_tag T -ada__tags__prim_op_kindN R 18 -ada__tags__prim_op_kindS R 138 -ada__tags__register_interface_offset T -ada__tags__register_tag T -ada__tags__secondary_tag T -ada__tags__select_specific_dataIP T -ada__tags__select_specific_data_arrayIP T -ada__tags__select_specific_data_elementIP T -ada__tags__set_dynamic_offset_to_top T -ada__tags__set_entry_index T -ada__tags__set_prim_op_kind T -ada__tags__signature_kindN R 4 -ada__tags__signature_kindS R 29 -ada__tags__ssd T -ada__tags__tag_arrayIP T -ada__tags__tag_error D 40 -ada__tags__tag_errorE R 19 -ada__tags__tag_tableIP T -ada__tags__tagged_kindN R 8 -ada__tags__tagged_kindS R 89 -ada__tags__type_is_abstract T -ada__tags__type_specific_dataIP T -ada__tags__unregister_tag T -ada__tags__wide_expanded_name T -ada__tags__wide_wide_expanded_name T -ada__unchecked_deallocation_E D 2 -allocate_secondary_stack T -constraint_error D 40 -get_thread T -gnat_argc B 4 -gnat_argv B 8 -gnat_envp B 8 -gnat_exit_status T -gnat_E D 2 -gnat__io_E D 2 -gnat__io__current_out D 1 -gnat__io__file_typeN R 4 -gnat__io__file_typeS R 16 -gnat__io__get T -gnat__io__get__2 T -gnat__io__get_line T -gnat__io__new_line T -gnat__io__new_line__2 T -gnat__io__put T -gnat__io__put__2 T -gnat__io__put__3 T -gnat__io__put__4 T -gnat__io__put__5 T -gnat__io__put__6 T -gnat__io__put_line T -gnat__io__put_line__2 T -gnat__io__set_output T -gnat__io__standard_error T -gnat__io__standard_output T -gnat__source_info_E D 2 -interfaces_E D 2 -interfaces__c_E D 2 -interfaces__c__R6s D 8 -interfaces__c___elabs T interfaces__c__char16_arrayIP T interfaces__c__char16_nul R 2 interfaces__c__char32_arrayIP T interfaces__c__char32_nul R 4 interfaces__c__char_arrayIP T -interfaces__c__is_nul_terminated T +interfaces__c_E D 2 +interfaces__c___elabs T interfaces__c__is_nul_terminated__2 T interfaces__c__is_nul_terminated__3 T interfaces__c__is_nul_terminated__4 T +interfaces__c__is_nul_terminated T interfaces__c__nul R 1 +interfaces__c__R6s D 8 interfaces__c__terminator_error D 40 interfaces__c__terminator_errorE R 30 -interfaces__c__to_ada T interfaces__c__to_ada__10 T interfaces__c__to_ada__11 T interfaces__c__to_ada__12 T @@ -456,7 +507,7 @@ interfaces__c__to_ada__6 T interfaces__c__to_ada__7 T interfaces__c__to_ada__8 T interfaces__c__to_ada__9 T -interfaces__c__to_c T +interfaces__c__to_ada T interfaces__c__to_c__10 T interfaces__c__to_c__11 T interfaces__c__to_c__12 T @@ -468,45 +519,47 @@ interfaces__c__to_c__6 T interfaces__c__to_c__7 T interfaces__c__to_c__8 T interfaces__c__to_c__9 T +interfaces__c__to_c T interfaces__c__wchar_arrayIP T interfaces__c__wide_nul R 4 +interfaces_E D 2 local_raise T log_debug T log_error T log_warning T numeric_error D 40 platform_E D 2 -platform__log_debug T platform__log_debug_private T -platform__log_error T +platform__log_debug T platform__log_error_private T -platform__log_warning T +platform__log_error T platform__log_warning_private T +platform__log_warning T platform__raise_ada_exception T program_error D 40 -put_char T put_char_stderr T -put_int T +put_char T put_int_stderr T +put_int T raise_ada_exception T -ss_utils_E D 2 -ss_utils__TregistryBIP T -ss_utils___elabs T ss_utils__allocate_stack T ss_utils__c_alloc T +ss_utils_E D 2 +ss_utils___elabs T ss_utils__get_mark T ss_utils__invalid_thread R 8 ss_utils__markIP T ss_utils__null_registry B 3072 ss_utils__registry_entryIP T ss_utils__s_allocate T -ss_utils__s_mark T -ss_utils__s_release T ss_utils__secondary_stack_size R 8 ss_utils__set_mark T +ss_utils__s_mark T +ss_utils__s_release T +ss_utils__TregistryBIP T storage_error D 40 -string_utils_E D 2 string_utils__convert_to_ada T +string_utils_E D 2 string_utils__get_char T string_utils__incr T string_utils__length T @@ -516,16 +569,34 @@ string_utils__to_pointer T system__aamp R 1 system__address_image_E D 2 system__always_compatible_rep R 1 +system__arith_64__add_with_ovflo_check T +system__arith_64__double_divide T +system__arith_64__hi T +system__arith_64__le3 T +system__arith_64__lo T +system__arith_64__Oabs T +system__arith_64__Oadd__2 T +system__arith_64__Oadd T +system__arith_64__Oconcat T +system__arith_64__Odivide T +system__arith_64__Omultiply T +system__arith_64__Orem T +system__arith_64__raise_error T +system__arith_64__scaled_divide T +system__arith_64__sub3 T +system__arith_64__subtract_with_ovflo_check T +system__arith_64__to_neg_int T +system__arith_64__to_pos_int T system__backend_divide_checks R 1 system__backend_overflow_checks R 1 system__bit_orderN R 4 system__bit_orderS R 31 system__case_util_E D 2 -system__case_util__to_lower T system__case_util__to_lower__2 T +system__case_util__to_lower T system__case_util__to_mixed T -system__case_util__to_upper T system__case_util__to_upper__2 T +system__case_util__to_upper T system__command_line_args R 1 system__concat_2_E D 2 system__concat_2__str_concat_2 T @@ -559,29 +630,23 @@ system__default_bit_order R 1 system__default_priority R 4 system__denorm R 1 system__duration_32_bits R 1 -system__exception_table_E D 2 -system__exception_table__ThtableBIP T -system__exception_table___elabb T -system__exception_table__exception_data_arrayIP T -system__exception_table__get_registered_exceptions T -system__exception_table__has_name T -system__exception_table__hash T -system__exception_table__htable B 296 -system__exception_table__internal_exception T -system__exception_table__lookup T -system__exception_table__register T -system__exception_table__register_exception T -system__exception_table__registered_exceptions_count T system__exceptions_debug_E D 2 system__exceptions_E D 2 system__exceptions___elabs T +system__exception_table_E D 2 +system__exception_table___elabb T +system__exception_table__exception_data_arrayIP T +system__exception_table__get_registered_exceptions T +system__exception_table__hash T +system__exception_table__has_name T +system__exception_table__htable B 296 +system__exception_table__internal_exception T +system__exception_table__lookup T +system__exception_table__registered_exceptions_count T +system__exception_table__register_exception T +system__exception_table__register T +system__exception_table__ThtableBIP T system__exit_status_supported R 1 -system__finalization_masters_E D 2 -system__finalization_masters__Tfinalization_masterCFD T -system__finalization_masters___elabb T -system__finalization_masters___elabs T -system__finalization_masters___master B 4 -system__finalization_masters___size__2 T system__finalization_masters__add_offset_to_address T system__finalization_masters__attach T system__finalization_masters__attach_unprotected T @@ -589,6 +654,9 @@ system__finalization_masters__base_pool T system__finalization_masters__delete_finalize_address_unprotected T system__finalization_masters__detach T system__finalization_masters__detach_unprotected T +system__finalization_masters_E D 2 +system__finalization_masters___elabb T +system__finalization_masters___elabs T system__finalization_masters__finalization_masterB28s D 96 system__finalization_masters__finalization_masterDF__2 T system__finalization_masters__finalization_masterE24s R 48 @@ -601,26 +669,24 @@ system__finalization_masters__finalization_masterR26s___UNC D 80 system__finalization_masters__finalization_masterT D 136 system__finalization_masters__finalization_masterY D 8 system__finalization_masters__finalization_started T -system__finalization_masters__finalize T system__finalization_masters__finalize_address T system__finalization_masters__finalize_address_table__element_wrapperIPXn T -system__finalization_masters__finalize_address_table__getXn T -system__finalization_masters__finalize_address_table__get_firstXn T system__finalization_masters__finalize_address_table__get_first__2Xn T +system__finalization_masters__finalize_address_table__get_firstXn T system__finalization_masters__finalize_address_table__get_keyXn T -system__finalization_masters__finalize_address_table__get_nextXn T system__finalization_masters__finalize_address_table__get_next__2Xn T +system__finalization_masters__finalize_address_table__get_nextXn T +system__finalization_masters__finalize_address_table__getXn T system__finalization_masters__finalize_address_table__nextXn T system__finalization_masters__finalize_address_table__no_elementXn R 8 system__finalization_masters__finalize_address_table__removeXn T system__finalization_masters__finalize_address_table__resetXn T -system__finalization_masters__finalize_address_table__setXn T system__finalization_masters__finalize_address_table__set_nextXn T -system__finalization_masters__finalize_address_table__tab__TtableBIPXnb T -system__finalization_masters__finalize_address_table__tab__getXnb T +system__finalization_masters__finalize_address_table__setXn T system__finalization_masters__finalize_address_table__tab__get_firstXnb T system__finalization_masters__finalize_address_table__tab__get_nextXnb T system__finalization_masters__finalize_address_table__tab__get_non_nullXnb T +system__finalization_masters__finalize_address_table__tab__getXnb T system__finalization_masters__finalize_address_table__tab__iterator_indexXnb B 1 system__finalization_masters__finalize_address_table__tab__iterator_ptrXnb D 8 system__finalization_masters__finalize_address_table__tab__iterator_startedXnb D 1 @@ -628,15 +694,18 @@ system__finalization_masters__finalize_address_table__tab__null_ptrXnb R 8 system__finalization_masters__finalize_address_table__tab__presentXnb T system__finalization_masters__finalize_address_table__tab__removeXnb T system__finalization_masters__finalize_address_table__tab__resetXnb T -system__finalization_masters__finalize_address_table__tab__setXnb T system__finalization_masters__finalize_address_table__tab__set_if_not_presentXnb T +system__finalization_masters__finalize_address_table__tab__setXnb T system__finalization_masters__finalize_address_table__tab__tableXnb B 1024 +system__finalization_masters__finalize_address_table__tab__TtableBIPXnb T system__finalization_masters__finalize_address_unprotected T system__finalization_masters__finalize_spec T +system__finalization_masters__finalize T system__finalization_masters__fm_nodeIP T system__finalization_masters__header_size T system__finalization_masters__initialize__2 T system__finalization_masters__is_homogeneous T +system__finalization_masters___master B 4 system__finalization_masters__objects T system__finalization_masters__print_master T system__finalization_masters__set_base_pool T @@ -644,15 +713,15 @@ system__finalization_masters__set_finalize_address T system__finalization_masters__set_finalize_address_unprotected T system__finalization_masters__set_heterogeneous_finalize_address_unprotected T system__finalization_masters__set_is_heterogeneous T -system__finalization_root_E D 2 -system__finalization_root__Oeq T -system__finalization_root__Troot_controlledCFD T -system__finalization_root___assign T -system__finalization_root___elabs T -system__finalization_root___size T +system__finalization_masters___size__2 T +system__finalization_masters__Tfinalization_masterCFD T system__finalization_root__adjust T +system__finalization_root___assign T +system__finalization_root_E D 2 +system__finalization_root___elabs T system__finalization_root__finalize T system__finalization_root__initialize T +system__finalization_root__Oeq T system__finalization_root__root_controlledB29s D 80 system__finalization_root__root_controlledDA T system__finalization_root__root_controlledDF T @@ -667,10 +736,12 @@ system__finalization_root__root_controlledSR T system__finalization_root__root_controlledSW T system__finalization_root__root_controlledT D 56 system__finalization_root__root_controlledY D 8 +system__finalization_root___size T +system__finalization_root__Troot_controlledCFD T system__fractional_fixed_ops R 1 -system__front_end_zcx_support R 1 system__frontend_exceptions R 1 system__frontend_layout R 1 +system__front_end_zcx_support R 1 system__functions_return_by_dsp R 1 system__gcc_zcx_support R 1 system__high_integrity_mode R 1 @@ -680,15 +751,18 @@ system__img_bool__image_boolean T system__img_int_E D 2 system__img_int__image_integer T system__img_int__set_image_integer T -system__io_E D 2 +system__img_lli_E D 2 +system__img_lli__image_long_long_integer T +system__img_lli__set_image_long_long_integer T system__io__current_out D 1 +system__io_E D 2 system__io__file_typeN R 4 system__io__file_typeS R 16 system__io__new_line T -system__io__put T system__io__put__2 T system__io__put__3 T system__io__put_line T +system__io__put T system__io__set_output T system__io__standard_error T system__io__standard_output T @@ -701,12 +775,12 @@ system__memory_E D 2 system__nameN R 2 system__nameS R 16 system__null_address R 8 -system__parameters_E D 2 system__parameters__adjust_storage_size T system__parameters__c_malloc_linkname R 16 system__parameters__default_env_stack_size R 4 system__parameters__default_stack_size T system__parameters__dynamic R 4 +system__parameters_E D 2 system__parameters__garbage_collected R 1 system__parameters__minimum_stack_size T system__parameters__no_abort R 1 @@ -716,16 +790,16 @@ system__parameters__sec_stack_percentage R 4 system__parameters__single_lock R 1 system__parameters__stack_grows_down R 1 system__parameters__unspecified_size R 4 -system__pool_global_E D 2 -system__pool_global__C59s D 4 -system__pool_global__Tunbounded_no_reclaim_poolCFD T -system__pool_global___elabs T -system__pool_global___size T system__pool_global__allocate T +system__pool_global__C59s D 4 system__pool_global__deallocate T +system__pool_global_E D 2 +system__pool_global___elabs T system__pool_global__finalize_spec T system__pool_global__global_pool_object B 8 +system__pool_global___size T system__pool_global__storage_size T +system__pool_global__Tunbounded_no_reclaim_poolCFD T system__pool_global__unbounded_no_reclaim_poolB20s D 104 system__pool_global__unbounded_no_reclaim_poolDF T system__pool_global__unbounded_no_reclaim_poolE16s R 45 @@ -738,11 +812,11 @@ system__pool_global__unbounded_no_reclaim_poolR18s___UNC D 80 system__pool_global__unbounded_no_reclaim_poolT D 80 system__pool_global__unbounded_no_reclaim_poolY D 8 system__preallocated_stacks R 1 -system__secondary_stack_E D 2 -system__secondary_stack___elabb T system__secondary_stack__chunk_idIP T system__secondary_stack__default_secondary_stack_size D 4 system__secondary_stack__dummy_fixed_stack B 48 +system__secondary_stack_E D 2 +system__secondary_stack___elabb T system__secondary_stack__fixed_stack_idIP T system__secondary_stack__mark_idIP T system__secondary_stack__memoryIP T @@ -756,9 +830,6 @@ system__secondary_stack__ss_ratio_dynamic R 1 system__secondary_stack__ss_release T system__secondary_stack__stack_idIP T system__signed_zeros R 1 -system__soft_links_E D 2 -system__soft_links___elabb T -system__soft_links___elabs T system__soft_links__abort_defer D 8 system__soft_links__abort_defer_nt T system__soft_links__abort_handler D 8 @@ -776,6 +847,9 @@ system__soft_links__current_master D 8 system__soft_links__current_master_nt T system__soft_links__destroy_tsd T system__soft_links__dummy_communication_blockIP T +system__soft_links_E D 2 +system__soft_links___elabb T +system__soft_links___elabs T system__soft_links__enter_master D 8 system__soft_links__enter_master_nt T system__soft_links__get_current_excep D 8 @@ -811,18 +885,18 @@ system__soft_links__traceback_decorator_wrapper D 8 system__soft_links__tsdIP T system__soft_links__unlock_task D 8 system__stack_check_default R 1 -system__stack_check_limits R 1 -system__stack_check_probes R 1 system__stack_checking_E D 2 system__stack_checking__multi_processor R 1 system__stack_checking__null_stack D 8 system__stack_checking__null_stack_info D 24 system__stack_checking__stack_infoIP T -system__standard_library_E D 2 +system__stack_check_limits R 1 +system__stack_check_probes R 1 system__standard_library__abort_signal_name R 16 system__standard_library__abort_undefer_direct T system__standard_library__adafinal T system__standard_library__constraint_error_name R 17 +system__standard_library_E D 2 system__standard_library__exception_dataIP T system__standard_library__exception_trace D 1 system__standard_library__exception_trace_kindN R 8 @@ -835,13 +909,11 @@ system__standard_library__storage_error_name R 16 system__standard_library__tasking_error_name R 16 system__storage_elements_E D 2 system__storage_elements__storage_arrayIP T -system__storage_pools_E D 2 -system__storage_pools__Troot_storage_poolCFD T -system__storage_pools___elabs T -system__storage_pools___master B 4 -system__storage_pools___size__2 T system__storage_pools__allocate_any T system__storage_pools__deallocate_any T +system__storage_pools_E D 2 +system__storage_pools___elabs T +system__storage_pools___master B 4 system__storage_pools__root_storage_poolB20s D 96 system__storage_pools__root_storage_poolDF__2 T system__storage_pools__root_storage_poolE16s R 39 @@ -853,8 +925,10 @@ system__storage_pools__root_storage_poolR18s D 8 system__storage_pools__root_storage_poolR18s___UNC D 80 system__storage_pools__root_storage_poolT D 80 system__storage_pools__root_storage_poolY D 8 -system__stream_attributes_E D 2 +system__storage_pools___size__2 T +system__storage_pools__Troot_storage_poolCFD T system__stream_attributes__block_io_ok T +system__stream_attributes_E D 2 system__stream_attributes__err D 8 system__stream_attributes__fat_pointerIP T system__stream_attributes__i_ad T @@ -918,8 +992,8 @@ system__val_llu_E D 2 system__val_llu__scan_long_long_unsigned T system__val_llu__scan_raw_long_long_unsigned T system__val_llu__value_long_long_unsigned T -system__val_util_E D 2 system__val_util__bad_value T +system__val_util_E D 2 system__val_util__normalize_string T system__val_util__scan_exponent T system__val_util__scan_plus_sign T @@ -929,17 +1003,17 @@ system__val_util__scan_underscore T system__wch_cnv_E D 2 system__wch_cnv__utf_32_stringIP T system__wch_con_E D 2 -system__wch_con__get_wc_encoding_method T system__wch_con__get_wc_encoding_method__2 T +system__wch_con__get_wc_encoding_method T system__wch_con__is_start_of_encoding T -system__wch_con__wc_encoding_letters R 8 -system__wch_con__wc_longest_sequences R 24 system__wch_con__wcem_brackets R 1 system__wch_con__wcem_euc R 1 system__wch_con__wcem_hex R 1 system__wch_con__wcem_shift_jis R 1 system__wch_con__wcem_upper R 1 system__wch_con__wcem_utf8 R 1 +system__wch_con__wc_encoding_letters R 8 +system__wch_con__wc_longest_sequences R 24 system__wch_jis_E D 2 system__wch_jis__euc_to_jis T system__wch_jis__jis_to_euc T diff --git a/lib/symbols/libsparkcryptofat b/lib/symbols/libsparkcryptofat new file mode 100644 index 0000000..4c49ab8 --- /dev/null +++ b/lib/symbols/libsparkcryptofat @@ -0,0 +1,326 @@ +lsc__aes__cbc__decrypt T +lsc__aes__cbc_E D 2 +lsc__aes__cbc__encrypt T +lsc__aes__dec_key T +lsc__aes__decrypt T +lsc__aes_E D 2 +lsc__aes__enc_key T +lsc__aes__encrypt T +lsc__aes_generic__cbc_E D 2 +lsc__aes_generic__dec_key_typeIP T +lsc__aes_generic_E D 2 +lsc__aes_generic__enc_key_typeIP T +lsc__aes_generic__key_bytes T +lsc__aes_generic__keylen_typeN R 4 +lsc__aes_generic__keylen_typeS R 16 +lsc__aes__l128 R 1 +lsc__aes__l192 R 1 +lsc__aes__l256 R 1 +lsc_E D 2 +lsc__internal__aes__aes_dec_contextIP T +lsc__internal__aes__aes_enc_contextIP T +lsc__internal__aes__cbc__decrypt T +lsc__internal__aes__cbc_E D 2 +lsc__internal__aes__cbc__encrypt T +lsc__internal__aes__create_aes128_dec_context T +lsc__internal__aes__create_aes128_enc_context T +lsc__internal__aes__create_aes192_dec_context T +lsc__internal__aes__create_aes192_enc_context T +lsc__internal__aes__create_aes256_dec_context T +lsc__internal__aes__create_aes256_enc_context T +lsc__internal__aes__decrypt T +lsc__internal__aes_E D 2 +lsc__internal__aes__encrypt T +lsc__internal__aes__key_typeIP T +lsc__internal__aes__message_typeIP T +lsc__internal__aes__nb R 1 +lsc__internal__aes__null_aes128_key R 16 +lsc__internal__aes__null_aes192_key R 24 +lsc__internal__aes__null_aes256_key R 32 +lsc__internal__aes__null_block R 16 +lsc__internal__aes__null_schedule R 240 +lsc__internal__aes__print_E D 2 +lsc__internal__aes__tables_E D 2 +lsc__internal__aes__tables__rcon R 120 +lsc__internal__aes__tables__si R 256 +lsc__internal__aes__tables__s R 256 +lsc__internal__aes__tables__t1 R 1024 +lsc__internal__aes__tables__t2 R 1024 +lsc__internal__aes__tables__t3 R 1024 +lsc__internal__aes__tables__t4 R 1024 +lsc__internal__aes__tables__t5 R 1024 +lsc__internal__aes__tables__t6 R 1024 +lsc__internal__aes__tables__t7 R 1024 +lsc__internal__aes__tables__t8 R 1024 +lsc__internal__aes__tables__Trcon_typeBIP T +lsc__internal__aes__tables__Tsbox_typeBIP T +lsc__internal__aes__tables__Ttable_typeBIP T +lsc__internal__aes__tables__u1 R 1024 +lsc__internal__aes__tables__u2 R 1024 +lsc__internal__aes__tables__u3 R 1024 +lsc__internal__aes__tables__u4 R 1024 +lsc__internal__bignum__add_inplace T +lsc__internal__bignum__add T +lsc__internal__bignum__big_intIP T +lsc__internal__bignum__copy T +lsc__internal__bignum__double_inplace T +lsc__internal__bignum_E D 2 +lsc__internal__bignum__equal T +lsc__internal__bignum__initialize T +lsc__internal__bignum__is_zero T +lsc__internal__bignum__less T +lsc__internal__bignum__mod_add_inplace T +lsc__internal__bignum__mod_add T +lsc__internal__bignum__mod_sub_inplace T +lsc__internal__bignum__mod_sub T +lsc__internal__bignum__mont_exp T +lsc__internal__bignum__mont_exp_window T +lsc__internal__bignum__mont_mult T +lsc__internal__bignum__native_to_be T +lsc__internal__bignum__shr_inplace T +lsc__internal__bignum__size_square_mod T +lsc__internal__bignum__sub_inplace T +lsc__internal__bignum__sub T +lsc__internal__bignum__word_inverse T +lsc__internal__byteorder32__be_to_native T +lsc__internal__byteorder32_E D 2 +lsc__internal__byteorder32__le_to_native T +lsc__internal__byteorder32__native_to_be T +lsc__internal__byteorder32__native_to_le T +lsc__internal__byteorder64__be_to_native T +lsc__internal__byteorder64_E D 2 +lsc__internal__byteorder64__le_to_native T +lsc__internal__byteorder64__native_to_be T +lsc__internal__byteorder64__native_to_le T +lsc__internal__byteswap32_E D 2 +lsc__internal__byteswap32__swap T +lsc__internal__byteswap64_E D 2 +lsc__internal__byteswap64__swap T +lsc__internal__convert_E D 2 +lsc__internal__convert_hash_E D 2 +lsc__internal__convert_hmac_E D 2 +lsc__internal__debug_E D 2 +lsc__internal__ec__A3s B 80 +lsc__internal__ec_E D 2 +lsc__internal__ec___elabs T +lsc__internal__ec__invert T +lsc__internal__ec__J4s D 4 +lsc__internal__ec__make_affine T +lsc__internal__ec__on_curve T +lsc__internal__ec__one B 80 +lsc__internal__ec__point_add T +lsc__internal__ec__point_double T +lsc__internal__ec__point_mult T +lsc__internal__ec_signature_E D 2 +lsc__internal__ec_signature__signature_typeN R 4 +lsc__internal__ec_signature__signature_typeS R 16 +lsc__internal__ec_signature__sign T +lsc__internal__ec_signature__verify T +lsc__internal__ec__two_point_mult T +lsc__internal__ec__uncompress_point T +lsc__internal_E D 2 +lsc__internal__hmac_ripemd160__authenticate T +lsc__internal__hmac_ripemd160__context_finalize_outer T +lsc__internal__hmac_ripemd160__context_finalize T +lsc__internal__hmac_ripemd160__context_init T +lsc__internal__hmac_ripemd160__context_typeIP T +lsc__internal__hmac_ripemd160__context_update T +lsc__internal__hmac_ripemd160_E D 2 +lsc__internal__hmac_ripemd160__get_auth T +lsc__internal__hmac_ripemd160__ipad R 64 +lsc__internal__hmac_ripemd160__opad R 64 +lsc__internal__hmac_sha1__authenticate T +lsc__internal__hmac_sha1__context_finalize_outer T +lsc__internal__hmac_sha1__context_finalize T +lsc__internal__hmac_sha1__context_init T +lsc__internal__hmac_sha1__context_typeIP T +lsc__internal__hmac_sha1__context_update T +lsc__internal__hmac_sha1_E D 2 +lsc__internal__hmac_sha1__get_auth T +lsc__internal__hmac_sha1__ipad R 64 +lsc__internal__hmac_sha1__opad R 64 +lsc__internal__hmac_sha256__authenticate T +lsc__internal__hmac_sha256__context_finalize T +lsc__internal__hmac_sha256__context_init T +lsc__internal__hmac_sha256__context_typeIP T +lsc__internal__hmac_sha256__context_update T +lsc__internal__hmac_sha256_E D 2 +lsc__internal__hmac_sha256__get_auth T +lsc__internal__hmac_sha256__get_prf T +lsc__internal__hmac_sha256__pseudorandom T +lsc__internal__hmac_sha384__authenticate T +lsc__internal__hmac_sha384__context_finalize T +lsc__internal__hmac_sha384__context_init T +lsc__internal__hmac_sha384__context_typeIP T +lsc__internal__hmac_sha384__context_update T +lsc__internal__hmac_sha384_E D 2 +lsc__internal__hmac_sha384__get_auth T +lsc__internal__hmac_sha384__get_prf T +lsc__internal__hmac_sha384__null_auth R 24 +lsc__internal__hmac_sha384__pseudorandom T +lsc__internal__hmac_sha512__authenticate T +lsc__internal__hmac_sha512__context_finalize T +lsc__internal__hmac_sha512__context_init T +lsc__internal__hmac_sha512__context_typeIP T +lsc__internal__hmac_sha512__context_update T +lsc__internal__hmac_sha512_E D 2 +lsc__internal__hmac_sha512__get_auth T +lsc__internal__hmac_sha512__get_prf T +lsc__internal__hmac_sha512__null_auth R 32 +lsc__internal__hmac_sha512__pseudorandom T +lsc__internal__io_E D 2 +lsc__internal__io__end_of_stream T +lsc__internal__io__new_line T +lsc__internal__io__print_byte T +lsc__internal__io__print_index T +lsc__internal__io__print_natural T +lsc__internal__io__print_word32_array T +lsc__internal__io__print_word32 T +lsc__internal__io__print_word64_array T +lsc__internal__io__print_word64 T +lsc__internal__io__put_line T +lsc__internal__io__put T +lsc__internal__io__read_byte T +lsc__internal__math_int_E D 2 +lsc__internal__ops32__block_copy T +lsc__internal__ops32__block_xor T +lsc__internal__ops32__byte0 T +lsc__internal__ops32__byte1 T +lsc__internal__ops32__byte2 T +lsc__internal__ops32__byte3 T +lsc__internal__ops32__bytes_to_word T +lsc__internal__ops32__bytex T +lsc__internal__ops32_E D 2 +lsc__internal__ops32__xor2 T +lsc__internal__ops32__xor3 T +lsc__internal__ops32__xor4 T +lsc__internal__ops32__xor5 T +lsc__internal__ops64__block_copy T +lsc__internal__ops64__block_xor T +lsc__internal__ops64__bytes_to_word T +lsc__internal__ops64_E D 2 +lsc__internal__ops64__xor2 T +lsc__internal__pad32__block_terminate T +lsc__internal__pad32_E D 2 +lsc__internal__pad64__block_terminate T +lsc__internal__pad64_E D 2 +lsc__internal__ripemd160__context_finalize T +lsc__internal__ripemd160__context_init T +lsc__internal__ripemd160__context_typeIP T +lsc__internal__ripemd160__context_update T +lsc__internal__ripemd160__data_lengthIP T +lsc__internal__ripemd160_E D 2 +lsc__internal__ripemd160__get_hash T +lsc__internal__ripemd160__hash_context T +lsc__internal__ripemd160__hash T +lsc__internal__ripemd160__message_typeIP T +lsc__internal__ripemd160__null_block R 64 +lsc__internal__ripemd160__null_hash R 20 +lsc__internal__ripemd160__print_E D 2 +lsc__internal__sha1__add T +lsc__internal__sha1__ch T +lsc__internal__sha1__context_finalize T +lsc__internal__sha1__context_init T +lsc__internal__sha1__context_typeIP T +lsc__internal__sha1__context_update T +lsc__internal__sha1__data_lengthIP T +lsc__internal__sha1_E D 2 +lsc__internal__sha1__get_hash T +lsc__internal__sha1__hash_context T +lsc__internal__sha1__hash T +lsc__internal__sha1__init_data_length T +lsc__internal__sha1__k1 R 4 +lsc__internal__sha1__k2 R 4 +lsc__internal__sha1__k3 R 4 +lsc__internal__sha1__k4 R 4 +lsc__internal__sha1__maj T +lsc__internal__sha1__message_typeIP T +lsc__internal__sha1__null_block R 64 +lsc__internal__sha1__null_hash R 20 +lsc__internal__sha1__null_schedule R 320 +lsc__internal__sha256__add T +lsc__internal__sha256__cap_sigma_0_256 T +lsc__internal__sha256__cap_sigma_1_256 T +lsc__internal__sha256__ch T +lsc__internal__sha256__context_finalize T +lsc__internal__sha256__context_typeIP T +lsc__internal__sha256__context_update_internal T +lsc__internal__sha256__context_update T +lsc__internal__sha256__data_lengthIP T +lsc__internal__sha256_E D 2 +lsc__internal__sha256__hash_context T +lsc__internal__sha256__hash T +lsc__internal__sha256__init_data_length T +lsc__internal__sha256__maj T +lsc__internal__sha256__message_typeIP T +lsc__internal__sha256__null_block R 64 +lsc__internal__sha256__null_schedule R 256 +lsc__internal__sha256__sha256_context_init T +lsc__internal__sha256__sha256_get_hash T +lsc__internal__sha256__sha256_null_hash R 32 +lsc__internal__sha256__sigma_0_256 T +lsc__internal__sha256__sigma_1_256 T +lsc__internal__sha256__tables_E D 2 +lsc__internal__sha256__tables__k R 256 +lsc__internal__sha512__add T +lsc__internal__sha512__cap_sigma_0_512 T +lsc__internal__sha512__cap_sigma_1_512 T +lsc__internal__sha512__ch T +lsc__internal__sha512__context_finalize T +lsc__internal__sha512__context_typeIP T +lsc__internal__sha512__context_update_internal T +lsc__internal__sha512__context_update T +lsc__internal__sha512__data_lengthIP T +lsc__internal__sha512_E D 2 +lsc__internal__sha512__hash_context T +lsc__internal__sha512__init_data_length T +lsc__internal__sha512__maj T +lsc__internal__sha512__message_typeIP T +lsc__internal__sha512__null_block R 128 +lsc__internal__sha512__null_schedule R 640 +lsc__internal__sha512__null_sha384_hash R 48 +lsc__internal__sha512__null_sha512_hash R 64 +lsc__internal__sha512__sha384_context_init T +lsc__internal__sha512__sha384_get_hash T +lsc__internal__sha512__sha384_hash T +lsc__internal__sha512__sha512_context_init T +lsc__internal__sha512__sha512_get_hash T +lsc__internal__sha512__sha512_hash T +lsc__internal__sha512__sigma_0_512 T +lsc__internal__sha512__sigma_1_512 T +lsc__internal__sha512__tables_E D 2 +lsc__internal__sha512__tables__k R 640 +lsc__internal__types__byte_array32_to_word32 T +lsc__internal__types__byte_array64_to_word64 T +lsc__internal__types_E D 2 +lsc__internal__types__Tbyte_array32_typeBIP T +lsc__internal__types__Tbyte_array64_typeBIP T +lsc__internal__types__word32_array_typeIP T +lsc__internal__types__word32_to_byte_array32 T +lsc__internal__types__word64_array_typeIP T +lsc__internal__types__word64_to_byte_array64 T +lsc__ops_generic_E D 2 +lsc__ripemd160_E D 2 +lsc__ripemd160_generic_E D 2 +lsc__ripemd160__hash T +lsc__ripemd160__hmac_E D 2 +lsc__ripemd160__hmac_generic_E D 2 +lsc__ripemd160__hmac__hmac T +lsc__sha1_E D 2 +lsc__sha1_generic_E D 2 +lsc__sha1__hash T +lsc__sha1__hmac_E D 2 +lsc__sha1__hmac_generic_E D 2 +lsc__sha1__hmac__hmac T +lsc__sha2_E D 2 +lsc__sha2_generic_E D 2 +lsc__sha2__hash_sha256 T +lsc__sha2__hash_sha384 T +lsc__sha2__hash_sha512 T +lsc__sha2__hmac_E D 2 +lsc__sha2__hmac_generic_E D 2 +lsc__sha2__hmac__hmac_sha256 T +lsc__sha2__hmac__hmac_sha384 T +lsc__sha2__hmac__hmac_sha512 T +lsc__types__bytesIP T +lsc__types_E D 2 diff --git a/run/test-libsparkcrypto.run b/run/test-libsparkcrypto.run new file mode 100644 index 0000000..9ecdf34 --- /dev/null +++ b/run/test-libsparkcrypto.run @@ -0,0 +1,72 @@ +set build_components { + core init server/log_terminal + test/libsparkcrypto + lib/vfs/jitterentropy + drivers/rtc + timer +} + +build $build_components +create_boot_directory + +install_config { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +} + +build_boot_image { + core init test-libsparkcrypto log_terminal rtc_drv timer + libc.lib.so vfs.lib.so ld.lib.so ada.lib.so + libcrypto.lib.so libaunit.lib.so libsparkcryptofat.lib.so + vfs_jitterentropy.lib.so +} + +append qemu_args " -nographic " + +run_genode_until "child \"test-libsparkcrypto\" exited with exit value 0" 200 diff --git a/src/test/libsparkcrypto/lsc_internal_benchmark.adb b/src/test/libsparkcrypto/lsc_internal_benchmark.adb new file mode 100644 index 0000000..93073cb --- /dev/null +++ b/src/test/libsparkcrypto/lsc_internal_benchmark.adb @@ -0,0 +1,64 @@ +------------------------------------------------------------------------------- +-- This file is part of libsparkcrypto. +-- +-- Copyright (C) 2019, Componolit GmbH +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions are met: +-- +-- * Redistributions of source code must retain the above copyright notice, +-- this list of conditions and the following disclaimer. +-- +-- * Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in the +-- documentation and/or other materials provided with the distribution. +-- +-- * Neither the name of the nor the names of its contributors may be used +-- to endorse or promote products derived from this software without +-- specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +-- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS +-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +-- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +-- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +-- POSSIBILITY OF SUCH DAMAGE. +------------------------------------------------------------------------------- + +pragma Style_Checks ("-s"); + +pragma Warnings (Off, "formal parameter ""T"" is not referenced"); + +package body LSC_Internal_Benchmark +is + function Routine_Name (T : Test_Case) return Message_String + is + begin + return Format ("Void"); + end Routine_Name; + + --------------------------------------------------------------------------- + + procedure Register_Tests (T : in out Test_Case) is + package Registration is new + AUnit.Test_Cases.Specific_Test_Case_Registration (Test_Case); + use Registration; + begin + null; + end Register_Tests; + + --------------------------------------------------------------------------- + + function Name (T : Test_Case) return Test_String is + begin + pragma Unreferenced (T); + return Format ("Benchmark dummy"); + end Name; + +end LSC_Internal_Benchmark; diff --git a/src/test/libsparkcrypto/startup.cc b/src/test/libsparkcrypto/startup.cc new file mode 100644 index 0000000..a779e89 --- /dev/null +++ b/src/test/libsparkcrypto/startup.cc @@ -0,0 +1,14 @@ +/* + * \brief Startup code for Ada main program + * \author Alexander Senier + * \date 2019-01-03 + */ + +#include + +extern "C" void _ada_main(void); + +void Ada::Component::main() +{ + _ada_main(); +} diff --git a/src/test/libsparkcrypto/target.mk b/src/test/libsparkcrypto/target.mk new file mode 100644 index 0000000..2999898 --- /dev/null +++ b/src/test/libsparkcrypto/target.mk @@ -0,0 +1,44 @@ +TARGET = test-libsparkcrypto + +SRC_ADB = \ + lsc_internal_benchmark.adb \ + lsc_internal_suite.adb \ + lsc_internal_test_aes.adb \ + lsc_internal_test_aes_cbc.adb \ + lsc_internal_test_bignum.adb \ + lsc_internal_test_ec.adb \ + lsc_internal_test_hmac.adb \ + lsc_internal_test_ripemd160.adb \ + lsc_internal_test_sha1.adb \ + lsc_internal_test_sha2.adb \ + lsc_internal_test_shadow.adb \ + lsc_suite.adb \ + lsc_test_aes.adb \ + lsc_test_aes_cbc.adb \ + lsc_test_hmac_ripemd160.adb \ + lsc_test_hmac_sha1.adb \ + lsc_test_hmac_sha2.adb \ + lsc_test_ripemd160.adb \ + lsc_test_sha1.adb \ + lsc_test_sha2.adb \ + main.adb \ + openssl.adb \ + tests.adb \ + util.adb \ + util_tests.adb + +SRC_CC = startup.cc +SRC_C = libglue.c +OPT_C = -DDEBUG + +LIBS = ada libaunit libsparkcryptofat libcrypto libc + +LSC_TESTS_DIR := $(call select_from_ports,libsparkcrypto)/libsparkcrypto/tests + +INC_DIR += $(LSC_TESTS_DIR) +CUSTOM_ADA_OPT += -gnatec=$(call select_from_ports,libsparkcrypto)/libsparkcrypto/build/pragmas.adc + +vpath lsc_internal_benchmark.adb $(PRG_DIR) +vpath %.adb $(LSC_TESTS_DIR) +vpath %.ads $(LSC_TESTS_DIR) +vpath %.c $(LSC_TESTS_DIR)