[PATCH] D70323: ThinLTO: Fix assembler to emit alwaysInline in the summary
Teresa Johnson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 18 15:04:55 PST 2019
This revision was automatically updated to reflect the committed changes.
Closed by commit rGaeca47fa0fbc: ThinLTO: Fix assembler to emit alwaysInline in the summary (authored by tejohnson).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70323/new/
https://reviews.llvm.org/D70323
Files:
llvm/lib/IR/AsmWriter.cpp
llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
Index: llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
===================================================================
--- llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
+++ llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
@@ -6,11 +6,12 @@
; RUN: -r=%t2.bc,main,plx \
; RUN: -r=%t2.bc,foo,l \
; RUN: -import-instr-limit=0
-; RUN: llvm-dis %t.o.2.3.import.bc -o - | FileCheck %s
+; RUN: llvm-dis %t.o.2.3.import.bc -o - | FileCheck %s --check-prefix=CHECK1
+; RUN: llvm-dis %t.o.index.bc -o - | FileCheck %s --check-prefix=CHECK2
; foo() being always_inline should be imported irrespective of the
; instruction limit
-; CHECK: define available_externally dso_local void @foo()
+; CHECK1: define available_externally dso_local void @foo()
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
@@ -22,3 +23,4 @@
}
attributes #0 = { alwaysinline nounwind uwtable }
+; CHECK2: ^2 = gv: (guid: {{.*}}, summaries: (function: (module: ^0, flags: (linkage: external, notEligibleToImport: 0, live: 1, dsoLocal: 1, canAutoHide: 0), insts: 1, funcFlags: (readNone: 0, readOnly: 0, noRecurse: 0, returnDoesNotAlias: 0, noInline: 0, alwaysInline: 1))))
Index: llvm/lib/IR/AsmWriter.cpp
===================================================================
--- llvm/lib/IR/AsmWriter.cpp
+++ llvm/lib/IR/AsmWriter.cpp
@@ -2955,7 +2955,7 @@
FunctionSummary::FFlags FFlags = FS->fflags();
if (FFlags.ReadNone | FFlags.ReadOnly | FFlags.NoRecurse |
- FFlags.ReturnDoesNotAlias | FFlags.NoInline) {
+ FFlags.ReturnDoesNotAlias | FFlags.NoInline | FFlags.AlwaysInline) {
Out << ", funcFlags: (";
Out << "readNone: " << FFlags.ReadNone;
Out << ", readOnly: " << FFlags.ReadOnly;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70323.229932.patch
Type: text/x-patch
Size: 1772 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191118/1b024479/attachment.bin>
More information about the llvm-commits
mailing list