[all-commits] [llvm/llvm-project] 928368: [CriticalAntiDepBreaker] Teach the regmask clobber...

topperc via All-commits all-commits at lists.llvm.org
Wed Nov 27 11:21:25 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 9283681e168141bab9a883e48ce1da80b86afca3
      https://github.com/llvm/llvm-project/commit/9283681e168141bab9a883e48ce1da80b86afca3
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp
    M llvm/test/CodeGen/X86/pr44140.ll

  Log Message:
  -----------
  [CriticalAntiDepBreaker] Teach the regmask clobber check to check if any subregister is preserved before considering the super register clobbered

X86 has some calling conventions where bits 127:0 of a vector register are callee saved, but the upper bits aren't. Previously we could detect that the full ymm register was clobbered when the xmm portion was really preserved. This patch checks the subregisters to make sure they aren't preserved.

Fixes PR44140

Differential Revision: https://reviews.llvm.org/D70699




More information about the All-commits mailing list