Skip to content

Conversation

@quic-santdas
Copy link
Contributor

@quic-santdas quic-santdas commented Dec 9, 2024

This patch adds support for addrspacecast lowering. At the moment, there are no separate address spaces for Hexagon target, hence this instruction is treated as a noop.

Change-Id: I04898ffa9d75a8177b9aa13e0836988e03eb26c9
@llvmbot
Copy link
Member

llvmbot commented Dec 9, 2024

@llvm/pr-subscribers-backend-hexagon

Author: Santanu Das (quic-santdas)

Changes

Change-Id: I04898ffa9d75a8177b9aa13e0836988e03eb26c9


Full diff: https://github.com/llvm/llvm-project/pull/119195.diff

2 Files Affected:

  • (modified) llvm/lib/Target/Hexagon/HexagonTargetMachine.h (+4)
  • (added) llvm/test/CodeGen/Hexagon/addrspacecast-crash.ll (+12)
diff --git a/llvm/lib/Target/Hexagon/HexagonTargetMachine.h b/llvm/lib/Target/Hexagon/HexagonTargetMachine.h
index 6e9a78b7665042..84edbe6fd870b3 100644
--- a/llvm/lib/Target/Hexagon/HexagonTargetMachine.h
+++ b/llvm/lib/Target/Hexagon/HexagonTargetMachine.h
@@ -46,6 +46,10 @@ class HexagonTargetMachine : public LLVMTargetMachine {
   MachineFunctionInfo *
   createMachineFunctionInfo(BumpPtrAllocator &Allocator, const Function &F,
                             const TargetSubtargetInfo *STI) const override;
+
+  bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override {
+    return true;
+  }
 };
 
 } // end namespace llvm
diff --git a/llvm/test/CodeGen/Hexagon/addrspacecast-crash.ll b/llvm/test/CodeGen/Hexagon/addrspacecast-crash.ll
new file mode 100644
index 00000000000000..ce197bdeea1f38
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/addrspacecast-crash.ll
@@ -0,0 +1,12 @@
+; Tests if addrspacecast is handled in Hexagon backend
+
+; REQUIRES: asserts
+
+; RUN: llc -march=hexagon %s -o /dev/null
+
+define double @f(ptr %G, ptr %x) {
+BB:
+  %Castaddrspacecast = addrspacecast ptr %x to ptr addrspace(1)
+  store ptr addrspace(1) %Castaddrspacecast, ptr %G, align 8
+  ret double 0.000000e+00
+}

@quic-santdas
Copy link
Contributor Author

@iajbar @androm3da Please review.

@quic-santdas
Copy link
Contributor Author

Gentle reminder.

@androm3da androm3da requested a review from iajbar December 17, 2024 14:18
@androm3da
Copy link
Member

LGTM but someone else should approve

@quic-santdas quic-santdas deleted the addrspacec branch December 20, 2024 08:15
@quic-santdas quic-santdas restored the addrspacec branch December 20, 2024 17:15
@quic-santdas quic-santdas reopened this Dec 20, 2024
@iajbar iajbar merged commit 6780ab3 into llvm:main Dec 20, 2024
15 checks passed
@quic-santdas
Copy link
Contributor Author

Fixes #97943

@quic-santdas quic-santdas deleted the addrspacec branch October 22, 2025 05:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants