-compiler
iar-ew
)Укажите компилятор IAR Embedded Workbench
Задайте iar-ew
для Compiler (-compiler)
если вы компилируете код с помощью компилятора IAR Embedded Workbench. Указав компилятор, можно избежать ошибок компиляции из синтаксиса, который не является частью Standard, но происходит из языковых расширений.
Затем укажите тип целевого процессора. Если вы выбираете iar-ew
для Compiler, в пользовательском интерфейсе Polyspace® настольных продуктов, вы видите только процессоры, разрешенные для компилятора IAR Embedded Workbench. Ваш выбор целевого процессора определяет размер фундаментальных типов данных, конечность целевой машины и определенные определения ключевых слов.
Если вы задаете iar-ew
компилятор, вы должны задать путь к файлам заголовка компилятора. Смотрите раздел «Предоставление заголовков стандартных библиотек для анализа Polyspace».
Целевые системы используют следующие размеры по умолчанию в битах для основных типов. Вы не видите эти размеры в пользовательском интерфейсе десктопных продуктов Polyspace.
Цель | char | короткий | int | долго | длинный длинный | плавание | дважды | длинный двойной | ptr | Знак по умолчанию char | Endianness | Выравнивание | Определение size_t | Определение wchar_t |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
arm | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | Неподписанный | Мало | 64 | без знака int | подпись короткая |
avr | 8 | 16 | 16 | 32 | 64 | 32 | 32 | 32 | 16 | Неподписанный | Мало | 8 | без знака int | беззнаковый короткий |
msp430 | 8 | 16 | 16 | 32 | 64 | 32 | 32 | 32 | 16 | Неподписанный | Мало | 16 | без знака int | беззнаковый короткий |
rh850 | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | Неподписанный | Мало | 32 | без знака int | подпись короткая |
rl78 | 8 | 16 | 16 | 32 | 64 | 32 | 32 | 32 | 16 | Неподписанный | Мало | 16 | без знака int | беззнаковый короткий |
Спецификация компилятора также определяет значения многих макросов, специфичных для компилятора. Если вы хотите знать, как Polyspace задает определенный макрос, используйте опцию -dump-preprocessing-info
.
Чтобы переопределить определение макроса, используйте опцию Preprocessor definitions (-D)
.
Чтобы не определить макрос, используйте опцию Disabled preprocessor definitions (-U)
.
Polyspace не поддерживает некоторые конструкции, специфичные для компилятора IAR.
Список неподдерживаемых конструкций см. в разделе codeprover_limitations.pdf
в
. Здесь, polyspaceroot
\ polyspace\verifier\code _ prover _ рабочий стол
является MATLAB® папка установки, для образца, polyspaceroot
C:\Program Files\Polyspace\R2019a
.
Если вы используете Polyspace в качестве расширений You Code в IDE, введите эту опцию в файл опций анализа. См. файл опций.
Параметр:
-compiler iar-ew -target |
Значение:
arm | avr | msp430 | rh850 | rl78 |
По умолчанию:
arm
|
Пример (Bug Finder):
polyspace-bug-finder -compiler iar-ew -target rl78 |
Пример (Code Prover):
polyspace-code-prover -compiler iar-ew -target rl78 |
Пример (Bug Finder Server):
polyspace-bug-finder-server -compiler iar-ew -target rl78 |
Пример (Code Prover Server):
polyspace-code-prover-server -compiler iar-ew -target rl78 |