-D <dir>
for specifying the directory for the ALM settings (alm.ini
)
and the license file (license.dat
). This command
is only applied to the ALM instance started with it, and is not persistent.-g
.With this release the minimum system requirements for Linux go up from version 6 to version 7 of CentOS/RHEL.
A new global view lets you search through all project content at once, including AIS files, report files, the Message view, and result graphs.
-b
batch mode.-B
batch mode.ValueAnalyzer now allows to start an analysis for all functions or code labels at once, and then explore the results interactively.
preserves
specifications are now combined.target returns: always;
and
target obeys calling conventions;
are now allowed for calls with delay slots.infeasible
annotation now works for instructions in delay slots.Results of other analyses can now be queried from within AIS files after adding a dependency in the GUI.
For example, given the TimeWeaver analysis max_timeweaver
that computes the WCET contribution of the routine max
,
you can reference the result in another analysis using:
routine "max" { not analyzed; obeys calling conventions: true; takes: def(":result_max_timeweaver") cycles; }
instruction 0x40002368 reads from [0x40005fc0]:4 ('reg_err_handler')If unresolved control flow remains, the value analysis will try to list all possible function pointers found in allocated sections:
value is [0x40002424] (function pointer: 'user_err_handler')
Function pointers found in allocated sections:
0x003f44a1 'handle_progress_msg'
* occurrences in section '.econst'
0x003f8ed4 ('msg_handler_tbl[1].handler')
_ZN6FooBarC1Ev
are now demangled to be more readable,
like FooBar::FooBar()
.enter with
/exit with
annotations.__aeabi_uldivmod
.eieio
instruction
to prevent the analyzer from stalling.attribute "interrupts": address(match("interrupt_vector_[0-9]+"));
REQ
and QK
to the legend for the construction of requirement/test case identifier names.Name | Architectures |
---|---|
qk_setting_register_relative_addressing qk_ais2_result_define qk_setting_dump_ais_files_to_report | all |
qk_setting_assume_aligned_data_accesses | ARM, C16x, C28x, i386, M68020, V850, x86, e200, e300, MPC5xx, MPC755, PPC, PPC750 |
qk_setting_output_non_wcet_cycles | ARM, C16x, C28x, i386, LEON3, M68020, TriCore, e200, e300, MPC5xx, MPC755, PPC750 |
qk_setting_output_wcet_path | ARM, C16x, C28x, i386, LEON3, M68020, TriCore, e200, e300, MPC5xx, MPC755, PPC750 |
qk_setting_show_per_context_info | ARM, C16x, C28x, i386, LEON3, M68020, TriCore, e200, e300, MPC5xx, MPC755, PPC750 |
qk_setting_context_pointer qk_setting_disable_segmentation qk_setting_dpp0 qk_setting_dpp1 qk_setting_dpp2 qk_setting_dpp3 qk_setting_program_does_not_have_far_data | C16x |
qk_computation_reference_multiple_stacks | C16x, TriCore |
qk_ais2_stack_user_height qk_setting_csfr_base qk_setting_csa_base | TriCore |
qk_setting_sda_base | e200, e300, MPC5xx, MPC755, PPC, PPC750, TriCore replacing the old qk_setting_sda_base and qk_setting_sda_base_auto |
qk_setting_sda2_base | e200, e300, MPC5xx, MPC755, PPC, PPC750, TriCore replacing the old qk_setting_sda2_base and qk_setting_sda2_base_auto
|
qk_setting_sda14_base qk_setting_sda15_base qk_setting_sda16_base qk_setting_sda17_base | e200, e300, MPC5xx, MPC755, PPC, PPC750 |
qk_setting_drtry_mode | e300, MPC755, PPC750 |
qk_setting_assume_execution_on_64_bit_hardware | PPC |
qk_setting_fetch_burst_extension | e300 |
qk_setting_vector_map | C28x |
qk_setting_ds qk_setting_es qk_setting_gs qk_setting_ss qk_setting_sp qk_setting_rsp qk_setting_fs qk_setting_esp qk_setting_fs_base qk_setting_gs_base | x86 |