1. Mar 10, 2021
  2. Mar 09, 2021
    • Adam Czachorowski's avatar
      [clang] Fix crash when creating deduction guide. · 4e1c4870
      Adam Czachorowski authored
      We used to trigger assertion when transforming c-tor with unparsed
      default argument. Now we ignore such constructors for this purpose.
      
      Differential Revision: https://reviews.llvm.org/D97965
      4e1c4870
    • Anton Bikineev's avatar
      [Sema] Fix diagnostics for one-byte length modifier · 4f8e2997
      Anton Bikineev authored
      In case a char-literal of type int (C/ObjectiveC) corresponds to a
      format specifier with the %hh length modifier, don't treat the literal
      as of type char for issuing diagnostics, as otherwise this results in:
      
      printf("%hhd", 'e');
      warning: format specifies type 'char' but the argument has type 'char'.
      
      Differential revision: https://reviews.llvm.org/D97951
      4f8e2997
    • diggerlin's avatar
      [AIX] do not emit visibility attribute into IR when there is -mignore-xcoff-visibility · 46d4d1fe
      diggerlin authored
      SUMMARY:
      
      n the patch https://reviews.llvm.org/D87451 "add new option -mignore-xcoff-visibility"
      we did as "The option -mignore-xcoff-visibility has no effect on visibility attribute when compile with -emit-llvm option to generated LLVM IR."
      
      in these patch we let -mignore-xcoff-visibility effect on generating IR too. the new feature only work on AIX OS
      
      Reviewer: Jason Liu,
      
      Differential Revision: https://reviews.llvm.org/D89986
      46d4d1fe
    • AndreyChurbanov's avatar
      [OpenMP] libomp: eliminate pause from atomic CAS loops · aaf16b80
      AndreyChurbanov authored
      For clang this change is NFC cleanup, because clang
      never calls atomic functions from runtime library.
      
      Basically, pause is good in spin-loops waiting for something.
      Atomic CAS loops do not wait for anything,
      each CAS failure means some other thread progressed.
      
      Performance experiments show that the pause only causes unnecessary slowdown
      on CPUs with slow pause instruction, no difference on CPUs with fast pause
      instruction, removal of the pause gives lesser binary size which is good.
      
      Differential Revision: https://reviews.llvm.org/D97079
      aaf16b80
    • Andrzej Warzynski's avatar
      [flang][driver] Refine tests for module search directories · b04fbc19
      Andrzej Warzynski authored
      This patch refactors include-module.f90:
        * rename the test file as use-module.f90 to better highlight which
        driver feature is being tested
        * move tests for diagnostics to use-module-error.f90 (it tests that
        `-J/-module-dir` can only be used once)
        * make sure that `f18` is tested when `FLANG_BUILD_NEW_DRIVER` is
        set to `Off`
        * add tests for when all module files are successfully discovered and
        loaded
      
      With this patch, there should be a clear separation into 3 scenarios in
      use-module.f90:
        * Everything is OK
        * One module file wasn't found (missing include path for
        basictestingmoduletwo.mod)
        * Two module files are found, but the test requires
        `basictestingmoduleone.mod` from both `Inputs` and `Inputs/module-dir`.
        Only the latter is found.
      
      Reviewed By: tskeith
      
      Differential Revision: https://reviews.llvm.org/D97197
      b04fbc19