; RUN: opt -instcombine -S < %s | FileCheck %s

; This test is defending against a TypeSize message raised in the method
; `valueCoversEntireFragment` in Local.cpp because of an implicit cast from
; `TypeSize` to `uint64_t`. This particular TypeSize message only occurred when
; debug info was available.

; CHECK-LABEL: @debug_local_scalable(
define <vscale x 2 x double> @debug_local_scalable(<vscale x 2 x double> %tostore) {
  %vx = alloca <vscale x 2 x double>, align 16
  call void @llvm.dbg.declare(metadata <vscale x 2 x double>* %vx, metadata !3, metadata !DIExpression()), !dbg !5
  store <vscale x 2 x double> %tostore, <vscale x 2 x double>* %vx, align 16
  %ret = call <vscale x 2 x double> @f(<vscale x 2 x double>* %vx)
  ret <vscale x 2 x double> %ret
}

declare <vscale x 2 x double> @f(<vscale x 2 x double>*)

define float @debug_scalablevec_bitcast_to_scalar() {
  %v.addr = alloca <vscale x 4 x float>, align 16
  call void @llvm.dbg.declare(metadata <vscale x 4 x float>* %v.addr, metadata !3, metadata !DIExpression()), !dbg !5
  %a = bitcast <vscale x 4 x float>* %v.addr to float*
  %b = load float, float* %a, align 16
  ret float %b
}

declare void @llvm.dbg.declare(metadata, metadata, metadata)

!llvm.module.flags = !{!2}
!llvm.dbg.cu = !{!0}

!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1)
!1 = !DIFile(filename: "/tmp/test.c", directory: "/tmp/")
!2 = !{i32 2, !"Debug Info Version", i32 3}
!3 = !DILocalVariable(scope: !4)
!4 = distinct !DISubprogram(unit: !0)
!5 = !DILocation(scope: !4)
