llvm-mirror/test/MC/AsmParser/exprs-invalid.s
Jim Grosbach 88387d64d6 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

llvm-svn: 134069
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"