[all-commits] [llvm/llvm-project] 4b2a02: [X86] Replace X86 specific PDEP/PEXT handling with...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Jun 18 23:27:49 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4b2a02d47e31da4764aa6e204e6c502ccc69e201
      https://github.com/llvm/llvm-project/commit/4b2a02d47e31da4764aa6e204e6c502ccc69e201
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-19 (Fri, 19 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/test/CodeGen/X86/bmi2-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Target/X86/X86InstrMisc.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/CodeGen/X86/bmi2.ll
    M llvm/test/Instrumentation/MemorySanitizer/bmi.ll
    M llvm/test/Instrumentation/MemorySanitizer/pdep.ll
    M llvm/test/Instrumentation/MemorySanitizer/pext.ll
    M llvm/test/Transforms/InstCombine/pdep.ll
    M llvm/test/Transforms/InstCombine/pext.ll

  Log Message:
  -----------
  [X86] Replace X86 specific PDEP/PEXT handling with generic intrinsics (#204144)

* Remove X86ISD::PDEP/PEXT and use ISD::PDEP/PEXT instead
* AutoUpgrade x86 pdep/pext intrinsics to llvm.pdep/pext generics
* Move X86 DAG knownbits/demandedbits handling to generic (unchanged)
* Move X86 InstCombine folds to generic (unchanged)
* Add memory sanitizer handling for generic pdep/pext intrinsics
* Updated clang builtins to emit generics

Fixes #204537



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list