exponenta event banner

Что такое настройка замены кода?

Настройте, как и когда генератор кода заменяет код C/C + +, который он создает по умолчанию для функций и операторов, путем разработки пользовательской библиотеки замены кода. Библиотеки можно разрабатывать в интерактивном режиме с помощью средства замены кода или программным способом.

  • Разработка библиотек, адаптированных к конкретным требованиям приложений

  • Добавление идентификаторов в список зарезервированных ключевых слов, рассматриваемых генератором кода при замене кода

  • Настройка процесса сопоставления и замены генератора кода для функций

Начните разработку библиотеки Quick Start Code Replacement Library - Simulink ®.

Процесс подбора и замены кода

Когда генератор кода обнаруживает узел вызова для функции или оператора, он:

  1. Создает и частично заполняет объект записи замены кода именем функции или оператора или ключевыми и концептуальными аргументами.

  2. Использует объект entry для запроса сконфигурированной библиотеки замены кода на соответствие концептуальному представлению. Генератор кода выполняет поиск совпадений в таблицах в библиотеке замены кода в порядке их отображения в библиотеке. При поиске совпадения генератор кода учитывает:

    • Концептуальное имя или ключ

    • Аргументы, включая количество, тип, квалификаторы типов и сложность

    • Алгоритм (метод вычисления)

    • Режимы насыщения и округления с фиксированной точкой

    • Приоритет

  3. При наличии совпадения генератор кода возвращает объект замены кода, полностью заполненный концептуальным представлением, представлением реализации и приоритетом. Если генератор кода находит несколько совпадений в таблице, приоритет записи определяет совпадение. Приоритет может находиться в диапазоне от 0 до 100. Наивысший приоритет - 0. Генератор кода использует запись с более высоким приоритетом по сравнению с аналогичной записью с более низким приоритетом.

  4. Использует прототип функции замены C или C++ в объекте замены кода для создания кода.

Ограничения по настройке замены кода

  • Проверка замены кода - возможно, что замена кода ведет себя иначе, чем вы ожидаете. Например, типы данных, наблюдаемые при вводе генератора кода, могут не совпадать с типами данных, используемыми генератором кода в качестве промежуточных типов данных во время операции. Проверьте замены кода, проверив созданный код. См. раздел Проверка библиотеки замены кода.

  • Маркеры в путях к файлам - можно включать маркеры в пути к файлам при указании информации построения для записи замены кода только с помощью интерфейса программирования. Возможность включения маркеров недоступна в средстве замены кода. См. раздел Указание сведений о построении в разделе Определение оптимизации библиотеки замены кода.

  • Замены операций сложения и вычитания - соответствующие ограничения см. в разделе Замена кода оператора сложения и вычитания.

  • coder.replace функция - см. coder.replace для соответствующих ограничений.

  • coder.dataAlignment функция - см. coder.dataAlignment для соответствующих ограничений.

Связанные темы