-compiler tasking)Укажите компилятор Altium TASKING
Определить tasking для Compiler (-compiler) при компиляции кода с помощью компилятора Altium ® TASKING. Указывая компилятор, можно избежать ошибок компиляции из синтаксиса, который не является частью стандарта, но происходит от языковых расширений.
Затем укажите тип целевого процессора. При выборе tasking для компилятора в интерфейсе пользователя настольных продуктов Polyspace ® отображаются только процессоры, разрешенные для компилятора TASKING. Ваш выбор целевого процессора определяет размер фундаментальных типов данных, полноту целевой машины и определённые определения ключевых слов.
При указании tasking необходимо указать путь к файлам заголовка компилятора. См. раздел Предоставление стандартных заголовков библиотек для анализа полиспейсов.
Программное обеспечение поддерживает различные версии компилятора TASKING, в зависимости от цели:
TriCore: версии 6.x и более старые
C166: версии 4.x и более старые версии
ARM: версии 5.x и более старые
RH850: 2.x и более старые версии
Целевые объекты используют следующие размеры по умолчанию в битах для фундаментальных типов. В отличие от целевых объектов для других компиляторов, эти размеры не отображаются в интерфейсе пользователя.
| Цель | случайная работа | короткий | интервал | долго | длинная | плавание | дважды | длинный двойник | ptr | Знак символа по умолчанию | Endianness | Выравнивание |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
tricore | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | подписанный | Мало | 32 |
c166 | 8 | 16 | 16 | 32 | 64 | 32 | 64 | 64 | 32 | подписанный | Мало | 16 |
rh850 | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | подписанный | Мало | 64 |
arm | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | подписанный | Большой | 64 |
Кроме того, wchar_t интерпретируется как unsigned short и size_t интерпретируется как unsigned int.
Спецификация компилятора также определяет значения многих специфичных для компилятора макросов. Если требуется узнать, как Polyspace определяет определенный макрос, используйте опцию -dump-preprocessing-info.
Чтобы переопределить определение макроса, используйте параметр Preprocessor definitions (-D).
Чтобы отменить определение макроса, используйте параметр Disabled preprocessor definitions (-U).
Polyspace не поддерживает некоторые конструкции, специфичные для компилятора TASKING.
Список неподдерживаемых конструкций см. в разделе codeprover_limitations.pdf в . Здесь, polyspaceroot\polyspace\verifier\code_prover_desktop является папкой установки Polyspace, например, polyspacerootC:\Program Files\Polyspace\R2019a.
Используется TC1793 ЦП. При использовании другого ЦП задайте следующие параметры анализа в проекте:
Disabled preprocessor definitions (-U): Отменить определение макроса __CPU_TC1793B__.
Preprocessor definitions (-D)Определение макроса __CPU__. Войти __CPU__=, где xxxxxx - имя ЦП.
Кроме того, определите эквивалент макроса __CPU_TC1793B__ для вашего ЦП. Например, введите __CPU_TC1793A__.
Вместо указания компилятора вручную, при отслеживании команды build (makefile), Polyspace может обнаружить ЦП и добавить необходимые определения в проект.
Некоторые ошибки, связанные с конструкциями компилятора TASKING, см. в разделе Ошибки, связанные с компилятором TASKING.
Если в качестве расширений кода в IDE используется Polyspace, введите эту опцию в файл опций анализа. См. файл параметров.
Параметр: -compiler tasking -target |
Значение: tricore | c166 | rh850 | arm |
По умолчанию: tricore |
Пример (поиск ошибок): polyspace-bug-finder -compiler tasking -target tricore |
Пример (проверка кода): polyspace-code-prover -compiler tasking -target tricore |
Пример (сервер поиска ошибок):
polyspace-bug-finder-server -compiler tasking -target tricore |
Пример (сервер проверки кода):
polyspace-code-prover-server -compiler tasking -target tricore |