From 5c4417bb46db083fcb636c8dce1e88a46ed236b7 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Thu, 29 Nov 2018 07:02:47 +0000 Subject: [PATCH] [Inliner] Add test for merging of min-legal-vector-width function attribute. This should have been added in r337844, but apparently was I failed to 'git add' the file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347840 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../Inline/inline-min-legal-vector-width.ll | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 test/Transforms/Inline/inline-min-legal-vector-width.ll diff --git a/test/Transforms/Inline/inline-min-legal-vector-width.ll b/test/Transforms/Inline/inline-min-legal-vector-width.ll new file mode 100644 index 00000000000..cc00b5e00a7 --- /dev/null +++ b/test/Transforms/Inline/inline-min-legal-vector-width.ll @@ -0,0 +1,29 @@ +; RUN: opt %s -inline -S | FileCheck %s + +define internal void @innerSmall() "min-legal-vector-width"="128" { + ret void +} + +define internal void @innerLarge() "min-legal-vector-width"="512" { + ret void +} + +define void @outerNoAttribute() { + call void @innerLarge() + ret void +} + +define void @outerConflictingAttributeSmall() "min-legal-vector-width"="128" { + call void @innerLarge() + ret void +} + +define void @outerConflictingAttributeLarge() "min-legal-vector-width"="512" { + call void @innerSmall() + ret void +} + +; CHECK: define void @outerNoAttribute() #0 +; CHECK: define void @outerConflictingAttributeSmall() #0 +; CHECK: define void @outerConflictingAttributeLarge() #0 +; CHECK: attributes #0 = { "min-legal-vector-width"="512" }