From f3f325b82fdeeb055225d98d9076214108d35f39 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 28 Apr 2010 20:16:12 +0000 Subject: fix PR6112 - When globalopt (or any other pass) does RAUW(@G, %G), metadata references in non-function-local MDNodes should drop to null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102519 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/GlobalOpt/metadata.ll | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 test/Transforms/GlobalOpt/metadata.ll (limited to 'test/Transforms') diff --git a/test/Transforms/GlobalOpt/metadata.ll b/test/Transforms/GlobalOpt/metadata.ll new file mode 100644 index 0000000..55b2ff9 --- /dev/null +++ b/test/Transforms/GlobalOpt/metadata.ll @@ -0,0 +1,19 @@ +; RUN: opt -S -globalopt metadata.ll | FileCheck %s + +; PR6112 - When globalopt does RAUW(@G, %G), the metadata reference should drop +; to null. +@G = internal global i8** null + +define i32 @main(i32 %argc, i8** %argv) { +; CHECK: @main +; CHECK: %G = alloca + store i8** %argv, i8*** @G + ret i32 0 +} + +!named = !{!0} + +; CHECK: !0 = metadata !{null} +!0 = metadata !{i8*** @G} + + -- cgit v1.1