| ; RUN: llc < %s -mtriple=xcore | FileCheck %s |
| define void @a_val() nounwind { |
| ret void |
| } |
| @b_val = constant i32 42, section ".cp.rodata" |
| @c_val = global i32 42 |
| |
| @a = alias void (), ptr @a_val |
| @b = alias i32, ptr @b_val |
| @c = alias i32, ptr @c_val |
| |
| ; CHECK-LABEL: a_addr: |
| ; CHECK: ldap r11, a |
| ; CHECK: retsp |
| define ptr @a_addr() nounwind { |
| entry: |
| ret ptr @a |
| } |
| |
| ; CHECK-LABEL: b_addr: |
| ; CHECK: ldaw r11, cp[b] |
| ; CHECK: retsp |
| define ptr @b_addr() nounwind { |
| entry: |
| ret ptr @b |
| } |
| |
| ; CHECK-LABEL: c_addr: |
| ; CHECK: ldaw r0, dp[c] |
| ; CHECK: retsp |
| define ptr @c_addr() nounwind { |
| entry: |
| ret ptr @c |
| } |