| ## Test that llvm-objdump can display nested OffloadBinary images. |
| |
| # RUN: yaml2obj %S/Inputs/inner.yaml -o %t-inner.bin |
| # RUN: %python -c "import sys; hex = open('%/t-inner.bin', 'rb').read().hex(); test = open('%/s', 'r').read(); sys.stdout.write(test.replace('INNER_IMAGE', hex))" | yaml2obj - -o %t.bin |
| # RUN: llvm-objdump --offloading %t.bin | FileCheck --match-full-lines --strict-whitespace --implicit-check-not={{.}} %s |
| |
| !Offload |
| Members: |
| - ImageKind: IMG_Object |
| OffloadKind: OFK_OpenMP |
| String: |
| - Key: "triple" |
| Value: "x-y-z" |
| - Key: "arch" |
| Value: "none" |
| Content: INNER_IMAGE |
| - ImageKind: IMG_Object |
| OffloadKind: OFK_OpenMP |
| String: |
| - Key: "triple" |
| Value: "a-b-c" |
| - Key: "arch" |
| Value: "none" |
| Content: INNER_IMAGE |
| |
| # CHECK:OFFLOADING IMAGE [0]: |
| # CHECK-NEXT:kind elf |
| # CHECK-NEXT:arch none |
| # CHECK-NEXT:triple x-y-z |
| # CHECK-NEXT:producer openmp |
| # CHECK-NEXT:image size {{[0-9]+}} bytes |
| # CHECK-NEXT:nested images 2 |
| # CHECK-EMPTY: |
| # CHECK-NEXT: OFFLOADING IMAGE [0.0]: |
| # CHECK-NEXT: kind llvm ir |
| # CHECK-NEXT: arch arch1 |
| # CHECK-NEXT: triple x-y-z |
| # CHECK-NEXT: producer openmp |
| # CHECK-NEXT: image size {{[0-9]+}} bytes |
| # CHECK-EMPTY: |
| # CHECK-NEXT: OFFLOADING IMAGE [0.1]: |
| # CHECK-NEXT: kind llvm ir |
| # CHECK-NEXT: arch arch2 |
| # CHECK-NEXT: triple x-y-z |
| # CHECK-NEXT: producer openmp |
| # CHECK-NEXT: image size {{[0-9]+}} bytes |
| # CHECK-EMPTY: |
| # CHECK-NEXT:OFFLOADING IMAGE [1]: |
| # CHECK-NEXT:kind elf |
| # CHECK-NEXT:arch none |
| # CHECK-NEXT:triple a-b-c |
| # CHECK-NEXT:producer openmp |
| # CHECK-NEXT:image size {{[0-9]+}} bytes |
| # CHECK-NEXT:nested images 2 |
| # CHECK-EMPTY: |
| # CHECK-NEXT: OFFLOADING IMAGE [1.0]: |
| # CHECK-NEXT: kind llvm ir |
| # CHECK-NEXT: arch arch1 |
| # CHECK-NEXT: triple x-y-z |
| # CHECK-NEXT: producer openmp |
| # CHECK-NEXT: image size {{[0-9]+}} bytes |
| # CHECK-EMPTY: |
| # CHECK-NEXT: OFFLOADING IMAGE [1.1]: |
| # CHECK-NEXT: kind llvm ir |
| # CHECK-NEXT: arch arch2 |
| # CHECK-NEXT: triple x-y-z |
| # CHECK-NEXT: producer openmp |
| # CHECK-NEXT: image size {{[0-9]+}} bytes |