Skip to content
  1. Jun 18, 2009
  2. Jun 14, 2009
  3. Jun 11, 2009
  4. Jun 06, 2009
  5. Jun 04, 2009
  6. May 29, 2009
  7. May 26, 2009
  8. May 16, 2009
  9. May 15, 2009
  10. May 12, 2009
  11. May 05, 2009
  12. May 03, 2009
  13. Apr 28, 2009
  14. Apr 23, 2009
  15. Apr 22, 2009
    • Daniel Dunbar's avatar
      Don't convert interface types (to structs) as part of CodeGenTypes. · 7d4e1c5e
      Daniel Dunbar authored
       - This has pros and cons, but for now the pros seem to significantly
         outway the con.
      
      The con is that we will always need to cast in the runtime
      implementation to a struct type, if we wish to access an interface
      directly.
      
      The pros are:
       - Avoid the cost of generating types which are used. Most
         manipulation of Objective-C objects is done through messages, and
         only the implementation of a class will directly access
         memory. Previously, we would convert the type even if it only
         appear as a function parameter, for example.
      
       - We don't need to worry about incomplete types, and
         UpdateCompletedType for interfaces is gone.
      
       - It becomes easier to narrow the interface to the shadow struct for
         Objective-C interfaces (so it can be eliminated).
      
      Currently the runtimes still use the CodeGenTypes machinery to
      generate the LLVM structure they need via ConvertTagDecl, but this can
      eventually be replaced.
      
      llvm-svn: 69797
      7d4e1c5e
    • Chris Lattner's avatar
      Fix some mishandling of the attr(gnu_inline) mode when used with · f8dc0736
      Chris Lattner authored
      extern.  Previously we would warn about it and ignore the attribute.
      This is incorrect, it should be handled as a c89 "extern inline" 
      function.  Many thanks to Matthieu Castet for pointing this out and
      beating me over the head until I got it.
      
      PR3988: extern inline function are not externally visible
      llvm-svn: 69756
      f8dc0736
  16. Apr 21, 2009
  17. Apr 20, 2009
  18. Apr 19, 2009
  19. Apr 18, 2009
  20. Apr 17, 2009
  21. Apr 16, 2009
  22. Apr 15, 2009
  23. Apr 14, 2009
    • Chris Lattner's avatar
      Fix PR3988: extern inline functions get strong symbol definitions in · bae0e689
      Chris Lattner authored
      C99 mode.  This is a regression from an earlier patch of mine.
      
      This also simplifies the linkage enums a bit.
      
      llvm-svn: 69069
      bae0e689
    • Chris Lattner's avatar
      implement codegen support for __attribute((__gnuc_inline__)), · 02e987f3
      Chris Lattner authored
      pulling some attribute munging stuff into GetLinkageForFunction.
      
      This should fix PR3986
      
      llvm-svn: 69045
      02e987f3
    • Daniel Dunbar's avatar
      Refactor how attributes are set on values. · 38932571
      Daniel Dunbar authored
       - Pull out SetCommonAttributes, which handles the things common to
         aliases, methods, functions, and variables.
      
       - Pull out SetLLVMFunctionAttributesForDefinition, which handles the
         LLVM attributes which we only want to apply to a definition (like
         noinline and alwaysinline).
      
       - Kill SetGVDeclarationAttributes (inlined into SetFunctionAttributes
         and specialized).
      
       - Kill SetFunctionAttributesForDefinition (inlined into sole caller).
      
       - Inline SetGVDefinitionAttributes into SetMethodAttributes and
         specialize.
      
       - Rename SetGVDefinitionAttributes to SetFunctionDefinitionAttributes.
      
      This is supposed to be a no functionality change commit, but I may
      have made a mistake.
      
      llvm-svn: 69036
      38932571
Loading