[llvm] [clang-tools-extra] [compiler-rt] [clang] [InferAddressSpaces] Fix constant replace to avoid modifying other functions (PR #70611)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 1 01:59:57 PDT 2023
================
@@ -0,0 +1,32 @@
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 3
+; RUN: opt -assume-default-is-flat-addrspace -S -passes=infer-address-spaces < %s 2>&1 | FileCheck %s
+
+ at g = addrspace(1) global i32 0, align 4
+
+define ptr @f2() {
+; CHECK-LABEL: define ptr @f2() {
+; CHECK-NEXT: entry:
+; CHECK-NEXT: [[X2:%.*]] = addrspacecast ptr addrspace(1) @g to ptr
+; CHECK-NEXT: ret ptr [[X2]]
+;
+entry:
+ %x1 = addrspacecast ptr addrspacecast (ptr addrspace(1) @g to ptr) to ptr addrspace(1)
+ %x2 = addrspacecast ptr addrspace(1) %x1 to ptr
+ ret ptr %x2
+}
+
+define ptr @f3() #0 {
----------------
arsenm wrote:
Should add a comment explaining why f3 is here. Maybe also rename it to something descriptive
https://github.com/llvm/llvm-project/pull/70611
More information about the llvm-commits
mailing list