Поделиться через


/homeparams (копирование параметров регистров в стек)

Принудительная запись параметров, переданных в регистрах, в соответствующие места в стеке при вхождении в функцию.

/homeparams

Заметки

Данный параметр компилятора предназначен только для компиляторов x64 (машинная компиляция и кросс-компиляция).

При передаче параметров в компиляцию x64 соглашениям о вызове требуется пространство стека для параметров, даже если параметры передаются в регистрах. Для получения дополнительной информации см. Передача параметров. Тем не менее параметры регистра в построении выпуска не записываются по умолчанию в стек, в пространство, уже предоставленное для параметров. Вследствие этого, выполнение отладки оптимизированного построения (построение выпуска) программы несколько затруднено.

Чтобы иметь возможность выполнить отладку построения выпуска, следует использовать параметр /homeparams. Для параметра /homeparams характерны потери производительности, поскольку он требует цикла для загрузки параметров регистра в стек.

В отладочном построении стек всегда заполняется параметрами, переданными в регистрах.

Установка данного параметра компилятора в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Дополнительные сведения см. в разделе Открытие свойств страниц проекта.

  2. Откройте папку C/C++.

  3. Выберите страницу свойств Командная строка.

  4. Введите параметры компилятора в поле Дополнительные параметры.

Установка данного параметра компилятора программным способом

См. также

Ссылки

Параметры компилятора

Настройка параметров компилятора