Lines Matching full:simple

34 namespace simple {  namespace
51 // A simple vtordisp{x,y} thunk for Method@Class is something like:
57 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' (2 entries).
58 // CHECK-NEXT: 0 | void simple::A::f()
60 // CHECK-NEXT: 1 | simple::A::~A() [scalar deleting]
63 // CHECK-LABEL: Thunks for 'simple::A::~A()' (1 entry).
66 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
70 // MANGLING-DAG: @"\01?f@A@simple@@$4PPPPPPPM@A@AEXXZ"
73 // MANGLING-DAG: @"\01??_EA@simple@@$4PPPPPPPM@A@AEPAXI@Z"
80 // CHECK-LABEL: VFTable for 'Z' in 'V3' in 'simple::B' (2 entries).
82 // CHECK-NEXT: 1 | simple::B::~B() [scalar deleting]
85 // CHECK-LABEL: Thunks for 'simple::B::~B()' (1 entry).
88 // CHECK-LABEL: VFTable for 'V2' in 'V3' in 'simple::B' (2 entries).
89 // CHECK-NEXT: 0 | void simple::B::f()
91 // CHECK-NEXT: 1 | simple::B::~B() [scalar deleting]
94 // CHECK-LABEL: Thunks for 'simple::B::~B()' (1 entry).
97 // CHECK-LABEL: Thunks for 'void simple::B::f()' (1 entry).
105 // MANGLING-DAG: @"\01?f@B@simple@@$4PPPPPPPE@A@AEXXZ"
108 // MANGLING-DAG: @"\01??_EB@simple@@$4PPPPPPPE@7AEPAXI@Z"
109 // MANGLING-DAG: @"\01??_EB@simple@@$4PPPPPPPM@A@AEPAXI@Z"
116 // CHECK-LABEL: VFTable for 'Z' in 'V4' in 'simple::C' (2 entries).
118 // CHECK-NEXT: 1 | simple::C::~C() [scalar deleting]
121 // CHECK-LABEL: Thunks for 'simple::C::~C()' (1 entry).
124 // CHECK-LABEL: VFTable for 'V1' in 'V4' in 'simple::C' (2 entries).
125 // CHECK-NEXT: 0 | void simple::C::f()
127 // CHECK-NEXT: 1 | simple::C::~C() [scalar deleting]
130 // CHECK-LABEL: Thunks for 'simple::C::~C()' (1 entry).
133 // CHECK-LABEL: Thunks for 'void simple::C::f()' (1 entry).
136 // CHECK-LABEL: VFTable for 'V2' in 'V4' in 'simple::C' (2 entries).
137 // CHECK-NEXT: 0 | void simple::C::f()
139 // CHECK-NEXT: 1 | simple::C::~C() [scalar deleting]
142 // CHECK-LABEL: Thunks for 'simple::C::~C()' (1 entry).
145 // CHECK-LABEL: Thunks for 'void simple::C::f()' (1 entry).
150 // MANGLING-DAG: @"\01?f@C@simple@@$4PPPPPPPA@3AEXXZ"
151 // MANGLING-DAG: @"\01?f@C@simple@@$4PPPPPPPE@A@AEXXZ"
153 // MANGLING-DAG: @"\01??_EC@simple@@$4PPPPPPPA@M@AEPAXI@Z"
154 // MANGLING-DAG: @"\01??_EC@simple@@$4PPPPPPPE@7AEPAXI@Z"
155 // MANGLING-DAG: @"\01??_EC@simple@@$4PPPPPPPM@A@AEPAXI@Z"
162 // CHECK-LABEL: VFTable for 'V2' in 'V3' in 'simple::B' in 'simple::D' (2 entries).
163 // CHECK-NEXT: 0 | void simple::B::f()
165 // CHECK-NEXT: 1 | simple::D::~D() [scalar deleting]
170 // MANGLING-DAG: @"\01?f@B@simple@@$4PPPPPPPE@3AEXXZ"
180 // CHECK-LABEL: VFTable for 'Z' in 'V3' in 'simple::E' in 'simple::F' (2 entries).
181 // CHECK-NEXT: 0 | void simple::F::g()
183 // CHECK-NEXT: 1 | simple::F::~F() [scalar deleting]
186 // CHECK-LABEL: VFTable for 'V2' in 'V3' in 'simple::E' in 'simple::F' (2 entries).
187 // CHECK-NEXT: 0 | void simple::E::f()
188 // CHECK-NEXT: 1 | simple::F::~F() [scalar deleting]
195 // MANGLING-DAG: @"\01?g@F@simple@@$4PPPPPPPM@A@AEXXZ"{{.*}}??_EF@simple@@$4PPPPPPPM@A@AEPAXI@Z
196 // MANGLING-DAG: ?f@E@simple@@UAEXXZ{{.*}}??_EF@simple@@$4PPPPPPPE@7AEPAXI@Z
202 // CHECK-LABEL: VFTable for 'Z' in 'V3' in 'simple::E' in 'simple::F' in 'simple::G' (2 entries).
203 // CHECK-NEXT: 0 | void simple::F::g()
205 // CHECK-NEXT: 1 | simple::G::~G() [scalar deleting]
208 // CHECK-LABEL: VFTable for 'V2' in 'V3' in 'simple::E' in 'simple::F' in 'simple::G' (2 entries).
209 // CHECK-NEXT: 0 | void simple::E::f()
210 // CHECK-NEXT: 1 | simple::G::~G() [scalar deleting]
216 …// MANGLING-DAG: @"\01?g@F@simple@@$4PPPPPPPM@3AEXXZ"{{.*}}@"\01??_EG@simple@@$4PPPPPPPM@A@AEPAXI@…
217 // MANGLING-DAG: @"\01?f@E@simple@@UAEXXZ"{{.*}}@"\01??_EG@simple@@$4PPPPPPPE@7AEPAXI@Z"
238 struct A : virtual simple::A {
239 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' in 'extended::A' (2 entries).
240 // CHECK-NEXT: 0 | void simple::A::f()
246 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
251 // MANGLING-DAG: @"\01?f@A@simple@@$R477PPPPPPPM@7AEXXZ"
261 struct B : virtual simple::A {
266 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' in 'extended::B' (2 entries).
271 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
282 struct C : virtual simple::A {
283 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' in 'extended::C' (2 entries).
284 // CHECK-NEXT: 0 | void simple::A::f()
288 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
293 // MANGLING-DAG: @"\01?f@A@simple@@$R4M@7PPPPPPPM@7AEXXZ"
348 struct G : virtual simple::A {
352 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' in 'extended::G' (2 entries).
353 // CHECK-NEXT: 0 | void simple::A::f()
359 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
379 // CHECK-LABEL: VFTable for 'V1' in 'simple::A' in 'extended::A' in 'extended::H' (2 entries).
380 // CHECK-NEXT: 0 | void simple::A::f()
384 // CHECK-LABEL: Thunks for 'void simple::A::f()' (1 entry).
388 // MANGLING-DAG: @"\01?f@A@simple@@$R477PPPPPPPM@7AEXXZ"
400 struct A : virtual simple::B {
401 // CHECK-LABEL: VFTable for 'V2' in 'V3' in 'simple::B' in 'pr17738::A' (2 entries).
402 // CHECK-NEXT: 0 | void simple::B::f()
406 // CHECK-LABEL: Thunks for 'void simple::B::f()' (1 entry).
410 // MANGLING-DAG: @"\01?f@B@simple@@$R4BE@7PPPPPPPE@BA@AEXXZ"