1# REQUIRES: x86 2 3# RUN: yaml2obj --docnum=1 %s > %T/command-disassemble-process.exe 4# RUN: yaml2obj --docnum=2 %s > %t 5 6# RUN: %lldb -c %t %T/command-disassemble-process.exe \ 7# RUN: -o "settings set interpreter.stop-command-source-on-error false" \ 8# RUN: -s %S/Inputs/command-disassemble-process.lldbinit -o exit 2>&1 \ 9# RUN: | FileCheck %s 10 11# CHECK: (lldb) disassemble 12# CHECK-NEXT: command-disassemble-process.exe`main: 13# CHECK-NEXT: 0x4002 <+0>: addb %al, (%rcx) 14# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 15# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 16# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 17# CHECK-NEXT: (lldb) disassemble --line 18# CHECK-NEXT: command-disassemble-process.exe`main: 19# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 20# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 21# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 22# CHECK-NEXT: 0x400a: addb %al, (%rdi) 23# CHECK-NEXT: (lldb) disassemble --frame 24# CHECK-NEXT: command-disassemble-process.exe`main: 25# CHECK-NEXT: 0x4002 <+0>: addb %al, (%rcx) 26# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 27# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 28# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 29# CHECK-NEXT: (lldb) disassemble --pc 30# CHECK-NEXT: command-disassemble-process.exe`main: 31# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 32# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 33# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 34# CHECK-NEXT: 0x400a: addb %al, (%rdi) 35# CHECK-NEXT: (lldb) disassemble --address 0x4004 36# CHECK-NEXT: command-disassemble-process.exe`main: 37# CHECK-NEXT: 0x4002 <+0>: addb %al, (%rcx) 38# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 39# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 40# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 41# CHECK-NEXT: (lldb) disassemble --address 0xdead 42# CHECK-NEXT: error: Could not find function bounds for address 0xdead 43# CHECK-NEXT: (lldb) disassemble --count 7 44# CHECK-NEXT: command-disassemble-process.exe`main: 45# CHECK-NEXT: 0x4002 <+0>: addb %al, (%rcx) 46# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 47# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 48# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 49# CHECK-NEXT: 0x400a: addb %al, (%rdi) 50# CHECK-NEXT: 0x400c: addb %cl, (%rax) 51# CHECK-NEXT: 0x400e: addb %cl, (%rcx) 52# CHECK-NEXT: (lldb) disassemble --pc --count 7 53# CHECK-NEXT: command-disassemble-process.exe`main: 54# CHECK-NEXT: -> 0x4004 <+2>: addb %al, (%rdx) 55# CHECK-NEXT: 0x4006 <+4>: addb %al, (%rbx) 56# CHECK-NEXT: 0x4008 <+6>: addb %al, (%rsi) 57# CHECK-NEXT: 0x400a: addb %al, (%rdi) 58# CHECK-NEXT: 0x400c: addb %cl, (%rax) 59# CHECK-NEXT: 0x400e: addb %cl, (%rcx) 60# CHECK-NEXT: 0x4010: addb %cl, (%rdx) 61 62--- !ELF 63FileHeader: 64 Class: ELFCLASS64 65 Data: ELFDATA2LSB 66 Type: ET_EXEC 67 Machine: EM_X86_64 68Sections: 69 - Name: .text 70 Type: SHT_PROGBITS 71 Flags: [ SHF_ALLOC, SHF_EXECINSTR ] 72 Address: 0x0000000000004000 73 AddressAlign: 0x0000000000001000 74 Content: 00000001000200030006000700080009000A000B000E000F00100011001200130016001700180019001A001B001E001F00200021002200230026002700280029002A002B002E002F 75 - Name: .note.gnu.build-id 76 Type: SHT_NOTE 77 Flags: [ SHF_ALLOC ] 78 Address: 0x0000000000005000 79 AddressAlign: 0x0000000000001000 80 Content: 040000000800000003000000474E5500DEADBEEFBAADF00D 81Symbols: 82 - Name: main 83 Type: STT_FUNC 84 Section: .text 85 Value: 0x0000000000004002 86 Size: 0x0000000000000008 87ProgramHeaders: 88 - Type: PT_LOAD 89 Flags: [ PF_X, PF_R ] 90 VAddr: 0x4000 91 Align: 0x1000 92 Sections: 93 - Section: .text 94 - Type: PT_LOAD 95 Flags: [ PF_W, PF_R ] 96 VAddr: 0x5000 97 Align: 0x1000 98 Sections: 99 - Section: .note.gnu.build-id 100... 101 102--- !minidump 103Streams: 104 - Type: ModuleList 105 Modules: 106 - Base of Image: 0x0000000000004000 107 Size of Image: 0x00002000 108 Module Name: 'command-disassemble-process.yaml' 109 CodeView Record: 4C457042DEADBEEFBAADF00D 110 111 - Type: SystemInfo 112 Processor Arch: AMD64 113 Platform ID: Linux 114 CPU: 115 Vendor ID: GenuineIntel 116 Version Info: 0x00000000 117 Feature Info: 0x00000000 118 - Type: ThreadList 119 Threads: 120 - Thread Id: 0x000074F3 121 Context: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B001000000000006CAE000000006B7FC05A0000C81D415A0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A2BF9E5A6B7F0000000000000000000000000000000000008850C14BFD7F00009850C14BFD7F00000100000000000000B04AC14BFD7F0000000000000000000060812D01000000000800000000000000B065E05A6B7F00008004400000000000E050C14BFD7F00000000000000000000000000000000000004400000000000007F03FFFF0000FFFFFFFFFFFF000000000000000000000000801F00006B7F00000400000000000000B84CC14BFD7F0000304D405A6B7F0000C84DC14BFD7F0000C0AA405A6B7F00004F033D0000000000B84DC14BFD7F0000E84DC14BFD7F0000000000000000000000000000000000000070E05A6B7F000078629E5A6B7F0000C81D415A6B7F0000804F9E5A6B7F00000000000001000000E603000001000000E093115A6B7F0000804EC14BFD7F0000584EC14BFD7F000099ADC05A6B7F00000100000000000000AAAAD77D0000000002000000000000000800000000000000B065E05A6B7F0000E6B7C05A6B7F0000010000006B7F0000884DC14BFD7F0000106F7C5A6B7F0000984EC14BFD7F0000488B7C5A6B7F0000C4A71CB90000000001000000000000000800000000000000B065E05A6B7F000048B6C05A6B7F0000702AE25A6B7F0000D84DC14BFD7F000030489E5A6B7F0000E84EC14BFD7F0000E05E9E5A6B7F00000991F0460000000001000000000000000800000000000000B065E05A6B7F000048B6C05A6B7F00000100000000000000284EC14BFD7F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 122 Stack: 123 Start of Memory Range: 0x00007FFD4BC15080 124 Content: 30044000000000000000000000000000 125 - Type: MemoryList 126 Memory Ranges: 127 - Start of Memory Range: 0x00007FFD4BC15080 128 Content: 30044000000000000000000000000000 129... 130