[all-commits] [llvm/llvm-project] 2c1ca8: [LLVM][CodeGen][AArch64] Implement expansion for f...

Paul Walker via All-commits all-commits at lists.llvm.org
Thu Sep 24 07:14:38 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2c1ca898c2baed18179811e088f7694b1927a816
      https://github.com/llvm/llvm-project/commit/2c1ca898c2baed18179811e088f7694b1927a816
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-09-24 (Thu, 24 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/Analysis/CostModel/AArch64/loop_dependence_mask.ll
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract-nosve.ll
    A llvm/test/CodeGen/AArch64/neon-get-active-lane-mask.ll

  Log Message:
  -----------
  [LLVM][CodeGen][AArch64] Implement expansion for fixed-length get.active.lane.mask. (#225459)

A step in the direction of removing the shouldExpandGetActiveLaneMask
TTI hook. For this PR I've implemented enough functionality to allow all
legalish fixed-length variants of get.active.lane.mask to bypass the
SelectionDAGBuilder based expansion for AArch64.
    
The AArch64TargetLowering::shouldExpandGetActiveLaneMask restrictions
are related to maintaining current code quality and not because the
expansion code cannot handle them.

Tests are a copy of active_lane_mask.ll with the scalable vector tests
removed.



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