a³-Release 25.04

Verbesserte Qualifizierungskits

Bessere Traceflußvisualisierung

Bestimmung von DLL-Adressen

Verbesserte Suche

Verbesserte Graphen

Neue Zielarchitektur

aiT für c28x unterstützt nun TMS320F28377D.

TimingProfiler

Ab diesem Release benutzt TimingProfiler generische Modelle für alle der unterstützten Ziel­architekturen, anstatt nur für die meisten wie bisher.

Wenn Ihre Zielarchitektur von der Modellumstellung betroffen ist, können die WCET-Abschätzungen, die dieses TimingProfiler-Release berechnet, von den WCET-Abschätzungen früherer Releases abweichen.

Die Umstellung führt zu schnelleren und konsistenteren Analysen und ermöglicht es uns, architektur­übergreifend zusätzliche Analyse­optionen einzuführen, die den Speicherverbrauch reduzieren.

Nicht betroffen von der Umstellung sind aiT WCET-Analysatoren für sämtliche Zielarchitekturen.

Qualifizierungskits

  • Verbessertes Treiber-Programm mit einer neu gestalteten Benutzeroberfläche.
  • Die API wurde dahingehend erweitert, daß die Argumentlisten der Funktionen toolRunNames und evaluate nun die folgenden Informationen beinhalten:
    • Analyseart
    • Architektur
    • Compiler
    • Instruktionssatz

    Dies ermöglicht sowohl eine genauere Abgrenzung als auch die gezielte Zusammen­legung von verschiedenen Qualifizierungs­läufen.

  • Neue compilerspezifische QSKs für:
  • Neue boardspezifische QSKs für:
  • Die TOR der TimeWeaver-Qualifizierungskits wurden erweitert um einen Abschnitt zum betrieblichen Kontext.

Transport-Layer-Security

Falls Sie von einem älteren Release als 23.10 upgraden, muß neben Ihrem a³-Client auch Ihr Lizenz­manager aktualisiert werden. Dies ist notwendig aufgrund der TLS-verschlüsselten Verbindung zwischen dem Client und dem Lizenzmanager, die erst seit dem Release 23.10 besteht.

Linux–Unterstützung

RHEL 7 wird in naher Zukunft nicht mehr unterstützt.
Ab einem der kommenden Releases wird mindestens RHEL 9 erwartet.

Benutzeroberfläche

  • Verbesserte Darstellung von Routinenstarts in der Disassembly-Ansicht.
  • Verbesserte Suche in der Sections-Ansicht.
  • Die Suche in der Symbols-Ansicht findet nun alle potentiellen Pfade durch Union-Objekte hindurch.
  • Der Menüeintrag „Show in call graph“ zeigt nun an, ob das Annotationsziel infeasible ist.

Verbesserungen an Graphen

  • In Basisblöcken mit mehreren Endknoten gelangt man nun bequem von jedem der Endknoten zu dem jeweiligen Zielblock.
  • Verbesserte Visualisierung von nichtreduzierbaren Schleifen.
  • Bessere Behandlung von Trampolin-Routinen.
  • Bessere Visualisierung der Flußabdeckung.
  • Verbesserte Suche nach Datenbereichen.

Annotationen

  • evalC-Ausdrücke unterstützen nun Casts im C-Stil.
  • Verbesserte Behandlung von AIS-Dateien in Analysekonfigurationen.

Decoding

Das patternbasierte Dekodieren wurde überarbeitet und optimiert.

DWARF

  • Verbesserte Extraktion von Typinformationen.
  • Verbesserungen an der Behandlung von:
    • Bitfields
    • Typdeklarationen
    • Template-Parametern
  • Verbessertes Demangling von EDG-Symbolnamen.

Value-Analyse

  • Erhöhte Präzision der Type-Domain.
  • Verbesserte Evaluierung von mem-Funktoren.

ARM

  • Verbesserte automatische Auflösung von berechneten Aufrufen.

ARM64

  • Verbesserte automatische Auflösung von Virtual-Member-Function-Aufrufen.
  • Verbessertes Switch-Table-Decoding.

C28x

  • Unterstützung für C++ virtual member function calls.
  • Unterstützung für die Instruktionen PREDIVF64, POSTDIVF64 und SUBC3F64.
  • Verbessertes Switch-Table-Decoding für den TI-Compiler.

TriCore

  • Verbesserte Value-Analyse.
  • Verbesserungen an der Stabilität des Dekoders.

TimeWeaver

  • Neues Widget zur automatischen Bestimmung der DLL-Basisadressen anhand der vorliegenden Trace-Daten.
  • Verbesserte Behandlung von Tail-Calls.

TraceVisualizer

  • Additional Starts können nun benutzt werden, um die aus den Eingabetraces zu extrahierenden Task-Infos zu bestimmen.
  • Besseres Interrupt-Handling.