1. May 09, 2024
  2. May 02, 2024
  3. May 01, 2024
  4. Apr 30, 2024
  5. Apr 27, 2024
  6. Apr 26, 2024
    • Mirko Brkušanin's avatar
      [AMDGPU] Fix setting nontemporal in memory legalizer (#83815) · b544217f
      Mirko Brkušanin authored
      Iterator MI can advance in insertWait() but we need original instruction
      to set temporal hint. Just move it before handling volatile.
      b544217f
    • Björn Pettersson's avatar
      [DAGCombiner] Fix miscompile bug in combineShiftOfShiftedLogic (#89616) · 78b99c73
      Björn Pettersson authored
      Ensure that the sum of the shift amounts does not overflow the
      shift amount type when combining shifts in combineShiftOfShiftedLogic.
      
      Solves a miscompile bug found when testing the C23 BitInt feature.
      
      Targets like X86 that only use an i8 for shift amounts after
      legalization seems to be extra susceptible for bugs like this as it
      isn't legal to shift more than 255 steps.
      
      (cherry picked from commit f9b419b7)
      78b99c73
    • Bjorn Pettersson's avatar
      [DAGCombiner] Pre-commit test case for miscompile bug in combineShiftOfShiftedLogic · 1aa91720
      Bjorn Pettersson authored
      DAGCombiner is trying to fold shl over binops, and in the process
      combining it with another shl. However it needs to be more careful
      to ensure that the sum of the shift counts fits in the type used
      for the shift amount.
      For example, X86 is using i8 as shift amount type. So we need to
      make sure that the sum of the shift amounts isn't greater than 255.
      
      Fix will be applied in a later commit. This only pre-commits the
      test case to show that we currently get the wrong result.
      
      Bug was found when testing the C23 BitInt feature.
      
      (cherry picked from commit 5fd9bbde)
      1aa91720
  7. Apr 25, 2024
  8. Apr 24, 2024
  9. Apr 23, 2024
  10. Apr 17, 2024
    • Tom Stellard's avatar
      [CMake][Release] Disable PGO (#88465) (#89000) · e6c32898
      Tom Stellard authored
      Running the test-release.sh script with PGO enabled causes build errors
      like:
      
      ld.lld: error: Function Import: link error: linking module flags
      'ProfileSummary': IDs have conflicting values
      
      I believe this a build system bug due to the PGO profile data being
      generated unconditionally. If you run `ninja check-all` and then `ninja
      install` like we do in test-release.sh, then the profile data is
      regenerated during `ninja install` and some of the clang tools which are
      not test dependencies get build during the ninja install step with
      different profile data. When these tools link against the LLVM
      libraries, like libSupport, we end up with these errors.
      
      (cherry picked from commit 0d2bb7f0)
      e6c32898
    • Cinhi Young's avatar
      [MIPS] Fix the opcode of max.fmt and mina.fmt (#85609) · 028e425f
      Cinhi Young authored
      - The opcode of the mina.fmt and max.fmt is documented wrong, the
        object code compiled from the same assembly with LLVM behaves
        differently than one compiled with GCC and Binutils.
      - Modify the opcodes to match Binutils. The actual opcodes are as
      follows:
      
        {5,3} | bits {2,0} of func
                 |    ...   | 100  | 101    | 110   | 111
        -----+-----+-----+-----+-----+-----
         010  |   ...   |  min  | mina | max  | maxa
      
      (cherry picked from commit 8b859c6e)
      028e425f
    • Giuliano Belinassi's avatar
      Fix override keyword being print to the left side · e3c832b3
      Giuliano Belinassi authored
      
      
      Previously, the `override` keyword in C++ was being print in the left
      side of a method decl, which is unsupported by C++ standard. This commit
      fixes that by setting the `CanPrintOnLeft` field to 0, forcing it to be
      print on the right side of the decl.
      
      Signed-off-by: default avatarGiuliano Belinassi <gbelinassi@suse.de>
      e3c832b3