Skip to content
  1. Aug 30, 2008
    • Daniel Dunbar's avatar
      Refactor handling of calls: · c722b856
      Daniel Dunbar authored
       - Added CodeGenFunction::EmitCall which just takes the callee, return
         type, and a list of (Value*,QualType) pairs.
       - Added CodeGenFunction::EmitCallArg which handles emitting code for
         a call argument and turning it into an appropriate
         (Value*,QualType) pair.
       - Changed Objective-C runtime interface so that the actual emission
         of arguments for message sends is (once again) done in the code to
         emit a message send.
      
      No intended functionality change, this is prep work for better ABI
      support and for Objective-C property setter support.
      
      llvm-svn: 55560
      c722b856
  2. Aug 25, 2008
  3. Aug 23, 2008
    • Daniel Dunbar's avatar
      Trim CGObjCRuntime::GenerateMessageSend[Super] · 97db84ce
      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
      97db84ce
  4. Aug 16, 2008
    • Daniel Dunbar's avatar
      Change ObjCRuntime::LookupClass -> GetClass, and now takes the · 7c6d3a7c
      Daniel Dunbar authored
        ObjCInterfaceDecl.
      
      Change ObjCRuntime::GenerateMessageSendSuper to take the
        ObjCInterfaceDecl for the super class, instead of just its name.
      
      Change EmitObjCMessageExpr to make the right runtime calls for super
        sends in class methods (i.e. a super send with the class object as
        the receiver).
      
      llvm-svn: 54833
      7c6d3a7c
    • Daniel Dunbar's avatar
      Change CGObjCRuntime methods to take appropriate clang Decls. · 92992509
      Daniel Dunbar authored
       - This is in prep for implementation class support for the NeXT
         runtime, for which the existing methods don't provide enough
         information (and additionally make too many assumptions about how
         things should be emitted).
      
      llvm-svn: 54824
      92992509
  5. Aug 13, 2008
  6. Aug 12, 2008
    • Daniel Dunbar's avatar
      Drop Sender from GenerateMessageSend* · 5d71559c
      Daniel Dunbar authored
       - Was unused and generated a unnecessary load of self
      
      Update NeXT runtime to get proper object & selector types from
             ASTContext.
      
      llvm-svn: 54667
      5d71559c
    • Daniel Dunbar's avatar
      Protocol related tweaks · 6630e10c
      Daniel Dunbar authored
       - Implement type conversion of ObjCQualifiedIdType
       - Wire @protocol(...) to GenerateProtocolRef in ScalarExprEmitter
      
      llvm-svn: 54666
      6630e10c
    • Daniel Dunbar's avatar
      Add ObjC constant string support for NeXT. · 8b8683f9
      Daniel Dunbar authored
      Changed CGObjCRuntime::GenerateConstantString interface to take
             std::string instead of char* and size.
      
      Change ObjC functions which call on GenerateConstantString to bitcast
             result to appropriate type.
      
      llvm-svn: 54659
      8b8683f9
  7. Aug 11, 2008
  8. Aug 08, 2008
  9. Jun 26, 2008
  10. Jun 01, 2008
  11. Apr 13, 2008
  12. Mar 31, 2008
  13. Mar 16, 2008
    • Chris Lattner's avatar
      Make a major restructuring of the clang tree: introduce a top-level · 7a51313d
      Chris Lattner authored
      lib dir and move all the libraries into it.  This follows the main
      llvm tree, and allows the libraries to be built in parallel.  The
      top level now enforces that all the libs are built before Driver,
      but we don't care what order the libs are built in.  This speeds
      up parallel builds, particularly incremental ones.
      
      llvm-svn: 48402
      7a51313d
  14. Mar 01, 2008
Loading