search for: _zti1a

Displaying 5 results from an estimated 5 matches for "_zti1a".

2020 Apr 02
3
RFC: dynamic_cast optimization in LTO
...;br>which coming out of clang would look like so:<br><font face="Default Monospace,Courier New,Courier,monospace"> NULL ! = __dynamic_cast(ptr,<br> &_ZTI1B, // typeinfo of B, the static type of ptr.<br> &_ZTI1A, // typeinfo of A, the destination type.<br> hint) // a static hint about the location of the source subobject w.r.t the complete object.</font><br> <br>If the above conditions can be proven to be true, then an equivalent expression...
2011 Dec 09
1
[LLVMdev] Implementing devirtualization
...st (i32 (%class.A*, %class.A*)* @_ZN1AplERS_ to i8*)] @_ZTVN10__cxxabiv120__si_class_type_infoE = external global i8* @_ZTS1B = linkonce_odr constant [3 x i8] c"1B\00" @_ZTVN10__cxxabiv117__class_type_infoE = external global i8* @_ZTS1A = linkonce_odr constant [3 x i8] c"1A\00" @_ZTI1A = linkonce_odr unnamed_addr constant { i8*, i8* } { i8* bitcast (i8** getelementptr inbounds (i8** @_ZTVN10__cxxabiv117__class_type_infoE, i64 2) to i8*), i8* getelementptr inbounds ([3 x i8]* @_ZTS1A, i32 0, i32 0) } @_ZTI1B = linkonce_odr unnamed_addr constant { i8*, i8*, i8* } { i8* bitcast (i8*...
2011 Dec 09
0
[LLVMdev] Implementing devirtualization
On Thu, Dec 8, 2011 at 2:11 PM, Vitor Luis Menezes <vitor at utexas.edu> wrote: > We've got the following test case: > > > class A { > public: >   int x; >   A(int x) : x(x) {} >   int hoo() {return 4;} >   virtual int foo() {return x;} >   virtual int goo() {return foo()+10;} >   virtual int operator+(A &a) { >     return x + a.x; >   } > };
2017 Sep 22
0
Get function implementation for indirect CallInst.
...void %3(%class.Base* %1)” until find %obj1 = alloca %class.A, align 8, but how can I associate %class.A with @_ZTV1A, so I can get the function from @_ZTV1A ? Thanks! ;virtual tables @_ZTV1A = linkonce_odr unnamed_addr constant { [3 x i8*] } { [3 x i8*] [i8* null, i8* bitcast ({ i8*, i8*, i8* }* @_ZTI1A to i8*), i8* bitcast (void (%class.A*)* @_ZN1A5helloEv to i8*)] }, align 8 @_ZTV1B = linkonce_odr unnamed_addr constant { [3 x i8*] } { [3 x i8*] [i8* null, i8* bitcast ({ i8*, i8*, i8* }* @_ZTI1B to i8*), i8* bitcast (void (%class.B*)* @_ZN1B5helloEv to i8*)] }, align 8 ;A::hello() define linkonc...
2011 Dec 08
2
[LLVMdev] Implementing devirtualization
We've got the following test case: class A { public: int x; A(int x) : x(x) {} int hoo() {return 4;} virtual int foo() {return x;} virtual int goo() {return foo()+10;} virtual int operator+(A &a) { return x + a.x; } }; class B : public A { public: B(int x) : A(x) {} int hoo() {return 2;} virtual int foo() {return A::foo()*2;} }; int main() { A* a = new A(1);