summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/member-function-pointers.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Abstract out everything having to do with member pointers into the ABIJohn McCall2010-08-231-2/+2
| | | | | | | | | | | class; they should just be completely opaque throughout IR gen now, although I haven't really audited that. Fix a bug apparently inherited from gcc-4.2 where we failed to null-check member data pointers when performing derived-to-base or base-to-derived conversions on them. llvm-svn: 111789
* Eliminate a stale assertion. Fixes Clang self-host.Douglas Gregor2010-08-221-0/+11
| | | | llvm-svn: 111782
* Clean up a very silly use of first-class aggregates.John McCall2010-08-221-8/+4
| | | | llvm-svn: 111777
* Experiment with using first-class aggregates to represent member functionJohn McCall2010-08-221-30/+22
| | | | | | | | | | pointers. I find the resulting code to be substantially cleaner, and it makes it very easy to use the same APIs for data member pointers (which I have conscientiously avoided here), and it avoids a plethora of potential inefficiencies due to excessive memory copying, but we'll have to see if it actually works. llvm-svn: 111776
* Abstract out member-pointer creation. I'm really unhappy about the currentJohn McCall2010-08-221-0/+20
| | | | | | | | duplication between the constant and non-constant paths in all of this. Implement ARM ABI semantics for member pointer constants and conversion. llvm-svn: 111772
* If we're generating code to create a pointer-to-member functionDouglas Gregor2010-05-031-0/+6
| | | | | | | aggregate and the result of the aggregate is unused, bail out early. Fixes PR7027. llvm-svn: 102942
* When computing the address of a virtual member function pointer, use the ↵Anders Carlsson2010-05-031-10/+21
| | | | | | pointer width instead of hardcoding for 64-bit. llvm-svn: 102921
* Use the right type when taking the address of a non-virtual member function ↵Anders Carlsson2010-02-071-3/+17
| | | | | | pointer. Fixes PR6258. llvm-svn: 95524
* Calculate offset correctly when taking the address of a virtual member function.Anders Carlsson2010-02-041-4/+13
| | | | llvm-svn: 95305
* Make the AST explicitly represent the cast of the first operand of a Eli Friedman2010-01-161-0/+11
| | | | | | pointer-to-member operator. llvm-svn: 93592
* When emitting member function pointers, use the canonical decl if the member ↵Anders Carlsson2010-01-051-0/+11
| | | | | | function is virtual. Fixes PR5940. llvm-svn: 92680
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Move the code for converting a member pointer to a bool so that it is usableEli Friedman2009-12-111-0/+15
| | | | | | for logical not. llvm-svn: 91112
* Fix for PR5718: implement equality comparisons for member function pointers.Eli Friedman2009-12-111-0/+8
| | | | llvm-svn: 91108
* Some member pointer casting tests.Eli Friedman2009-11-271-0/+5
| | | | llvm-svn: 89989
* Convert the && and || operands to bool using standard conversions. Fixes PR5593.Anders Carlsson2009-11-231-0/+9
| | | | llvm-svn: 89704
* Handle converting member pointers to bool.Anders Carlsson2009-11-231-0/+4
| | | | llvm-svn: 89692
* Fix some tests in -Asserts mode.Daniel Dunbar2009-11-111-3/+3
| | | | | | | | | | | | | - FileCheck is a *huuuuge* improvement here. - Still feels like we could use a better tool for this though, either teach llvm-dis to spit out the FileCheck syntax, or provide another tool to turn a .ll into a "matchable" input. - Also on my Christmas list is better FileCheck diagnostics with missing variables or mismatches. llvm-svn: 86800
* Use CK_BitCast for member function pointer casts. Fixes PR5138.Anders Carlsson2009-10-181-0/+16
| | | | llvm-svn: 84438
* Don't assume that the LHS and RHS of a member pointer expression is a ↵Anders Carlsson2009-10-131-0/+17
| | | | | | DeclRefExpr. Fixes PR5177. llvm-svn: 83986
* Implement code generation of member function pointer calls. Fixes PR5121.Anders Carlsson2009-10-031-0/+5
| | | | llvm-svn: 83271
* Teach AggExprEmitter about pointers to member functions.Anders Carlsson2009-10-031-1/+15
| | | | llvm-svn: 83266
* Handle base-to-derived casts of member function pointers in CGExprConstant.cppAnders Carlsson2009-10-031-0/+6
| | | | llvm-svn: 83265
* Handle members to function pointers in CGExprConstant.Anders Carlsson2009-10-031-4/+10
| | | | llvm-svn: 83264
* Rewrite member function pointer test not to rely on -O2.Anders Carlsson2009-10-031-11/+11
| | | | llvm-svn: 83262
* Forgot test.Anders Carlsson2009-09-291-0/+25
llvm-svn: 83044
OpenPOWER on IntegriCloud