- Aug 23, 2008
-
-
Daniel Dunbar authored
- Use CodeGenModule::GetAddrOfConstantCFString Some tweaks of CodeGenModule::GetAddrOfConstantCFString llvm-svn: 55243
-
Chris Lattner authored
llvm-svn: 55242
-
Chris Lattner authored
llvm-svn: 55241
-
Argyrios Kyrtzidis authored
Make sure there's no "dangling" backtrack position when Preprocessor is destroyed. llvm-svn: 55236
-
Argyrios Kyrtzidis authored
llvm-svn: 55235
-
Daniel Dunbar authored
Implement Obj-C lvalue message sends (aggregate returns). Update several places to emit more precise ErrorUnsupported warnings for currently unimplemented Obj-C features (main missing chunks are property references, Obj-C exception handling, and the for ... in syntax). llvm-svn: 55234
-
Daniel Dunbar authored
- Simplify the sending code a bit. llvm-svn: 55232
-
Daniel Dunbar authored
- Used to autoselect runtime when neither -fnext-runtime nor -fgnu-runtime is specified. - Default impl is false, all darwin targets set it to true. llvm-svn: 55231
-
Daniel Dunbar authored
llvm-svn: 55225
-
Daniel Dunbar authored
- Returns an RValue. - Reduced to only taking the CodeGenFunction, Expr, and Receiver. - Becomes responsible for emitting the arguments. Add CodeGenFunction::EmitCallExprExt - Takes optional extra arguments to insert at the head of the call. - This allows the Obj-C runtimes to call into this and isolates the argument and call instruction generation code to one place. Upshot is that we now pass structures (more) correctly. Also, fix one aspect of generating methods which take structure arguments (for NeXT). This probably needs to be merged with the SetFunctionAttributes code in CodeGenModule.cpp llvm-svn: 55223
-
Chris Lattner authored
llvm-svn: 55222
-
Daniel Dunbar authored
- No (intended) functional change. llvm-svn: 55221
-
Chris Lattner authored
llvm-svn: 55218
-
Chris Lattner authored
llvm-svn: 55217
-
Chris Lattner authored
llvm-svn: 55216
-
Chris Lattner authored
make diagnostic output in some other malformed cases significantly more useful. This fixes PR2708 llvm-svn: 55215
-
Ted Kremenek authored
llvm-svn: 55213
-
Daniel Dunbar authored
llvm-svn: 55209
-
Anders Carlsson authored
llvm-svn: 55207
-
- Aug 22, 2008
-
-
Argyrios Kyrtzidis authored
llvm-svn: 55204
-
Daniel Dunbar authored
llvm-svn: 55197
-
Anders Carlsson authored
llvm-svn: 55180
-
Argyrios Kyrtzidis authored
-The Parser calls a new "ActOnCXXTypeConstructExpr" action. -Sema, depending on the type and expressions number: -If the type is a class, it will treat it as a class constructor. [TODO] -If there's only one expression (i.e. "int(0.5)" ), creates a new "CXXFunctionalCastExpr" Expr node -If there are no expressions (i.e "int()" ), creates a new "CXXZeroInitValueExpr" Expr node. llvm-svn: 55177
-
Nico Weber authored
For example, adding the default system include paths in clients is now as simple as InitHeaderSearch init(headers); init.AddDefaultSystemIncludePaths(langopts); init.Realize(); llvm-svn: 55174
-
Anders Carlsson authored
llvm-svn: 55166
-
Eli Friedman authored
because nothing uses the merged types yet.) llvm-svn: 55161
-
Eli Friedman authored
llvm-svn: 55160
-
Eli Friedman authored
testing compatibility. This is necessary for some constructs, like merging redeclarations. Also, there are some ObjC changes to make sure that typesAreCompatible(a,b) == typesAreCompatible(b,a). I don't have any ObjC code beyond the testsuite, so please tell me if there are any cases where this doesn't behave as expected. llvm-svn: 55158
-
Eli Friedman authored
implement some things, like unary operators and casts, but it's enough to fix PR2703 as filed. llvm-svn: 55155
-
Zhongxing Xu authored
llvm-svn: 55150
-
Zhongxing Xu authored
llvm-svn: 55144
-
- Aug 21, 2008
-
-
Daniel Dunbar authored
Updated ObjCProtocolDecl::protocol_iterator to match that of ObjCInterfaceDecl. llvm-svn: 55143
-
Chris Lattner authored
"+=". llvm-svn: 55131
-
Daniel Dunbar authored
- Functional for simple cases but there are some glaring omissions (protocols, properties, and other language extensions). - The code needs a fair bit of cleaning. llvm-svn: 55108
-
Eli Friedman authored
llvm-svn: 55101
-
Eli Friedman authored
difference from generic x86 is the defines. The rest is non-trivial to implement. I'm not planning on adding any more targets myself; if there are any targets anyone is currently using that are missing, feel free to add them, or ask me to add them. This concludes the work I'm planning for the TargetInfo implementations at the moment; all the other issues with TargetInfo require some API changes, and I haven't really thought it through. Some of the remaining issues: allowing targets to define size_t and wchar_t properly, adding some sort of __builtin_type_info intrinsic so we can finish clang's limits.h and float.h and get rid of a massive number of macro definitions, allowing target-specific command-line options, allowing target-specific defaults for certain command-line options like -fms-extensions, exposing vector alignment outside of the description string, exposing endianness outside of the description string, allowing targets to expose special bit-field layout requirements, exposing some sort of custom hook for call generation in CodeGen, and adding CPU selection to control defines like __SSE__. llvm-svn: 55098
-
Eli Friedman authored
llvm-svn: 55095
-
Eli Friedman authored
This approach allows adding OS-specific targets/defines/etc. without completely breaking unknown subtargets. No new subtargets yet, although I plan to add x86-Linux soon. Others can add targets that they use as needed; adding a new subtarget takes very little code. Also does some fixups for description strings; a lot of them were unspecified. I think all the ones I added are correct, but they're unverified; corrections are welcome. llvm-svn: 55091
-
Eli Friedman authored
up somehow. This concludes the series of reorg patches for the target implementations. llvm-svn: 55086
-
Eli Friedman authored
llvm-svn: 55083
-