llvm-6502/test/MC/AsmParser/exprs-invalid.s
Jim Grosbach 254cf03a45 Asm parser range checking on .<size> <value> directives.
For example, ".byte 256" would previously assert() when emitting an object
file. Now it generates a diagnostic that the literal value is out of range.

rdar://9686950


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134069 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-29 16:05:14 +00:00

15 lines
530 B
ArmAsm

// RUN: not llvm-mc -triple x86_64-apple-darwin10 %s 2> %t.err | FileCheck %s
// RUN: FileCheck --check-prefix=CHECK-ERRORS %s < %t.err
// CHECK: .section __TEXT,__text,regular,pure_instructions
// CHECK-ERRORS: error: invalid octal number
.long 80+08
// CHECK-ERRORS: error: invalid hexadecimal number
.long 80+0xzz
// CHECK-ERRORS: error: literal value out of range for directive
.byte 256
// CHECK-ERRORS: error: literal value out of range for directive
.long 4e71cf69 // double floating point constant due to missing "0x"