1bc068586SAdrian Prantl // REQUIRES: x86-registered-target 25365532bSArgyrios Kyrtzidis // RUN: c-index-test -write-pch %t_linux.ast -target i686-pc-linux-gnu %s 344a206f8SEli Bendersky // RUN: c-index-test -test-print-mangle %t_linux.ast | FileCheck %s --check-prefix=ITANIUM 444a206f8SEli Bendersky 53f84b735SArgyrios Kyrtzidis // RUN: c-index-test -write-pch %t_macho.ast -target x86_64-apple-darwin %s 679759595SEli Bendersky // RUN: c-index-test -test-print-mangle %t_macho.ast | FileCheck %s --check-prefix=MACHO 779759595SEli Bendersky 85365532bSArgyrios Kyrtzidis // RUN: c-index-test -write-pch %t_msft.ast -target i686-pc-win32 %s 944a206f8SEli Bendersky // RUN: c-index-test -test-print-mangle %t_msft.ast | FileCheck %s --check-prefix=MICROSOFT 1044a206f8SEli Bendersky 1144a206f8SEli Bendersky int foo(int, int); 1244a206f8SEli Bendersky // ITANIUM: mangled=_Z3fooii 1379759595SEli Bendersky // MACHO: mangled=__Z3fooii 1444a206f8SEli Bendersky // MICROSOFT: mangled=?foo@@YAHHH 1544a206f8SEli Bendersky 1644a206f8SEli Bendersky int foo(float, int); 1744a206f8SEli Bendersky // ITANIUM: mangled=_Z3foofi 1879759595SEli Bendersky // MACHO: mangled=__Z3foofi 1944a206f8SEli Bendersky // MICROSOFT: mangled=?foo@@YAHMH 2044a206f8SEli Bendersky 2144a206f8SEli Bendersky struct S { 2244a206f8SEli Bendersky int x, y; 2344a206f8SEli Bendersky }; 2444a206f8SEli Bendersky // ITANIUM: StructDecl{{.*}}mangled=] 2579759595SEli Bendersky // MACHO: StructDecl{{.*}}mangled=] 2644a206f8SEli Bendersky // MICROSOFT: StructDecl{{.*}}mangled=] 2744a206f8SEli Bendersky 2844a206f8SEli Bendersky int foo(S, S&); 2979759595SEli Bendersky // ITANIUM: mangled=_Z3foo1SRS_ 3079759595SEli Bendersky // MACHO: mangled=__Z3foo1SRS_ 3144a206f8SEli Bendersky // MICROSOFT: mangled=?foo@@YAHUS 32*f8d44de1SEhsan Akhgari 33*f8d44de1SEhsan Akhgari extern "C" int foo(int); 34*f8d44de1SEhsan Akhgari // ITANIUM: mangled=foo 35*f8d44de1SEhsan Akhgari // MACHO: mangled=_foo 36*f8d44de1SEhsan Akhgari // MICROSOFT: mangled=_foo 37