[all-commits] [llvm/llvm-project] 6f3f95: [CostModel][X86] i8/i16 sitofp/uitofp are sext/zex...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue Jul 6 06:10:47 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6f3f9535fcafcde11d3b3ef72fdc0f357813e9da
      https://github.com/llvm/llvm-project/commit/6f3f9535fcafcde11d3b3ef72fdc0f357813e9da
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-07-06 (Tue, 06 Jul 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/sitofp.ll
    M llvm/test/Analysis/CostModel/X86/uitofp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sitofp-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/uitofp.ll

  Log Message:
  -----------
  [CostModel][X86] i8/i16 sitofp/uitofp are sext/zext to i32 for sitofp

Provide a generic fallback that extends sub-i32 scalars before using the existing sitofp instructions.

These numbers can be tweaked for specific sse levels, but we should get the default handling in place first.

We get the extension for free for non-vector loads.




More information about the All-commits mailing list