1. Jan 25, 2023
    • Ben Langmuir's avatar
      [clang][deps] Add module files for input dependencies earlier · 43854fa2
      Ben Langmuir authored
      I originally thought we needed to add module file inputs for modular
      deps at the same time as outputs because they depend on the
      lookupModuleOutput callback, but this is not the case: they only depend
      on the callback results for other modules, which have already been
      computed by this point. So move them earlier so that they're set in the
      CompilerInvocation at the same time as other inputs. This makes the
      code easier to understand.
      
      This change is effectively NFC, though it technically changes the module
      exact value of the context hash.
      
      Differential Revision: https://reviews.llvm.org/D142392
      43854fa2
    • eopXD's avatar
      [15/15][Clang][RISCV][NFC] Set data member under Policy as constants · 2b807336
      eopXD authored
      The object is now correct by construction.
      
      This is the 15th commit of a patch-set that aims to change the default policy
      for RVV intrinsics from TAMU to TAMA.
      
      Please refer to the cover letter in the 1st commit (D141573) for an
      overview.
      
      Depends on D141793.
      
      Reviewed By: craig.topper
      
      Differential Revision: https://reviews.llvm.org/D141796
      2b807336
    • eopXD's avatar
      [14/15][Clang][RISCV] Change default policy from TAMU to TAMA · 84c8bbe9
      eopXD authored
      After this commit, the non-policy variants of `vid` and `viota` are no
      longer available for an oveloaded version since the default policy is
      now TAMA and the masked-off operand is removed.
      
      Be noted that ALL RVV intrinsics now operate under the general
      assumption that a policy behavior is "agnostic" unless specified.
      Therefore this patch also changes the semantic of policy intrinsics
      with the suffix of `_ta` and `tu`. These intrinsics don't have their
      mask policy specified and was assumed to be undisturbed. It is now
      changed to agnostic.
      
      This is the 14th commit of a patch-set that aims to change the default policy
      for RVV intrinsics from TAMU to TAMA.
      
      Please refer to the cover letter in the 1st commit (D141573) for an
      overview.
      
      Reviewed By: craig.topper
      
      Differential Revision: https://reviews.llvm.org/D141793
      84c8bbe9
    • eopXD's avatar
      [13/15][Clang][RISCV][NFC] Remove repeating test cases under rvv-intrinsics-autogenerated · caa61ccc
      eopXD authored
      These files were oversights in D141198. The test cases are now under its
      exact mnemonics. For example, test cases of `vle8`, `vle16`, `vle32`,
      and `vle64` were under `vle.c`. Now they are exist under `vle8.c`,
      `vle16.c`, `vle32.c`, and `vle64.c`, respectively.
      
      This is the 13th commit of a patch-set that aims to change the default policy
      for RVV intrinsics from TAMU to TAMA.
      
      Please refer to the cover letter in the 1st commit (D141573) for an
      overview.
      
      Reviewed By: craig.topper
      
      Differential Revision: https://reviews.llvm.org/D141792
      caa61ccc
    • eopXD's avatar
      [12/15][Clang][RISCV][NFC] Refine the way to check for Policy in riscv_vector_builtin_cg.inc · 1a803e0b
      eopXD authored
      The current way creates a fallacy that checking for
      `PolicyAttrs == TAIL_AGNOSTIC` is implicitly equivalant to
      `TAIL_AGNOSTIC_MASK_UNDISTURBED`. This works under the assumption that
      an unmasked intrinsic has a policy of TAMU. The expression here is
      mis-leading and will not be correct when the default policy is not
      TAMU.
      
      As this patch-set targets to change the default policy from TAMU to
      TAMA, this commit is necessary before changing the default.
      
      This is the 12th commit of a patch-set that aims to change the default policy
      for RVV intrinsics from TAMU to TAMA.
      
      Please refer to the cover letter in the 1st commit (D141573) for an
      overview.
      
      Reviewed By: craig.topper
      
      Differential Revision: https://reviews.llvm.org/D141789
      1a803e0b
    • Guillaume Chatelet's avatar
      Revert D142108 "[reland][libc][NFC] Detect host CPU features using try_compile instead of try_run." · 76f9a6a4
      Guillaume Chatelet authored
      The build bots are failing.
      This reverts commit c84d74f5.
      76f9a6a4
    • Mark de Wever's avatar
      [libc++][doc] Updates format status. · 7c3a7c72
      Mark de Wever authored
      The paper
      - P2286R8 Formatting ranges
      is fully implemented modulo its feature test macro. This macro has been
      revised by
      - LWG3750 Too many papers bump __cpp_lib_format
      The new macro depends on
      - P2585R0 Improving default container formatting
      This paper revises parts of P2286R8 and adds new formatter
      specializations. The specialization for debug strings has some wording
      issues, which is addresses in this paper
      - P2733R0 Fix handling of empty specifiers in std::format
      
      Reviewed By: #libc, ldionne
      
      Differential Revision: https://reviews.llvm.org/D142153
      7c3a7c72
    • eopXD's avatar
      [11/15][Clang][RISCV][NFC] Remove Policy::PolicyType::Omit · 377d2604
      eopXD authored
      The attribute can be removed now as preceding patches have removed its
      users.
      
      This is the 11th commit of a patch-set that aims to change the default policy
      for RVV intrinsics from TAMU to TAMA.
      
      Please refer to the cover letter in the 1st commit (D141573) for an
      overview.
      
      Reviewed By: craig.topper, kito-cheng
      
      Differential Revision: https://reviews.llvm.org/D141768
      377d2604
    • Yitzhak Mandelbaum's avatar
      [clang][dataflow] Fix bug in handling of reference-typed fields. · b84ac96a
      Yitzhak Mandelbaum authored
      This patch fixes a subtle bug in how we create lvalues to reference-typed
      fields. In the rare case that the field is umodeled because of the depth limit
      on field modeling, the lvalue created can be malformed. This patch prevents that
      and adds some related assertions to other code dealing with lvalues for
      references.
      
      Differential Revision: https://reviews.llvm.org/D142468
      b84ac96a
    • Guillaume Chatelet's avatar
      [reland][libc][NFC] Detect host CPU features using try_compile instead of try_run. · c84d74f5
      Guillaume Chatelet authored
      This implements the same behavior as D141997 but makes sure that the same detection mechanism is used between CMake and source code.
      
      Differential Revision: https://reviews.llvm.org/D142108
      c84d74f5
  2. Jan 24, 2023