Fariborz Jahanian
4723fb70a9
Patch to build class meta-data for each implementation
...
of class in objc2's nonfragile abi.
llvm-svn: 62935
2009-01-24 21:21:53 +00:00
Chris Lattner
04964bbebe
remove a bunch of alignment handling code out of CGExprScalar, since
...
alignment must always be a constant. Just let the constant folder
do it.
llvm-svn: 62933
2009-01-24 21:09:45 +00:00
Chris Lattner
096d3ecb51
remove dead code.
...
llvm-svn: 62930
2009-01-24 20:24:49 +00:00
Fariborz Jahanian
9e3ad5220d
This patch builds the meta-class object for each
...
implemented class in objc2's nonfrigile abi.
llvm-svn: 62929
2009-01-24 20:21:50 +00:00
Daniel Dunbar
3334a44501
Start filling in x86_64 ABI implementation.
...
- No functionality change, moved behind -use-x86_64-abi option until
it becomes non-experimental.
llvm-svn: 62915
2009-01-24 08:32:22 +00:00
Fariborz Jahanian
71394045e4
Some very early work for new objc's
...
meta-data generation.
llvm-svn: 62894
2009-01-23 23:53:38 +00:00
Daniel Dunbar
42a8cd37b2
Handle pointer arithmetic on function pointers.
...
- <rdar://problem/6518844> Clang-generated bitcode crashes LLVM while compiling function pointer addition expression
llvm-svn: 62857
2009-01-23 18:51:09 +00:00
Fariborz Jahanian
7fa50496f6
Checked in an oops!
...
llvm-svn: 62853
2009-01-23 17:48:29 +00:00
Fariborz Jahanian
5a63e4cd53
Another missing LLVM type for objc2's new abi defined.
...
llvm-svn: 62852
2009-01-23 17:41:22 +00:00
Fariborz Jahanian
0232c0569f
Define LLVM types for nonfragile abi metadata.
...
llvm-svn: 62830
2009-01-23 01:46:23 +00:00
Fariborz Jahanian
b15a3d5969
Use NonFragileABI as name of new Next abi. More comments
...
for the new meta-data.
llvm-svn: 62806
2009-01-22 23:02:58 +00:00
Fariborz Jahanian
eee54df5b6
More refactoring of common API to the common class for
...
the two Next's objc runtimes. More comments.
llvm-svn: 62735
2009-01-22 00:37:21 +00:00
Daniel Dunbar
56493b0d54
Allow creation of "dummy" compile units for debug information.
...
- Although gross, this is needed currently to ensure that we produce
well formed debug information (to match pace with the assertions
being added to DebugInfo in LLVM).
llvm-svn: 62734
2009-01-22 00:09:25 +00:00
Fariborz Jahanian
0b1ccdce88
Moved whole bunch of common APIs to the common class.
...
No change in functionality.
llvm-svn: 62729
2009-01-21 23:34:32 +00:00
Fariborz Jahanian
279eda6275
Refactoring ObjC Next's runtime classes in preparation for
...
the new ObjC's abi.
llvm-svn: 62721
2009-01-21 22:04:16 +00:00
Chris Lattner
80261b30b7
revert the gnu objc patches, they regress codegen-gnu.m
...
llvm-svn: 62708
2009-01-21 19:37:47 +00:00
Chris Lattner
1d09218b98
switch from getTypeAtIndex to getElementType. It is non-virtual
...
and more idiomatic.
llvm-svn: 62705
2009-01-21 19:21:36 +00:00
Chris Lattner
d1760b7837
Fix objc type conversion issues with the GNU runtime, patch by
...
David Chisnall
llvm-svn: 62703
2009-01-21 18:52:19 +00:00
Chris Lattner
66c6562e24
silence a couple unused variable 'result' warnings.
...
llvm-svn: 62674
2009-01-21 07:35:26 +00:00
Fariborz Jahanian
4b4c826999
Commented objective-c's metadata types. Minor clean up.
...
No change in functionality.
llvm-svn: 62646
2009-01-21 00:39:53 +00:00
Eli Friedman
ddea0ade30
Slight cleanup, and fix for va_arg on architectures where va_list is a
...
struct.
llvm-svn: 62585
2009-01-20 17:46:04 +00:00
Eli Friedman
8687a09fd0
Do codegen correctly for va_start/end/copy on architectures where
...
va_list is a struct, like x86-64.
If anyone has a better idea for how to do the check in the if
statements, suggestions are welcome.
llvm-svn: 62582
2009-01-20 17:25:25 +00:00
Eli Friedman
08c5dabf1b
Fix for PR3350: add special-casing for "references" to va_lists in
...
builtins.
Also, a minor tweak to va_copy for consistency.
llvm-svn: 62574
2009-01-20 07:46:22 +00:00
Douglas Gregor
6e6ad602e5
Remove ScopedDecl, collapsing all of its functionality into Decl, so
...
that every declaration lives inside a DeclContext.
Moved several things that don't have names but were ScopedDecls (and,
therefore, NamedDecls) to inherit from Decl rather than NamedDecl,
including ObjCImplementationDecl and LinkageSpecDecl. Now, we don't
store empty DeclarationNames for these things, nor do we try to insert
them into DeclContext's lookup structure.
The serialization tests are temporarily disabled. We'll re-enable them
once we've sorted out the remaining ownership/serialiazation issues
between DeclContexts and TranslationUnion, DeclGroups, etc.
llvm-svn: 62562
2009-01-20 01:17:11 +00:00
Daniel Dunbar
9789e1ebcb
Update for new SourceLocation API.
...
llvm-svn: 62556
2009-01-20 01:06:30 +00:00
Chris Lattner
cbc35ecb04
Rename SourceManager::getCanonicalFileID -> getFileID. There is
...
no longer such thing as a non-canonical FileID.
llvm-svn: 62499
2009-01-19 07:46:45 +00:00
Chris Lattner
f809bbdbb8
remove the SourceManager:: and FullSourceLoc::getFileEntryForLoc methods.
...
llvm-svn: 62496
2009-01-19 07:36:42 +00:00
Nate Begeman
b699c9bf57
Vector codegen improvements
...
llvm-svn: 62458
2009-01-18 06:42:49 +00:00
Anders Carlsson
a92271d067
CG support for inline asm constraints with symbolic names. Fixes PR3345
...
llvm-svn: 62444
2009-01-18 02:06:20 +00:00
Anders Carlsson
a79203be85
Add sema support for symbolic names in inline asm statements.
...
llvm-svn: 62441
2009-01-18 01:56:57 +00:00
Nate Begeman
1e31b168fa
Add support for vectors to APValue. Vector constant evaluator and tests coming.
...
llvm-svn: 62438
2009-01-18 01:01:34 +00:00
Anders Carlsson
19aa04d270
Change TargetInfo::validateInputConstraint to take begin/end name iterators instead of the number of outputs. No functionality change.
...
llvm-svn: 62433
2009-01-17 23:36:15 +00:00
Fariborz Jahanian
705c6d9cdd
Patch to re-implement ivar-list meta-data generation to fix
...
cases of unnamed ivar bitfields.
llvm-svn: 62429
2009-01-17 19:36:33 +00:00
Nuno Lopes
4d78cf0fa7
add support for usage of cast to union thing with static vars
...
llvm-svn: 62387
2009-01-17 00:48:48 +00:00
Fariborz Jahanian
55ca58ed61
Changed the API yet again.
...
llvm-svn: 62335
2009-01-16 19:02:53 +00:00
Fariborz Jahanian
195d36cb57
Used a more suitable api to get to the type of a record
...
in code gen.
llvm-svn: 62326
2009-01-16 17:41:13 +00:00
Chris Lattner
8a42586c54
more SourceLocation lexicon change: instead of referring to the
...
"logical" location, refer to the "instantiation" location.
llvm-svn: 62316
2009-01-16 07:36:28 +00:00
Daniel Dunbar
f557d831a7
Attempt to unbreak Windows build.
...
llvm-svn: 62295
2009-01-16 01:50:29 +00:00
Fariborz Jahanian
c5ece68d16
Implemented code gen for sizeof(objc class interface).
...
llvm-svn: 62289
2009-01-16 00:57:08 +00:00
Nuno Lopes
7ffcf93b24
add codegen support to union casts
...
init of static vars still not working. I'll get back to it tomorrow or so
llvm-svn: 62278
2009-01-15 20:14:33 +00:00
Daniel Dunbar
435bbe0254
Fix some unused variable, control reaches end of non-void function,
...
and uninitialized use options.
llvm-svn: 62270
2009-01-15 18:32:35 +00:00
Daniel Dunbar
707f6436e0
Add dummy X86_64 ABIInfo implementation.
...
llvm-svn: 62268
2009-01-15 18:18:40 +00:00
Daniel Dunbar
dec798bf37
Bug fix, __private_extern__ globals were always introducing a definition.
...
llvm-svn: 62139
2009-01-13 02:25:00 +00:00
Fariborz Jahanian
30e7864661
Patch to implement code gen for aggrgate-valued property used
...
to access a field of its type.
llvm-svn: 62123
2009-01-12 23:27:26 +00:00
Douglas Gregor
b3730b50c7
Cleanup DeclContext::addDecl and DeclContext::insert interface, from Piotr Rak
...
llvm-svn: 62122
2009-01-12 23:27:07 +00:00
Daniel Dunbar
62db95e891
(LLVM up) Match TargetData API change in LLVM TOT.
...
llvm-svn: 62101
2009-01-12 21:08:18 +00:00
Anders Carlsson
00057e4e09
Handle multi-value inputs
...
llvm-svn: 62069
2009-01-12 02:22:13 +00:00
Nuno Lopes
a0abe62904
make ScalarExprEmitter::EmitCompare() emit the expression with the correct type instead of always zext it to an int
...
this fixes codegen of simple exprs in C++ like 'if (x != 0)'
llvm-svn: 62060
2009-01-11 23:22:37 +00:00
Anders Carlsson
431acd1129
More inline asm fixes
...
llvm-svn: 62049
2009-01-11 21:23:27 +00:00
Anders Carlsson
a948c34b0b
Handle readwrite constraints correctly
...
llvm-svn: 62043
2009-01-11 19:46:50 +00:00