brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.5 KiB · eca910e Raw
104 lines · plain
1REQUIRES: target-windows, msvc2RUN: mkdir -p %t.dir3RUN: %build --compiler=clang-cl --mode=compile --arch=32 --nodefaultlib --output=%t.dir/ClassLayoutTest.cpp.obj %S/Inputs/ClassLayoutTest.cpp4RUN: %build --compiler=msvc --mode=link --arch=32 --nodefaultlib --output=%t.dir/ClassLayoutTest.cpp.exe %t.dir/ClassLayoutTest.cpp.obj5RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck %s6RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=ENUM %s7RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=UNION %s8RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=STRUCT %s9RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=COMPLEX %s10RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=LIST %s11RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=UNNAMED-STRUCT %s12RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=BASE %s13RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=FRIEND %s14RUN: lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=CLASS %s15RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck %s16RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=ENUM %s17RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=UNION %s18RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=STRUCT %s19RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=COMPLEX %s20RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=LIST %s21RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=UNNAMED-STRUCT %s22RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=BASE %s23RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=FRIEND %s24RUN: env LLDB_USE_NATIVE_PDB_READER=1 lldb-test symbols %t.dir/ClassLayoutTest.cpp.exe | FileCheck --check-prefix=CLASS %s25 26CHECK: Module [[MOD:.*]]27CHECK: SymbolFile {{(native-)?}}pdb ([[MOD]])28CHECK: {{^[0-9A-F]+}}:   CompileUnit{{[{]0x[0-9a-f]+[}]}}, language = "c++", file = '{{.*}}\ClassLayoutTest.cpp'29 30ENUM:  name = "Enum", size = 4,  decl = ClassLayoutTest.cpp:531ENUM-SAME: enum Enum {32ENUM:    RED,33ENUM:    GREEN,34ENUM:    BLUE35ENUM:}36 37UNION:  name = "Union", size = 4, decl = ClassLayoutTest.cpp:938UNION-SAME: union Union {39UNION:    short Row;40UNION:    unsigned short Col;41UNION:    int Line : 16;42UNION:    long Table;43UNION:}44 45STRUCT:  name = "Struct", size = 64, decl = ClassLayoutTest.cpp:2246STRUCT-SAME: struct Struct {47STRUCT:    bool A;48STRUCT:    unsigned char UCharVar;49STRUCT:    unsigned int UIntVar;50STRUCT:    long long LongLongVar;51STRUCT:    Enum EnumVar;52STRUCT:    int array[10];53STRUCT:}54 55COMPLEX:  name = "Complex", size = 368, decl = ClassLayoutTest.cpp:3356COMPLEX-SAME: struct Complex {57COMPLEX:    _List *array[90];58COMPLEX:    int x;59COMPLEX:    int a;60COMPLEX:    float b;61COMPLEX:}62 63LIST:  name = "_List", size = 12, decl = ClassLayoutTest.cpp:4564LIST-SAME: struct _List {65LIST:    _List *current;66LIST:    _List *previous;67LIST:    _List *next;68LIST:}69 70UNNAMED-STRUCT:  name = "UnnamedStruct", size = 4, decl = ClassLayoutTest.cpp:5271UNNAMED-STRUCT-SAME: struct UnnamedStruct {72UNNAMED-STRUCT:   int a;73UNNAMED-STRUCT:}74 75BASE:  name = "Base", size = 4,  decl = ClassLayoutTest.cpp:5976BASE-SAME: class Base {77BASE:    int a;78BASE:    Base();79BASE:    ~Base();80BASE:    int Get();81BASE:}82 83FRIEND:  name = "Friend", size = 1, decl = ClassLayoutTest.cpp:7084FRIEND-SAME: class Friend {85FRIEND:    int f();86FRIEND: }87 88CLASS:  name = "Class", size = 88, decl = ClassLayoutTest.cpp:7489CLASS-SAME: class Class : public MemberTest::Base {90CLASS:    static int m_static;91CLASS:    int m_public;92CLASS:    Struct m_struct;93CLASS:    Union m_union;94CLASS:    int m_private;95CLASS:    int m_protected;96CLASS:    Class();97CLASS:    Class(int);98CLASS:    ~Class();99CLASS:    {{(static )?}}int {{.*}}StaticMemberFunc(int, ...);100CLASS:    int Get();101CLASS:    int f(MemberTest::Friend);102CLASS:    bool operator==(const MemberTest::Class &)103CLASS:}104