-compiler tasking
)Укажите компилятор Altium TASKING
Задайте tasking
для Compiler (-compiler)
если вы скомпилируете свой код с помощью Altium® Компилятор TASKING. Указав компилятор, можно избежать ошибок компиляции из синтаксиса, который не является частью Standard, но происходит из языковых расширений.
Затем укажите тип целевого процессора. Если вы выбираете tasking
для Compiler, в пользовательском интерфейсе Polyspace® настольные продукты, вы видите только процессоры, разрешенные для компилятора TASKING. Ваш выбор целевого процессора определяет размер фундаментальных типов данных, конечность целевой машины и определенные определения ключевых слов.
Если вы задаете tasking
компилятор, вы должны задать путь к файлам заголовка компилятора. Смотрите раздел «Предоставление заголовков стандартных библиотек для анализа Polyspace».
Программное обеспечение поддерживает различные версии компилятора TASKING, в зависимости от цели:
TriCore: 6.x и более старые версии
C166: 4.x и более старые версии
ARM: 5.x и более старые версии
RH850: 2.x и более старые версии
Целевые системы используют следующие размеры по умолчанию в битах для основных типов. В отличие от целей для других компиляторов, вы не видите эти размеры в пользовательском интерфейсе.
Цель | char | короткий | int | долго | длинный длинный | плавание | дважды | длинный двойной | ptr | Знак по умолчанию char | 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 _ рабочий стол
является папкой установки Polyspace, например polyspaceroot
C:\Program Files\Polyspace\R2019a
.
Используется TC1793 центральный процессор. Если вы используете другой центральный процессор, задайте в проекте следующие опции анализа:
Disabled preprocessor definitions (-U)
: Не определите макрос __CPU_TC1793B__
.
Preprocessor definitions (-D)
: Определите макрос __CPU__
. Введите __ центральный процессор
, где __ = xxx
xxx
- имя вашего центрального процессора.
Кроме того, задайте эквивалент макроса __CPU_TC1793B__
для вашего центрального процессора. Для образца введите __CPU_TC1793A__
.
Вместо того, чтобы вручную указывать компилятор, если вы прослеживаете команду build (make-файл), Polyspace может обнаружить ваш центральный процессор и добавить необходимые определения в ваш проект.
Для некоторых ошибок, связанных с конструкциями конкретного компилятора TASKING, смотрите решения в Errors Related to TASKING Compiler.
Если вы используете Polyspace в качестве расширений You Code в IDE, введите эту опцию в файл опций анализа. См. файл опций.
Параметр: -compiler tasking -target |
Значение: tricore | c166 | rh850 | arm |
По умолчанию: tricore |
Пример (Bug Finder): polyspace-bug-finder -compiler tasking -target tricore |
Пример (Code Prover): polyspace-code-prover -compiler tasking -target tricore |
Пример (Bug Finder Server):
polyspace-bug-finder-server -compiler tasking -target tricore |
Пример (Code Prover Server):
polyspace-code-prover-server -compiler tasking -target tricore |