John McCall
7a9aac2d9f
Abstract out everything having to do with member pointers into the ABI
...
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
2010-08-23 01:21:21 +00:00
Chris Lattner
217e056e40
implement rdar://7432000 - signed negate should codegen as NSW.
...
While I'm in there, adjust pointer to member adjustments as well.
llvm-svn: 106955
2010-06-26 20:27:24 +00:00
Anders Carlsson
bcb2e4cb63
Don't try to explicitly zero out bit-fields.
...
llvm-svn: 105391
2010-06-03 15:36:07 +00:00
Anders Carlsson
da265b8d63
When null-initializing bases with data member pointers, don't assert on virtual bases. Just initialize them to null.
...
llvm-svn: 104868
2010-05-27 18:51:01 +00:00
Anders Carlsson
5b94443b16
Really fix PR7139. There was one boost test that we still failed, and my first fix broke self-host.
...
llvm-svn: 104447
2010-05-22 17:45:10 +00:00
Anders Carlsson
c0964b60e5
Re-land the fix for PR7139.
...
llvm-svn: 104446
2010-05-22 17:35:42 +00:00
Anders Carlsson
c866eb5ba9
Unbreak self-host.
...
llvm-svn: 104390
2010-05-21 22:17:48 +00:00
Anders Carlsson
da1641cd12
Rename CodeGenFunction::EmitMemSetToZero to EmitNullInitialization. Handle setting null data member pointers correctly. Fixes PR7139.
...
llvm-svn: 104387
2010-05-21 21:45:41 +00:00
Anders Carlsson
be48c548c5
Correctly initialize bases with member pointers. This should fix PR6441 but that test case is a bit weird and I'd like to investigate further before closing that bug.
...
llvm-svn: 104025
2010-05-18 16:51:41 +00:00
Anders Carlsson
65c6d541dd
Make sure that value-initialized pointers to data members are initialized correctly.
...
llvm-svn: 103771
2010-05-14 15:05:19 +00:00
Anders Carlsson
ff338dbf9c
Fix a test case.
...
llvm-svn: 95374
2010-02-05 06:58:06 +00:00
Anders Carlsson
e8bfe412ec
Improve handling of emitting 'null' pointers to data members.
...
llvm-svn: 95066
2010-02-02 05:17:25 +00:00
Anders Carlsson
259688ce29
Move pointer to data member emission to CodeGenModule and use it in CGExprConstant. Fixes PR5674.
...
llvm-svn: 95063
2010-02-02 03:37:46 +00:00
Anders Carlsson
15217531f7
Merge a test into pointers-to-data-members.cpp and convert it to FileCheck.
...
llvm-svn: 95061
2010-02-02 03:32:35 +00:00
Anders Carlsson
2cfade1671
Rename a test.
...
llvm-svn: 95060
2010-02-02 03:23:38 +00:00