> >  Okay, I see the test done by virt-call-offsets.cpp is moved to 
> > member-function-pointers.cpp.
> > Do you know what the fix on X86/ARM ctor ABI difference status is [1]?
> 
> virt-call-offsets.cpp was not expecting to be tested on an ARM host.  That's
> a legitimate flaw in the test, but it does not indicate a bug in our handling 
> of
> the ARM C++ ABI.  I implemented returning this from ctors and dtors on
> ARM targets in August 2010 in r112588, and as far as I know, there is nothing 
> to fix.

  I know the ARM C++ ctor ABI is handled correctly. :) Actually I want to know
the status of the patch [1] which change the matching rule from

// CHECK: call void @_ZN10destroyme1D1Ev

to 

// CHECK: call {{.*}}* @_ZN10destroyme1D1Ev
 
  I don't see they are applied in the trunk.

> I do know that there are parts of the ARM C++ ABI that we do not currently
> implement:  for example, the ARM ABI has slightly different rules for 
> selecting
> a key function, but clang always uses the base Itanium rule.
> 
> Note that not all ARM-based platforms actually follow the full ARM C++ ABI.
> iOS, for example, does not guarantee that ctors and dtors return this;  clang
> does it, but gcc and llvm-gcc do not.

  Thanks for the info. ;)

Regards,
chenwj

[1]
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120430/056982.html

-- 
Wei-Ren Chen (陳韋任)
Computer Systems Lab, Institute of Information Science,
Academia Sinica, Taiwan (R.O.C.)
Tel:886-2-2788-3799 #1667
Homepage: http://people.cs.nctu.edu.tw/~chenwj

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to