diff options
| author | Bill Wendling <isanbard@gmail.com> | 2018-05-14 05:25:36 +0000 |
|---|---|---|
| committer | Bill Wendling <isanbard@gmail.com> | 2018-05-14 05:25:36 +0000 |
| commit | 2a302210d0a34ee6406c88ef727004b826eeca32 (patch) | |
| tree | cbbe5fb5e6ab7c3b3d3aad066adcdf8b3cf4a6e1 /llvm/test/MC/AsmParser | |
| parent | f633f3eb67dbbb337ae1f929b0f840bd2ba00a67 (diff) | |
| download | bcm5719-llvm-2a302210d0a34ee6406c88ef727004b826eeca32.tar.gz bcm5719-llvm-2a302210d0a34ee6406c88ef727004b826eeca32.zip | |
Correct compatibility with the GNU Assembler's handling of comparison ops
GAS returns -1 for a comparison operator if the result is true and 0 if false.
https://www.sourceware.org/binutils/docs-2.12/as.info/Infix-Ops.html#Infix%20Ops
llvm-svn: 332215
Diffstat (limited to 'llvm/test/MC/AsmParser')
| -rw-r--r-- | llvm/test/MC/AsmParser/altmacro_string.s | 2 | ||||
| -rw-r--r-- | llvm/test/MC/AsmParser/directive_space.s | 18 | ||||
| -rw-r--r-- | llvm/test/MC/AsmParser/exprs.s | 12 |
3 files changed, 21 insertions, 11 deletions
diff --git a/llvm/test/MC/AsmParser/altmacro_string.s b/llvm/test/MC/AsmParser/altmacro_string.s index 70012b2b852..ce024676b25 100644 --- a/llvm/test/MC/AsmParser/altmacro_string.s +++ b/llvm/test/MC/AsmParser/altmacro_string.s @@ -32,7 +32,7 @@ concat <simple>,<Check>,<0> # Test #3: # The altmacro cannot affect the regular less/greater behavior. -# CHECK: addl $1, %eax +# CHECK: addl $-1, %eax # CHECK: addl $0, %eax .macro fun3 arg1 arg2 diff --git a/llvm/test/MC/AsmParser/directive_space.s b/llvm/test/MC/AsmParser/directive_space.s index eadc4fc6383..dc21a3b88e2 100644 --- a/llvm/test/MC/AsmParser/directive_space.s +++ b/llvm/test/MC/AsmParser/directive_space.s @@ -11,11 +11,21 @@ TEST1: .space 2, 3 # CHECK: TEST2: +# CHECK: .space 1,3 +TEST2: + .space -(2 > 0), 3 + +# CHECK: TEST3: # CHECK: .space 1 -TEST2: +TEST3: .skip 1 -# CHECK: TEST3 +# CHECK: TEST4 # CHECK: .space TEST0-TEST1 -TEST3: - .space TEST0 - TEST1 +TEST4: + .skip TEST0 - TEST1 + +# CHECK: TEST5 +# CHECK: .space -((TEST0-TEST1)>0) +TEST5: + .skip -((TEST0 - TEST1) > 0) diff --git a/llvm/test/MC/AsmParser/exprs.s b/llvm/test/MC/AsmParser/exprs.s index 1c3e284bcf7..d2e2334e836 100644 --- a/llvm/test/MC/AsmParser/exprs.s +++ b/llvm/test/MC/AsmParser/exprs.s @@ -21,12 +21,12 @@ k: check_expr 1 & 3, 1 check_expr 4 / 2, 2 check_expr 4 / -2, -2 - check_expr 1 == 1, 1 + check_expr 1 == 1, -1 check_expr 1 == 0, 0 - check_expr 1 > 0, 1 - check_expr 1 >= 1, 1 - check_expr 1 < 2, 1 - check_expr 1 <= 1, 1 + check_expr 1 > 0, -1 + check_expr 1 >= 1, -1 + check_expr 1 < 2, -1 + check_expr 1 <= 1, -1 check_expr 4 % 3, 1 check_expr 2 * 2, 4 check_expr 2 != 2, 0 @@ -43,7 +43,7 @@ k: check_expr 1 || 2, 1 check_expr 0 || 1, 1 check_expr 0 || 0, 0 - check_expr 1 + 2 < 3 + 4, 1 + check_expr 1 + 2 < 3 + 4, -1 check_expr 1 << 8 - 1, 128 check_expr 3 * 9 - 2 * 9 + 1, 10 |

