1. Sep 01, 2021
  2. Aug 31, 2021
    • Yaron Keren's avatar
      [llvm-lit] unbreak clang-only builds by not assuming llvm-lit in build dir · 10d78a06
      Yaron Keren authored
      Reviewed By: tstellar
      
      Differential Revision: https://reviews.llvm.org/D109000
      10d78a06
    • Kazu Hirata's avatar
      [clang] Remove redundant calls to c_str() (NFC) · b8debabb
      Kazu Hirata authored
      Identified with readability-redundant-string-cstr.
      b8debabb
    • Fanbo Meng's avatar
      [SystemZ][z/OS] Create html report file with text flag · ae206db2
      Fanbo Meng authored
      Change OF_None to OF_Text flag in file creation, same reasoning as https://reviews.llvm.org/D97785
      
      Reviewed By: abhina.sreeskantharajan
      
      Differential Revision: https://reviews.llvm.org/D108998
      ae206db2
    • Philip Reames's avatar
      [SCEV] If max BTC is zero, then so is the exact BTC [1 of N] · 6600e175
      Philip Reames authored
      This patch is specifically the howManyLessThan case.  There will be a couple of followon patches for other codepaths.
      
      The subtle bit is explaining why the two codepaths have a difference while both are correct. The test case with modifications is a good example, so let's discuss in terms of it.
      * The previous exact bounds for this example of (-126 + (126 smax %n))<nsw> can evaluate to either 0 or 1. Both are "correct" results, but only one of them results in a well defined loop. If %n were 127 (the only possible value producing a trip count of 1), then the loop must execute undefined behavior. As a result, we can ignore the TC computed when %n is 127. All other values produce 0.
      * The max taken count computation uses the limit (i.e. the maximum value END can be without resulting in UB) to restrict the bound computation. As a result, it returns 0 which is also correct.
      
      WARNING: The logic above only holds for a single exit loop. The current logic for max trip count would be incorrect for multiple exit loops, except that we never call computeMaxBECountForLT except when we can prove either a) no overflow occurs in this IV before exit, or b) this is the sole exit.
      
      An alternate approach here would be to add the limit logic to the symbolic path. I haven't played with this extensively, but I'm hesitant because a) the term is optional and b) I'm not sure it'll reliably simplify away. As such, the resulting code quality from expansion might actually get worse.
      
      This was noticed while trying to figure out why D108848 wasn't NFC, but is otherwise standalone.
      
      Differential Revision: https://reviews.llvm.org/D108921
      6600e175
    • Paul Robinson's avatar
      Make a generic test generic again. · 71fbfd4e
      Paul Robinson authored
      Tests in CodeGen/Generic should not depend on any specific target.
      71fbfd4e