| # RUN: llvm-mc -arch=hexagon -filetype=asm %s 2>%t; FileCheck %s <%t |
| # |
| |
| # Check that proper packets are not wrongly flagged as invalid. |
| |
| 1-3-4-f: |
| { |
| r3 = memub(r2++#1) |
| if (cmp.eq(r3.new,#0)) jump:nt . |
| jumpr lr |
| r4 = #4 |
| } |
| # CHECK-NOT: rror: invalid instruction packet |
| |
| 1-3-f-f: |
| { |
| r3 = memub(r2++#1) |
| if (cmp.eq(r3.new,#0)) jump:nt . |
| r5 = #5 |
| r4 = #4 |
| } |
| # CHECK-NOT: rror: invalid instruction packet |
| |
| # Special case of a fat packet that will slim when a compound is formed. |
| 3-3-8-c: |
| { LOOP0(3-3-8-c, R7) |
| P0 = CMP.GT(R7, #0) |
| IF (!P0.NEW) JUMP:NT . |
| R21:20 = MEMD(R0+#16) |
| R23:22 = MEMD(R0+#24) |
| } |
| # CHECK-NOT: rror: invalid instruction packet |
| |
| 1-f-f-f: |
| { |
| r3 = #3 |
| if (cmp.eq(r3.new,#0)) jump:nt . |
| r5 = #5 |
| r4 = #4 |
| } |
| # CHECK-NOT: rror: invalid instruction packet |
| |
| 4: |
| jumpr lr |
| # CHECK-NOT: rror: invalid instruction packet |
| |
| f-f-f-f: |
| { |
| r3 = #3 |
| r2 = #2 |
| r5 = #5 |
| r4 = #4 |
| } |
| # CHECK-NOT: rror: invalid instruction packet |
| |