Skip to content
  1. Nov 12, 2013
    • Daniel Sanders's avatar
      [mips][msa] Enable inlinse assembly for MSA. · 8b59af15
      Daniel Sanders authored
      Like GCC, this re-uses the 'f' constraint and a new 'w' print-modifier:
        asm ("ldi.w %w0, 1", "=f"(result));
      
      Unlike GCC, the 'w' print-modifer is not _required_ to produce the intended
      output. This is a consequence of differences in the internal handling of
      the registers in each compiler. To be source-compatible between the
      compilers, users must use the 'w' print-modifier.
      
      MSA registers (including control registers) are supported in clobber lists.
      
      llvm-svn: 194476
      8b59af15
    • Robert Lytton's avatar
      XCore target Type defines. · cc424661
      Robert Lytton authored
      Change SizeType, PtrDiffType, IntPtrType, WCharType, WIntType
      to follow the XMOS llvm-gcc front end's settings.
      
      llvm-svn: 194461
      cc424661
    • Richard Smith's avatar
      Remove C++11ism. · adf30181
      Richard Smith authored
      llvm-svn: 194446
      adf30181
    • Richard Smith's avatar
      Rather than duplicating extension diagnostics to allow them to cause a · 16e1b075
      Richard Smith authored
      substitution failure, allow a flag to be set on the Diagnostic object,
      to mark it as 'causes substitution failure'.
      
      Refactor Diagnostic.td and the tablegen to use an enum for SFINAE behavior
      rather than a bunch of flags.
      
      llvm-svn: 194444
      16e1b075
  2. Nov 11, 2013
  3. Nov 04, 2013
    • Dmitri Gribenko's avatar
      Include non-explicit submodules in exported module list · e9bcf5b7
      Dmitri Gribenko authored
      This change fixes Richard's testcase for r193815.  Now we include non-explicit
      submodules into the list of exports.
      
      The test failed previously because:
      - recursive_visibility_a1.inner is not imported (only recursive_visibility_a1 is),
      - thus the 'inner' submodule is not showing up in any of the import lists,
      - and because of this getExportedModules() is not returning the
        correct module set -- it only considers modules that are imported.
      
      The fix is to make Module::getExportedModules() include non-explicit submodules
      into the list of exports.
      
      llvm-svn: 194018
      e9bcf5b7
    • Benjamin Kramer's avatar
      Driver: Add support for -march=bdver3 on x86. · d9a5e2a4
      Benjamin Kramer authored
      llvm-svn: 193985
      d9a5e2a4
  4. Nov 01, 2013
  5. Oct 31, 2013
    • Dmitri Gribenko's avatar
      Clang modules: collect exports recursively · dc360d57
      Dmitri Gribenko authored
      This change makes Module::buildVisibleModulesCache() collect exported modules
      recursively.
      
      While computing a set of exports, getExportedModules() iterates over the set of
      imported modules and filters it.  But it does not consider the set of exports
      of those modules -- it is the responsibility of the caller to do this.
      
      Here is a certain instance of this issue.  Module::isModuleVisible says that
      CoreFoundation.CFArray submodule is not visible from Cocoa.  Why?
      
      - Cocoa imports Foundation.
      - Foundation has an export restriction: "export *".
      - Foundation imports CoreFoundation.  (Just the top-level module.)
      - CoreFoundation exports CoreFoundation.CFArray.
      
      To decide which modules are visible from Cocoa, we collect all exported modules
      from immediate imports in Cocoa:
      
      > visibleModulesFro(Cocoa) = exported(Foundation) + exported(CoreData) + exported(AppKit)
      
      To find out which modules are exported, we filter imports according to
      restrictions:
      
      > exported(Foundation) = filterByModuleMapRestrictions(imports(Foundation))
      
      Because Foundation imports CoreFoundation (not CoreFoundation.CFArray), the
      CFArray submodule is considered not exported from Foundation, and is not
      visible from Cocoa (according to Module::isModuleVisible).
      
      llvm-svn: 193815
      dc360d57
    • Amara Emerson's avatar
      [AArch64] Add some CPU targets for "generic", A-53 and A-57. · 703da2ea
      Amara Emerson authored
      Enables the clang driver to begin targeting specific CPUs. Introduced a
      "generic" CPU which will ensure that the optional FP feature is enabled
      by default when it gets to LLVM, without needing any extra arguments.
      Cortex-A53 and A-57 are also introduced with tests, although backend
      handling of them does not yet exist.
      
      llvm-svn: 193740
      703da2ea
  6. Oct 30, 2013
  7. Oct 29, 2013
  8. Oct 28, 2013
    • Richard Smith's avatar
      Allow a new syntax in a module requires-declaration: · a3feee2a
      Richard Smith authored
        requires ! feature
      
      The purpose of this is to allow (for instance) the module map for /usr/include
      to exclude <tgmath.h> and <complex.h> when building in C++ (these headers are
      instead provided by the C++ standard library in this case, and the glibc C
      <tgmath.h> header would otherwise try to include <complex.h>, resulting in a
      module cycle).
      
      llvm-svn: 193549
      a3feee2a
  9. Oct 24, 2013
  10. Oct 21, 2013
  11. Oct 18, 2013
  12. Oct 16, 2013
  13. Oct 10, 2013
  14. Oct 07, 2013
  15. Oct 05, 2013
  16. Oct 01, 2013
  17. Sep 29, 2013
    • Ed Schouten's avatar
      Add character set related __STDC_* definitions. · d0621468
      Ed Schouten authored
      Clang uses UTF-16 and UTF-32 for its char16_t's and char32_t's
      exclusively. This means that we can define __STDC_UTF_16__ and
      __STDC_UTF_32__ unconditionally.
      
      While there, define __STDC_MB_MIGHT_NEQ_WC__ for FreeBSD. FreeBSD's
      wchar_t's don't encode characters as ISO-10646; the encoding depends on
      the locale used. Because the character set used might not be a superset
      of ASCII, we must define __STDC_MB_MIGHT_NEQ_WC__.
      
      llvm-svn: 191631
      d0621468
  18. Sep 27, 2013
    • Benjamin Kramer's avatar
      SourceManager: Open code isInMainFile. · e7800df4
      Benjamin Kramer authored
      - We really shouldn't compute line numbers for every file that is asked if it's
        the main file, it destroys the lazy computation.
      - Invalid locations are no longer accounted to the main file, no other
        functionality change.
      
      llvm-svn: 191535
      e7800df4
  19. Sep 24, 2013
Loading