blob: af8aad7b9e0438003eae2c3071187fd9c2782b75 [file] [edit]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
; RUN: split-file %s %t
; RUN: not opt -S -disable-output < %t/half.ll 2>&1 | FileCheck %s --check-prefix=HALF
; RUN: not opt -S -disable-output < %t/bfloat.ll 2>&1 | FileCheck %s --check-prefix=BFLOAT
; Test that providing a hex literal larger than 16 bits for half-precision
; triggers a proper error message instead of a compiler crash.
;--- half.ll
define half @test_half_overflow() {
; HALF: error: hexadecimal constant too large for half (16-bit)
%1 = fadd half 0xH5F2F00, 0xH0000
ret half %1
}
;--- bfloat.ll
define bfloat @test_bfloat_overflow() {
; BFLOAT: error: hexadecimal constant too large for bfloat (16-bit)
%1 = fadd bfloat 0xR5F2F00, 0xR0000
ret bfloat %1
}