[ABI] Implement Windows ABI for x86_64
Summary: Implement the ABI for WIndows-x86_64 including register info and calling convention. Handled nested struct returned in register (SysV doesn't have it supported) Reviewers: xiaobai, compnerd Reviewed By: compnerd Subscribers: labath, jasonmolenda, fedor.sergeev, mgorny, teemperor, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D62213 llvm-svn: 364216
This commit is contained in:
@@ -34,6 +34,7 @@
|
||||
#include "Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h"
|
||||
#include "Plugins/ABI/SysV-s390x/ABISysV_s390x.h"
|
||||
#include "Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h"
|
||||
#include "Plugins/ABI/Windows-x86_64/ABIWindows_x86_64.h"
|
||||
#include "Plugins/Architecture/Arm/ArchitectureArm.h"
|
||||
#include "Plugins/Architecture/Mips/ArchitectureMips.h"
|
||||
#include "Plugins/Architecture/PPC64/ArchitecturePPC64.h"
|
||||
@@ -186,6 +187,7 @@ llvm::Error SystemInitializerFull::Initialize() {
|
||||
ABISysV_mips::Initialize();
|
||||
ABISysV_mips64::Initialize();
|
||||
ABISysV_s390x::Initialize();
|
||||
ABIWindows_x86_64::Initialize();
|
||||
|
||||
ArchitectureArm::Initialize();
|
||||
ArchitectureMips::Initialize();
|
||||
@@ -299,6 +301,7 @@ void SystemInitializerFull::Terminate() {
|
||||
ABISysV_mips::Terminate();
|
||||
ABISysV_mips64::Terminate();
|
||||
ABISysV_s390x::Terminate();
|
||||
ABIWindows_x86_64::Terminate();
|
||||
DisassemblerLLVMC::Terminate();
|
||||
|
||||
JITLoaderGDB::Terminate();
|
||||
|
||||
Reference in New Issue
Block a user