[all-commits] [llvm/llvm-project] 3770b4: [ARM] Don't emit Arm speculation hardening thunks ...

David Green via All-commits all-commits at lists.llvm.org
Mon Jan 23 03:22:24 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3770b4aa3c5a06efbf43b5c22b2b641794a41dca
      https://github.com/llvm/llvm-project/commit/3770b4aa3c5a06efbf43b5c22b2b641794a41dca
  Author: David Green <david.green at arm.com>
  Date:   2023-01-23 (Mon, 23 Jan 2023)

  Changed paths:
    M llvm/include/llvm/CodeGen/IndirectThunks.h
    M llvm/lib/Target/AArch64/AArch64SLSHardening.cpp
    M llvm/lib/Target/ARM/ARMSLSHardening.cpp
    M llvm/lib/Target/X86/X86IndirectThunks.cpp
    A llvm/test/CodeGen/ARM/speculation-hardening-sls-boththunks.ll
    M llvm/test/CodeGen/ARM/speculation-hardening-sls.ll

  Log Message:
  -----------
  [ARM] Don't emit Arm speculation hardening thunks under Thumb and vice-versa

Given a patch like D129506, using instructions not valid for the current
target feature set becomes an error. This means that emitting Arm
instructions in a Thumb target (or vice versa) becomes an error. When
running in Thumb mode only thumb thunks will be needed, and in Arm mode
only arm thunks are needed. This patch limits the emitted thunks to just
the ones valid for the current architecture.

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




More information about the All-commits mailing list