mirror of https://github.com/acidanthera/audk.git
Add the -mno-red-zone for gcc on x64. Since the GNU calling convention of x64 defines the 128bytes red zone beyond the stack point could not be modified by interrupt or exception handler, and Edk prime assumes all data beyond stack point should be volatile, if not add the option, the interrupt or exception handler may corrupt the red zone, which may be used as temporary storage.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4271 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
ebc1ca5a1b
commit
8a0d144b39
|
@ -464,7 +464,7 @@ RELEASE_WINDDK3790x1830_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT
|
|||
*_CYGWINGCC_IA32_PP_PATH = DEF(CYGWIN_BIN32)/gcc
|
||||
*_CYGWINGCC_IA32_VFRPP_PATH = DEF(CYGWIN_BIN32)/gcc
|
||||
|
||||
*_CYGWINGCC_IA32_CC_FLAGS = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include AutoGen.h
|
||||
*_CYGWINGCC_IA32_CC_FLAGS = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include AutoGen.h
|
||||
|
||||
##################
|
||||
# X64 definitions
|
||||
|
@ -476,7 +476,7 @@ RELEASE_WINDDK3790x1830_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT
|
|||
*_CYGWINGCC_X64_PP_PATH = DEF(CYGWIN_BINX64)/gcc
|
||||
*_CYGWINGCC_X64_VFRPP_PATH = DEF(CYGWIN_BINX64)/gcc
|
||||
|
||||
*_CYGWINGCC_X64_CC_FLAGS = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include AutoGen.h -D_EFI_P64
|
||||
*_CYGWINGCC_X64_CC_FLAGS = -Os -fshort-wchar -fno-strict-aliasing -mno-red-zone -Wall -Werror -c -include AutoGen.h -D_EFI_P64
|
||||
|
||||
####################################################################################
|
||||
#
|
||||
|
|
Loading…
Reference in New Issue