Если вы выбираете tasking
для опции Compiler (-compiler)
, можно столкнуться с этой проблемой.
Во время анализа Polyspace® вы видите ошибку, связанную со Специальным Функциональным типом данных Регистра.
При компиляции с ОПРЕДЕЛЯЮЩИМ ЗАДАЧУ компилятором вы обычно используете следующие флаги компилятора, чтобы задать, где типы данных Специального функционального регистра (SFR) объявляются:
: компилятор неявно --cpu=xxx
#include
s файл
в ваших исходных файлах. Однажды sfr/regxxx.sfr
#include
- редактор, можно использовать Специальные Функциональные Регистры (швейцарский-франк-s), объявленный в том файле .sfr
.
--alternative-sfr-file
: компилятор использует альтернативный файл швейцарского франка вместо регулярного файла швейцарского франка. Можно использовать Специальные Функциональные Регистры (швейцарский-франк-s), объявленный в том альтернативном файле швейцарского франка.
Если вы задаете ОПРЕДЕЛЯЮЩИЙ ЗАДАЧУ компилятор для своего анализа Polyspace, анализ делает следующие предположения об этих флагах компилятора:
: анализ выбирает определенное значение --cpu=xxx
xxx
. Если вы используете различное значение со своим ОПРЕДЕЛЯЮЩИМ ЗАДАЧУ компилятором, можно столкнуться с ошибкой во время анализа Polyspace.
Значение xxx
, что аналитическое использование Polyspace зависит от вашего выбора Target processor type (-target)
:
tricore
: tc1793b
c166
: xc167ci
rh850
: r7f701603
arm
: ARMv7M
--alternative-sfr-file
: анализ принимает, что вы не используете альтернативный файл швейцарского франка. Если вы используете один, можно столкнуться с ошибкой.
Используйте параметр командной строки -compiler-parameter
в своем анализе Polyspace можно следующим образом. Вы используете этот параметр командной строки, чтобы сделать Polyspace, знающий о ваших флагах компилятора. В пользовательском интерфейсе можно ввести параметр командной строки в поле Other
. Можно ввести опцию многократно.
: Для вашего анализа Polyspace использовать--cpu=xxx
-compiler-parameter --cpu=xxx
xxx
является значением, которое вы используете при компиляции с компилятором.--alternative-sfr-file
: Для вашего анализа Polyspace использовать
-compiler-parameter --alternative-sfr-file
Если вы все еще сталкиваетесь с ошибкой, потому что Polyspace не может определить местоположение вашего файла .asfr
, явным образом #include
ваш файл .asfr
в предварительно обработанном коде с помощью опции Include (-include)
.
Как правило, путем к файлу является
. Например, если ваш ОПРЕДЕЛЯЮЩИЙ ЗАДАЧУ компилятор установлен в Tasking_C166_INSTALL_DIR\include\sfr\regCPUNAME.asfr
C:\Program Files\Tasking\C166-VX_v4.0r1\
, и вы используете связанный с центральным процессором флаг -Cxc2287m_104f
или --cpu=xc2287m_104f
, путем является C:\Program Files\Tasking\C166-VX_v4.0r1\include\sfr\regxc2287m.asfr
.
Можно также столкнуться с той же проблемой с альтернативой sfr файлы, когда вы прослеживаете свою команду сборки. Для получения дополнительной информации смотрите Требования для Создания Проекта от Систем сборки.