Если вы выбираете tasking
для опции Compiler (-compiler)
, можно столкнуться с этой проблемой.
Во время анализа Polyspace® вы видите ошибку, связанную со Специальным Функциональным типом данных Регистра.
При компиляции с ОПРЕДЕЛЯЮЩИМ ЗАДАЧУ компилятором вы обычно используете следующие флаги компилятора, чтобы задать, где типы данных Специального функционального регистра (SFR) объявляются:
- cpu=
: Компилятор неявно xxx
#include
s файл sfr/reg
в ваших исходных файлах. Однажды xxx
.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 Bug Finder). Можно ввести опцию многократно.
- cpu=
: Для вашего анализа Polyspace использовать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
.asfrC:\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 файлы, когда вы прослеживаете свою команду сборки. Для получения дополнительной информации смотрите Требования для Создания Проекта от Систем сборки.