[all-commits] [llvm/llvm-project] 669784: [X86][Atom] Fix vector variable shift resource/thr...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Wed May 26 02:33:03 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 66978466baefbaac3234df07851ec6d94f99914c
      https://github.com/llvm/llvm-project/commit/66978466baefbaac3234df07851ec6d94f99914c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-05-26 (Wed, 26 May 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ScheduleAtom.td
    M llvm/test/tools/llvm-mca/X86/Atom/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/Atom/resources-sse2.s

  Log Message:
  -----------
  [X86][Atom] Fix vector variable shift resource/throughputs

Match whats documented in the Intel AOM - the non-immediate variants of the PSLL*/PSRA*/PSRL* shift instructions requires BOTH ports - this was being incorrectly modelled as EITHER port.

Now that we can use in-order models in llvm-mca, the atom model is a good "worst case scenario" analysis for x86.


  Commit: 942e01de896a5e1fa76d367747e8fc0126038038
      https://github.com/llvm/llvm-project/commit/942e01de896a5e1fa76d367747e8fc0126038038
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-05-26 (Wed, 26 May 2021)

  Changed paths:
    R llvm/test/Analysis/CostModel/X86/testshiftashr.ll
    R llvm/test/Analysis/CostModel/X86/testshiftlshr.ll
    R llvm/test/Analysis/CostModel/X86/testshiftshl.ll

  Log Message:
  -----------
  [CostModel][X86] Remove old testshift* tests

The vector shift cost tests are better covered (more cpu/sse levels) by the vshift-*-*cost files, and we're trying to avoid codegen tests in here as it makes it harder to maintain the test files.


Compare: https://github.com/llvm/llvm-project/compare/794fb5482efc...942e01de896a


More information about the All-commits mailing list