Skip to content
  1. Nov 04, 2008
  2. Oct 28, 2008
  3. Oct 17, 2008
  4. Oct 01, 2008
    • Daniel Dunbar's avatar
      Add simple interface for protecting runtime functions from name · 23fd462f
      Daniel Dunbar authored
      collisions.
       - Provide CodeGenModule::CreateRuntimeFunction which guarantees that
         the function it creates will have the provided name in the final
         module. This allows the runtime to have its functions protected
         from declarations of the same name in the source code.
      
       - One could argue that this is a reason to abuse the llvm::Module
         namespace for dealing with function redeclarations. However, that
         approach seems conceptually flawed to me. This one also happens to
         be somewhat more efficient.
      
      No functionality change.
      
      llvm-svn: 56899
      23fd462f
  5. Sep 27, 2008
  6. Sep 25, 2008
    • Devang Patel's avatar
      Large mechanical patch. · 322300d1
      Devang Patel authored
      s/ParamAttr/Attribute/g
      s/PAList/AttrList/g
      s/FnAttributeWithIndex/AttributeWithIndex/g
      s/FnAttr/Attribute/g
      
      This sets the stage 
      - to implement function notes as function attributes and 
      - to distinguish between function attributes and return value attributes.
      
      llvm-svn: 56623
      322300d1
  7. Sep 10, 2008
    • Daniel Dunbar's avatar
      Move FunctionType conversion into CGCall.cpp: · 7a95ca31
      Daniel Dunbar authored
       - Added CodeGenTypes::GetFunctionType, taking a CGFunctionInfo.
       - Updated Obj-C runtimes to use this instead of rolling the
         llvm::FunctionType by hand.
       - Killed CodeGenTypes::{ConvertReturnType, DecodeArgumentTypes}.
      
      Add ABIArgInfo class to encapsulate ABI decision of how to lower types
      to LLVM.
       - Will move to target sometime soon.
      
      llvm-svn: 56047
      7a95ca31
    • Daniel Dunbar's avatar
      Tweak CGCall functions again: · c68897d2
      Daniel Dunbar authored
       - Realized these functions will eventually need access to more data,
         moved to CodeGenModule. Eventually they should probably live
         together in some other helper class.
      
      llvm-svn: 56039
      c68897d2
    • Daniel Dunbar's avatar
      Tweak CGCall functions: · 76c8eb75
      Daniel Dunbar authored
       - Move actual param attr list creation to
         CodeGenFunction::ConstructParamAttrList.
       - Make ReturnTypeUsesSret static.
      
      llvm-svn: 56038
      76c8eb75
  8. Sep 09, 2008
  9. Sep 08, 2008
    • Daniel Dunbar's avatar
      Refactor parameter attribute handling: · 3d7c90b8
      Daniel Dunbar authored
        - Add CGCall.h for dealing with ABI issues related to calls.
        - Add CGFunctionInfo and CGCallInfo for capturing ABI relevant
          information about functions and calls.
        - Isolate LLVM parameter attribute handling inside CGCall.cpp
      
      llvm-svn: 55963
      3d7c90b8
  10. Sep 05, 2008
  11. Sep 04, 2008
  12. Sep 01, 2008
  13. Aug 29, 2008
  14. Aug 26, 2008
    • Daniel Dunbar's avatar
      Objective-C @synthesize support. · 89654eef
      Daniel Dunbar authored
       - Only supports simple assignment and atomic semantics are ignored.
       - Not quite usable yet because the methods do not actually get added
         to the class metadata.
       - Added ObjCPropertyDecl::getSetterKind (one of Assign, Copy, Retain).
       - Rearrange CodeGenFunction so synthesis can reuse function prolog /
         epilog code.
      
      llvm-svn: 55365
      89654eef
  15. Aug 25, 2008
  16. Aug 23, 2008
  17. Aug 16, 2008
  18. Aug 15, 2008
  19. Aug 14, 2008
    • Daniel Dunbar's avatar
      Add GetAddrOfConstantCString method · c4baa06d
      Daniel Dunbar authored
       - Returns addr of constant for argument + '\0'.
       - I couldn't think of a better name.
       - Move appropriate users of GetAddrOfConstantString to this.
      
      Rename getStringForStringLiteral to GetStringForStringLiteral.
      
      Add GetAddrOfConstantStringFromLiteral
       - This combines GetAddrOfConstantString and
         GetStringForStringLiteral. This method can be, but is not yet, more
         efficient.
      
      Change GetAddrOfConstantString to not add terminating '\0'
       - <rdar://problem/6140956>
      
      llvm-svn: 54768
      c4baa06d
  20. Aug 13, 2008
  21. Aug 12, 2008
  22. Aug 11, 2008
    • Daniel Dunbar's avatar
      Add LangOptions::NeXTRuntime. · 3ad53483
      Daniel Dunbar authored
       - Wired to -fnext-runtime and -fgnu-runtime options.
       - Defaults to GNU, no autoselection for NeXT.
      
      Emit NeXT OBJC_IMAGE_INFO marker.
      
      llvm-svn: 54651
      3ad53483
    • Daniel Dunbar's avatar
      Change CodeGenModule to only create ObjC runtime for ObjC files · 8d480594
      Daniel Dunbar authored
       - Changed CodeGenModule::getObjCRuntime to return reference.
       - Added CodeGenModule::hasObjCRuntime predicate.
      
      llvm-svn: 54645
      8d480594
    • Daniel Dunbar's avatar
      Add -fexceptions to Driver · fb3043d6
      Daniel Dunbar authored
       - Maps to LangOptions.Exceptions
       - Currently always off, should autoselect based on language.
      
      Update CodeGen to set unwind attribute on functions definitions based
             on LangOptions.Exceptions.
       - Still need to set attributes appropriately on calls.
      
      llvm-svn: 54643
      fb3043d6
    • Daniel Dunbar's avatar
      More #include cleaning · 56fdb6ae
      Daniel Dunbar authored
       - Kill unnecessary #includes in .cpp files. This is an automatic
         sweep so some things removed are actually used, but happen to be
         included by a previous header. I tried to get rid of the obvious
         examples and this was the easiest way to trim the #includes in one
         fell swoop.
       - We now return to regularly scheduled development.
      
      llvm-svn: 54632
      56fdb6ae
    • Daniel Dunbar's avatar
      More #include cleaning · 6e8aa537
      Daniel Dunbar authored
       - Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h
       - Moved Sema::getCurMethodDecl() out of line (dependent on
         ObjCMethodDecl via dyn_cast).
      
      llvm-svn: 54629
      6e8aa537
    • Daniel Dunbar's avatar
      Add dummy Mac Objective-C runtime interface. · 303e2c2f
      Daniel Dunbar authored
        - Not currently accessible and completely non-functional.
      
      llvm-svn: 54624
      303e2c2f
  23. Aug 10, 2008
  24. Aug 06, 2008
    • Daniel Dunbar's avatar
      Implement GNU asm-label extension support in CodeGen. This fixes · ffc29be8
      Daniel Dunbar authored
      scimark2 on Darwin.
      
       - Added Sema support for asm-label on variables, which I forgot before.
      
       - Update CodeGen to use GlobalDeclMap to determine if static Decls
         require emission (instead of LLVM module name lookup). Important
         since the Decl name and the LLVM module name can differ.
      
       - <rdar://problem/6116729>
      
      llvm-svn: 54388
      ffc29be8
    • Daniel Dunbar's avatar
      Change CodeGen of global decls to key off of the name (instead of · 829e9888
      Daniel Dunbar authored
        having multiple bindings from all the possible decls which
        conceptually map to the same global).
      
       - This eliminates CodeGen depending on the LLVM module for name
         lookup.
      
       - This also eliminates the need for ReplaceMapValuesWith (hurrah).
      
       - This handles lookups for FunctionDecls correctly in the presence of
         aliases, this was previously broken.
      
       - WIP: Can still clean up & unify variable and function emission.
      
      llvm-svn: 54382
      829e9888
Loading