| ; RUN: llvm-ml -filetype=s %s /Fo - /DT1=test1 /D T2=test2 /Dtest5=def /Dtest6 | FileCheck %s |
| |
| .code |
| |
| t1: |
| ret |
| ; CHECK-NOT: t1: |
| ; CHECK-LABEL: test1: |
| ; CHECK-NOT: t1: |
| |
| t2: |
| ret |
| ; CHECK-NOT: t2: |
| ; CHECK-LABEL: test2: |
| ; CHECK-NOT: t2: |
| |
| t3: |
| ifdef t1 |
| xor eax, eax |
| endif |
| ret |
| ; CHECK-LABEL: t3: |
| ; CHECK: xor eax, eax |
| ; CHECK: ret |
| |
| t4: |
| ifdef undefined |
| xor eax, eax |
| elseifdef t2 |
| xor ebx, ebx |
| endif |
| ret |
| ; CHECK-LABEL: t4: |
| ; CHECK-NOT: xor eax, eax |
| ; CHECK: xor ebx, ebx |
| ; CHECK: ret |
| |
| % t5_original BYTE "&test5" |
| ; CHECK-LABEL: t5_original: |
| ; CHECK-NEXT: .byte 100 |
| ; CHECK-NEXT: .byte 101 |
| ; CHECK-NEXT: .byte 102 |
| |
| test5 textequ <redef> |
| |
| % t5_changed BYTE "&test5" |
| ; CHECK-LABEL: t5_changed: |
| ; CHECK-NEXT: .byte 114 |
| ; CHECK-NEXT: .byte 101 |
| ; CHECK-NEXT: .byte 100 |
| ; CHECK-NEXT: .byte 101 |
| ; CHECK-NEXT: .byte 102 |
| |
| t6: |
| ifdef test6 |
| xor eax, eax |
| endif |
| ret |
| ; CHECK-LABEL: t6: |
| ; CHECK: xor eax, eax |
| ; CHECK: ret |
| |
| end |