brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · d1d0bb0 Raw
52 lines · cpp
1// clang-format off2// REQUIRES: lld, (target-x86 || target-x86_64)3 4// RUN: %build --compiler=clang-cl --arch=32 --nodefaultlib --output=%t-32.exe %s5// RUN: lldb-test symbols %t-32.exe | FileCheck --check-prefixes CHECK-32,CHECK-BOTH %s6// RUN: %build --compiler=clang-cl --arch=64 --nodefaultlib --output=%t-64.exe %s7// RUN: lldb-test symbols %t-64.exe | FileCheck --check-prefixes CHECK-64,CHECK-BOTH %s8 9extern "C" {10int FuncCCall() { return 0; }11int __stdcall FuncStdCall() { return 0; }12int __fastcall FuncFastCall() { return 0; }13int __vectorcall FuncVectorCall() { return 0; }14 15int __cdecl _underscoreCdecl() { return 0; }16int __stdcall _underscoreStdcall() { return 0; }17int __fastcall _underscoreFastcall() { return 0; }18int __vectorcall _underscoreVectorcall() { return 0; }19}20 21int main() {22  FuncCCall();23  FuncStdCall();24  FuncFastCall();25  FuncVectorCall();26  _underscoreCdecl();27  _underscoreStdcall();28  _underscoreFastcall();29  _underscoreVectorcall();30  return 0;31}32 33// CHECK-BOTH-DAG: Function{{.*}}, demangled = FuncCCall,34// CHECK-BOTH-DAG: Function{{.*}}, demangled = FuncVectorCall@@0,35// CHECK-BOTH-DAG: Function{{.*}}, demangled = _underscoreCdecl,36// CHECK-BOTH-DAG: Function{{.*}}, demangled = _underscoreVectorcall@@0,37// CHECK-BOTH-DAG: Function{{.*}}, demangled = main,38 39// __stdcall and __fastcall aren't available on 64 bit40 41// CHECK-32-DAG: Function{{.*}}, demangled = _FuncStdCall@0,42// CHECK-64-DAG: Function{{.*}}, demangled = FuncStdCall,43 44// CHECK-32-DAG: Function{{.*}}, demangled = @FuncFastCall@0,45// CHECK-64-DAG: Function{{.*}}, demangled = FuncFastCall,46 47// CHECK-32-DAG: Function{{.*}}, demangled = __underscoreStdcall@0,48// CHECK-64-DAG: Function{{.*}}, demangled = _underscoreStdcall,49 50// CHECK-32-DAG: Function{{.*}}, demangled = @_underscoreFastcall@0,51// CHECK-64-DAG: Function{{.*}}, demangled = _underscoreFastcall,52