Use Align for TFL::TransientStackAlignment
[llvm-core.git] / test / Demangle / ms-operators.test
blobb940488786631dd46f6c88bcbe4791f3c5394224
1 ; RUN: llvm-undname < %s | FileCheck %s
3 ; CHECK-NOT: Invalid mangled name
5 ??0Base@@QEAA@XZ
6 ; CHECK: __cdecl Base::Base(void)
8 ??1Base@@UEAA@XZ
9 ; CHECK: virtual __cdecl Base::~Base(void)
11 ??2@YAPEAX_K@Z
12 ; CHECK: void * __cdecl operator new(unsigned __int64)
14 ??3@YAXPEAX_K@Z
15 ; CHECK: void __cdecl operator delete(void *, unsigned __int64)
17 ??4Base@@QEAAHH@Z
18 ; CHECK: int __cdecl Base::operator=(int)
20 ??6Base@@QEAAHH@Z
21 ; CHECK: int __cdecl Base::operator<<(int)
23 ??5Base@@QEAAHH@Z
24 ; CHECK: int __cdecl Base::operator>>(int)
26 ??7Base@@QEAAHXZ
27 ; CHECK: int __cdecl Base::operator!(void)
29 ??8Base@@QEAAHH@Z
30 ; CHECK: int __cdecl Base::operator==(int)
32 ??9Base@@QEAAHH@Z
33 ; CHECK: int __cdecl Base::operator!=(int)
35 ??ABase@@QEAAHH@Z
36 ; CHECK: int __cdecl Base::operator[](int)
38 ??BBase@@QEAAHXZ
39 ; CHECK: __cdecl Base::operator int(void)
41 ??CBase@@QEAAHXZ
42 ; CHECK: int __cdecl Base::operator->(void)
44 ??DBase@@QEAAHXZ
45 ; CHECK: int __cdecl Base::operator*(void)
47 ??EBase@@QEAAHXZ
48 ; CHECK: int __cdecl Base::operator++(void)
50 ??EBase@@QEAAHH@Z
51 ; CHECK: int __cdecl Base::operator++(int)
53 ??FBase@@QEAAHXZ
54 ; CHECK: int __cdecl Base::operator--(void)
56 ??FBase@@QEAAHH@Z
57 ; CHECK: int __cdecl Base::operator--(int)
59 ??GBase@@QEAAHH@Z
60 ; CHECK: int __cdecl Base::operator-(int)
62 ??HBase@@QEAAHH@Z
63 ; CHECK: int __cdecl Base::operator+(int)
65 ??IBase@@QEAAHH@Z
66 ; CHECK: int __cdecl Base::operator&(int)
68 ??JBase@@QEAAHH@Z
69 ; CHECK: int __cdecl Base::operator->*(int)
71 ??KBase@@QEAAHH@Z
72 ; CHECK: int __cdecl Base::operator/(int)
74 ??LBase@@QEAAHH@Z
75 ; CHECK: int __cdecl Base::operator%(int)
77 ??MBase@@QEAAHH@Z
78 ; CHECK: int __cdecl Base::operator<(int)
80 ??NBase@@QEAAHH@Z
81 ; CHECK: int __cdecl Base::operator<=(int)
83 ??OBase@@QEAAHH@Z
84 ; CHECK: int __cdecl Base::operator>(int)
86 ??PBase@@QEAAHH@Z
87 ; CHECK: int __cdecl Base::operator>=(int)
89 ??QBase@@QEAAHH@Z
90 ; CHECK: int __cdecl Base::operator,(int)
92 ??RBase@@QEAAHXZ
93 ; CHECK: int __cdecl Base::operator()(void)
95 ??SBase@@QEAAHXZ
96 ; CHECK: int __cdecl Base::operator~(void)
98 ??TBase@@QEAAHH@Z
99 ; CHECK: int __cdecl Base::operator^(int)
101 ??UBase@@QEAAHH@Z
102 ; CHECK: int __cdecl Base::operator|(int)
104 ??VBase@@QEAAHH@Z
105 ; CHECK: int __cdecl Base::operator&&(int)
107 ??WBase@@QEAAHH@Z
108 ; CHECK: int __cdecl Base::operator||(int)
110 ??XBase@@QEAAHH@Z
111 ; CHECK: int __cdecl Base::operator*=(int)
113 ??YBase@@QEAAHH@Z
114 ; CHECK: int __cdecl Base::operator+=(int)
116 ??ZBase@@QEAAHH@Z
117 ; CHECK: int __cdecl Base::operator-=(int)
119 ??_0Base@@QEAAHH@Z
120 ; CHECK: int __cdecl Base::operator/=(int)
122 ??_1Base@@QEAAHH@Z
123 ; CHECK: int __cdecl Base::operator%=(int)
125 ??_2Base@@QEAAHH@Z
126 ; CHECK: int __cdecl Base::operator>>=(int)
128 ??_3Base@@QEAAHH@Z
129 ; CHECK: int __cdecl Base::operator<<=(int)
131 ??_4Base@@QEAAHH@Z
132 ; CHECK: int __cdecl Base::operator&=(int)
134 ??_5Base@@QEAAHH@Z
135 ; CHECK: int __cdecl Base::operator|=(int)
137 ??_6Base@@QEAAHH@Z
138 ; CHECK: int __cdecl Base::operator^=(int)
140 ??_7Base@@6B@
141 ; CHECK: const Base::`vftable'
143 ??_7A@B@@6BC@D@@@
144 ; CHECK: const B::A::`vftable'{for `D::C'}
146 ??_8Middle2@@7B@
147 ; CHECK: const Middle2::`vbtable'
149 ??_9Base@@$B7AA
150 ; CHECK: [thunk]: __cdecl Base::`vcall'{8, {flat}}
152 ??_B?1??getS@@YAAAUS@@XZ@51
153 ; CHECK: `struct S & __cdecl getS(void)'::`2'::`local static guard'{2}
155 ??_C@_02PCEFGMJL@hi?$AA@
156 ; CHECK: "hi"
158 ??_DDiamond@@QEAAXXZ
159 ; CHECK: void __cdecl Diamond::`vbase dtor'(void)
161 ??_EBase@@UEAAPEAXI@Z
162 ; CHECK: virtual void * __cdecl Base::`vector deleting dtor'(unsigned int)
164 ??_EBase@@G3AEPAXI@Z
165 ; CHECK: [thunk]: private: void * __thiscall Base::`vector deleting dtor'`adjustor{4}'(unsigned int)
167 ??_F?$SomeTemplate@H@@QAEXXZ
168 ; CHECK: void __thiscall SomeTemplate<int>::`default ctor closure'(void)
170 ??_GBase@@UEAAPEAXI@Z
171 ; CHECK: virtual void * __cdecl Base::`scalar deleting dtor'(unsigned int)
173 ??_H@YAXPEAX_K1P6APEAX0@Z@Z
174 ; CHECK: void __cdecl `vector ctor iterator'(void *, unsigned __int64, unsigned __int64, void * (__cdecl *)(void *))
176 ??_I@YAXPEAX_K1P6AX0@Z@Z
177 ; CHECK: void __cdecl `vector dtor iterator'(void *, unsigned __int64, unsigned __int64, void (__cdecl *)(void *))
179 ??_JBase@@UEAAPEAXI@Z
180 ; CHECK: virtual void * __cdecl Base::`vector vbase ctor iterator'(unsigned int)
182 ??_KBase@@UEAAPEAXI@Z
183 ; CHECK: virtual void * __cdecl Base::`virtual displacement map'(unsigned int)
185 ??_LBase@@UEAAPEAXI@Z
186 ; CHECK: virtual void * __cdecl Base::`eh vector ctor iterator'(unsigned int)
188 ??_MBase@@UEAAPEAXI@Z
189 ; CHECK: virtual void * __cdecl Base::`eh vector dtor iterator'(unsigned int)
191 ??_NBase@@UEAAPEAXI@Z
192 ; CHECK: virtual void * __cdecl Base::`eh vector vbase ctor iterator'(unsigned int)
194 ??_O?$SomeTemplate@H@@QAEXXZ
195 ; CHECK: void __thiscall SomeTemplate<int>::`copy ctor closure'(void)
197 ??_SBase@@6B@
198 ; CHECK: const Base::`local vftable'
200 ??_TDerived@@QEAAXXZ
201 ; CHECK: void __cdecl Derived::`local vftable ctor closure'(void)
203 ??_U@YAPEAX_KAEAVklass@@@Z
204 ; CHECK: void * __cdecl operator new[](unsigned __int64, class klass &)
206 ??_V@YAXPEAXAEAVklass@@@Z
207 ; CHECK: void __cdecl operator delete[](void *, class klass &)
209 ??_R0?AUBase@@@8
210 ; CHECK: struct Base `RTTI Type Descriptor'
212 .?AUBase@@
213 ; CHECK: struct Base `RTTI Type Descriptor Name'
215 ??_R1A@?0A@EA@Base@@8
216 ; CHECK: Base::`RTTI Base Class Descriptor at (0, -1, 0, 64)'
218 ??_R2Base@@8
219 ; CHECK: Base::`RTTI Base Class Array'
221 ??_R3Base@@8
222 ; CHECK: Base::`RTTI Class Hierarchy Descriptor'
224 ??_R4Base@@6B@
225 ; CHECK: const Base::`RTTI Complete Object Locator'
227 ; Generated for `int Foo = f(4);` at global scope.
228 ??__EFoo@@YAXXZ
229 ; CHECK: void __cdecl `dynamic initializer for 'Foo''(void)
231 ; Generated for
232 ;   class C {  static int i; };
233 ;   int C::i = f(5);
234 ??__E?i@C@@0HA@@YAXXZ
235 ; CHECK: void __cdecl `dynamic initializer for `private: static int C::i''(void)
237 ??__FFoo@@YAXXZ
238 ; CHECK: void __cdecl `dynamic atexit destructor for 'Foo''(void)
240 ??__F_decisionToDFA@XPathLexer@@0V?$vector@VDFA@dfa@antlr4@@V?$allocator@VDFA@dfa@antlr4@@@std@@@std@@A@YAXXZ
241 ; CHECK: void __cdecl `dynamic atexit destructor for `private: static class std::vector<class antlr4::dfa::DFA, class std::allocator<class antlr4::dfa::DFA>> XPathLexer::_decisionToDFA''(void)
243 ??__J?1??f@@YAAAUS@@XZ@51
244 ; CHECK: `struct S & __cdecl f(void)'::`2'::`local static thread guard'{2}
246 ??__K_deg@@YAHO@Z
247 ; CHECK: int __cdecl operator ""_deg(long double)