unsized-global.ll
709 Bytes
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; Check that -mgpopt doesn't crash on unsized externals
; RUN: llc -mtriple=mips64-unknown-freebsd -mattr=+noabicalls -target-abi n64 -mgpopt -o - %s | FileCheck %s
%struct.a = type opaque
@b = external global %struct.a, align 1
; Function Attrs: norecurse nounwind readnone
define %struct.a* @d() {
; CHECK-LABEL: d:
; CHECK: # %bb.0: # %entry
; CHECK-NEXT: lui $1, %highest(b)
; CHECK-NEXT: daddiu $1, $1, %higher(b)
; CHECK-NEXT: dsll $1, $1, 16
; CHECK-NEXT: daddiu $1, $1, %hi(b)
; CHECK-NEXT: dsll $1, $1, 16
; CHECK-NEXT: jr $ra
; CHECK-NEXT: daddiu $2, $1, %lo(b)
entry:
ret %struct.a* @b
}