Skip to content
  1. May 08, 2009
  2. May 06, 2009
    • Daniel Dunbar's avatar
      Improve handling of (X86) target features. · 4dbaaa6f
      Daniel Dunbar authored
       - This is a WIP...
      
       - This adds -march= handling to the driver, and fixes the defaulting
         of -mcpu on Darwin (which was using the wrong test).
      
      Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as
       -target-feature [+-]name
      
      In clang-cc, communicate with the (clang) target to discover the legal
      features of a target, and the features which are enabled based on
      -mcpu. This is currently hardcoded just enough to not be a feature
      regression, we need to get this information from the backend's
      TableGen information somehow.
      
      This is used to construct the full list of features which are being
      used, which is in turn used to initialize the predefines.
      
      llvm-svn: 71061
      4dbaaa6f
  3. May 05, 2009
  4. May 04, 2009
  5. May 03, 2009
  6. May 01, 2009
  7. Apr 30, 2009
  8. Apr 28, 2009
    • Douglas Gregor's avatar
      Improve compatibility with GCC regarding inline semantics in GNU89 · 76fe50c6
      Douglas Gregor authored
      mode and in the presence of __gnu_inline__ attributes. This should fix
      both PR3989 and PR4069.
      
      As part of this, we now keep track of all of the attributes attached
      to each declaration even after we've performed declaration
      merging. This fixes PR3264.
      
      llvm-svn: 70292
      76fe50c6
    • Eli Friedman's avatar
      Simplify the scheme used for keywords, and change the classification · 2b680b43
      Eli Friedman authored
      scheme to be more useful.
      
      The new scheme introduces a set of categories that should be more 
      readable, and also reflects what we want to consider as an extension 
      more accurately.  Specifically, it makes the "what is a keyword" 
      determination accurately reflect whether the keyword is a GNU or 
      Microsoft extension.
      
      I also introduced separate flags for keyword aliases; this is useful 
      because the classification of the aliases is mostly unrelated to the 
      classification of the original keyword.
      
      This patch treats anything that's in the implementation 
      namespace (prefixed with "__", or "_X" where "X" is any upper-case 
      letter) as a keyword without marking it as an extension.  This is 
      consistent with the standards in that an implementation is allowed to define 
      arbitrary extensions in the implementation namespace without violating 
      the standard. This gets rid of all the nasty "extension used" warnings 
      for stuff like __attribute__ in -pedantic mode.  We still warn for 
      extensions outside of the the implementation namespace, like typeof.
      If someone wants to implement -Wextensions or something like that, we 
      could add additional information to the keyword table.
      
      This also removes processing for the unused "Boolean" language option; 
      such an extension isn't supported on any other C implementation, so I 
      don't see any point to adding it.
      
      The changes to test/CodeGen/inline.c are required because previously, we 
      weren't actually disabling the "inline" keyword in -std=c89 mode.
      
      I'll remove Boolean and NoExtensions from LangOptions in a follow-up 
      commit.
      
      llvm-svn: 70281
      2b680b43
  9. Apr 27, 2009
  10. Apr 26, 2009
  11. Apr 25, 2009
  12. Apr 23, 2009
  13. Apr 22, 2009
  14. Apr 21, 2009
  15. Apr 20, 2009
  16. Apr 19, 2009
Loading