From 614c63bec6d67cbfdc17b50e443ff769a28c18d0 Mon Sep 17 00:00:00 2001 From: "Luo, Yuanke" Date: Tue, 21 Mar 2023 09:06:44 +0800 Subject: [PATCH] [X86] Create extra prolog/epilog for stack realignment [part 2] This patch is to support D145650 for elf target as well. Differential Revision: https://reviews.llvm.org/D146489 --- llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp | 2 +- llvm/test/CodeGen/X86/i386-baseptr.ll | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp b/llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp index ef3751e..bf60791 100644 --- a/llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp +++ b/llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp @@ -114,7 +114,7 @@ bool X86ArgumentStackSlotPass::runOnMachineFunction(MachineFunction &MF) { if (F.hasFnAttribute(Attribute::Naked)) return false; // Only support Linux - if (!STI.isTargetLinux()) + if (!STI.isTargetLinux() && !STI.isTargetELF()) return false; if (!TRI->hasBasePointer(MF)) return false; diff --git a/llvm/test/CodeGen/X86/i386-baseptr.ll b/llvm/test/CodeGen/X86/i386-baseptr.ll index cb8d849..df921f2 100644 --- a/llvm/test/CodeGen/X86/i386-baseptr.ll +++ b/llvm/test/CodeGen/X86/i386-baseptr.ll @@ -1,5 +1,6 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc -mtriple=i386-pc-linux -stackrealign < %s | FileCheck %s +; RUN: llc -mtriple=i386-pc-none-elf -stackrealign < %s | FileCheck %s declare i32 @helper() nounwind define void @base() #0 { -- 2.7.4