Skip to content
  1. Nov 28, 2017
  2. Nov 27, 2017
  3. Nov 26, 2017
  4. Nov 25, 2017
    • Craig Topper's avatar
      [X86] Add separate intrinsics for scalar FMA4 instructions. · e485631c
      Craig Topper authored
      Summary:
      These instructions zero the non-scalar part of the lower 128-bits which makes them different than the FMA3 instructions which pass through the non-scalar part of the lower 128-bits.
      
      I've only added fmadd because we should be able to derive all other variants using operand negation in the intrinsic header like we do for AVX512.
      
      I think there are still some missed negate folding opportunities with the FMA4 instructions in light of this behavior difference that I hadn't noticed before.
      
      I've split the tests so that we can use different intrinsics for scalar testing between the two. I just copied the tests split the RUN lines and changed out the scalar intrinsics.
      
      fma4-fneg-combine.ll is a new test to make sure we negate the fma4 intrinsics correctly though there are a couple TODOs in it.
      
      Reviewers: RKSimon, spatel
      
      Reviewed By: RKSimon
      
      Subscribers: llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D39851
      
      llvm-svn: 318984
      e485631c
    • Craig Topper's avatar
      [X86] Don't report gather is legal on Skylake CPUs when AVX2/AVX512 is... · ea37e201
      Craig Topper authored
      [X86] Don't report gather is legal on Skylake CPUs when AVX2/AVX512 is disabled. Allow gather on SKX/CNL/ICL when AVX512 is disabled by using AVX2 instructions.
      
      Summary:
      This adds a new fast gather feature bit to cover all CPUs that support fast gather that we can use independent of whether the AVX512 feature is enabled. I'm only using this new bit to qualify AVX2 codegen. AVX512 is still implicitly assuming fast gather to keep tests working and to match the scatter behavior.
      
      Test command lines have been added for these two cases.
      
      Reviewers: magabari, delena, RKSimon, zvi
      
      Reviewed By: RKSimon
      
      Subscribers: llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D40282
      
      llvm-svn: 318983
      ea37e201
Loading