/homeparams (Copy Register Parameters to Stack)
For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.
Forces parameters passed in registers to be written to their locations on the stack upon function entry.
This compiler option is only for the x64 compilers (native and cross compile).
When parameters are passed in an x64 compilation, calling conventions require stackspace for parameters, even for parameters passed in registers. For more information, see Parameter Passing. However, by default in a release build, the register parameters will not be written to the stack, into the space that is already provided for the parameters. This makes it difficult to debug an optimized (release) build of your program.
For a release build, use /homeparams to ensure that you can debug your application. /homeparams does imply a performance disadvantage, because it does require a cycle to load the register parameters on to the stack.
In a debug build, the stack is always populated with parameters passed in registers.
Open the project's Property Pages dialog box. For details, see How to: Open Project Property Pages.
Click the C/C++ folder.
Click the Command Line property page.
Type the compiler option in the Additional Options box.
- See AdditionalOptions.