15f2a7fa6SAlexey Lapshin# RUN: rm -rf %t 25f2a7fa6SAlexey Lapshin# RUN: mkdir -p %t 35f2a7fa6SAlexey Lapshin# RUN: llc -filetype=obj %p/../../Inputs/frame-dw2.ll -o %t/frame-dw2.o 45f2a7fa6SAlexey Lapshin# RUN: llc -filetype=obj %p/../../Inputs/frame-dw4.ll -o %t/frame-dw4.o 5*f1fdfe68SAlexey Lapshin# RUN: dsymutil --linker parallel -f -oso-prepend-path=%t -y %s -o - | \ 65f2a7fa6SAlexey Lapshin# RUN: llvm-dwarfdump -debug-frame - | FileCheck %s 75f2a7fa6SAlexey Lapshin 85f2a7fa6SAlexey Lapshin# Check the handling of multiple different CIEs. To have CIEs that 95f2a7fa6SAlexey Lapshin# appear to be different, use a dwarf2 version of the file along with 105f2a7fa6SAlexey Lapshin# a dwarf 4 version. The CIE header version (and layout) will be different. 115f2a7fa6SAlexey Lapshin--- 125f2a7fa6SAlexey Lapshintriple: 'i386-apple-darwin' 135f2a7fa6SAlexey Lapshinobjects: 145f2a7fa6SAlexey Lapshin - filename: frame-dw2.o 155f2a7fa6SAlexey Lapshin symbols: 165f2a7fa6SAlexey Lapshin - { sym: _bar, objAddr: 0x0, binAddr: 0x1000, size: 0x12 } 175f2a7fa6SAlexey Lapshin - { sym: _baz, objAddr: 0x0, binAddr: 0x2000, size: 0x12 } 185f2a7fa6SAlexey Lapshin - filename: frame-dw4.o 195f2a7fa6SAlexey Lapshin symbols: 205f2a7fa6SAlexey Lapshin - { sym: _baz, objAddr: 0x0, binAddr: 0x3000, size: 0x12 } 215f2a7fa6SAlexey Lapshin - filename: frame-dw2.o 225f2a7fa6SAlexey Lapshin symbols: 235f2a7fa6SAlexey Lapshin - { sym: _bar, objAddr: 0x0, binAddr: 0x4000, size: 0x12 } 245f2a7fa6SAlexey Lapshin... 255f2a7fa6SAlexey Lapshin 265f2a7fa6SAlexey Lapshin# CHECK: .debug_frame contents: 275f2a7fa6SAlexey Lapshin# CHECK: 00000000 {{[0-9a-f]*}} ffffffff CIE 285f2a7fa6SAlexey Lapshin# CHECK-NEXT: Format: DWARF32 295f2a7fa6SAlexey Lapshin# CHECK-NEXT: Version:{{.*}}1 305f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 315f2a7fa6SAlexey Lapshin# CHECK: FDE cie=00000000 pc=00001000...00001 325f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 335f2a7fa6SAlexey Lapshin# CHECK: FDE cie=00000000 pc=00002000...00002 345f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 355f2a7fa6SAlexey Lapshin# CHECK: [[CIEDW4:[0-9a-f]*]] 00000010 ffffffff CIE 365f2a7fa6SAlexey Lapshin# CHECK-NEXT: Format: DWARF32 375f2a7fa6SAlexey Lapshin# CHECK-NEXT: Version:{{.*}}4 385f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 395f2a7fa6SAlexey Lapshin# CHECK: FDE cie=[[CIEDW4]] pc=00003000...00003 405f2a7fa6SAlexey Lapshin# CHECK: [[CIEDW1_2:[0-9a-f]*]] 00000010 ffffffff CIE 415f2a7fa6SAlexey Lapshin# CHECK-NEXT: Format: DWARF32 425f2a7fa6SAlexey Lapshin# CHECK-NEXT: Version:{{.*}}1 435f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 445f2a7fa6SAlexey Lapshin# CHECK: FDE cie=[[CIEDW1_2]] pc=00004000...00004 455f2a7fa6SAlexey Lapshin# CHECK-NOT: FDE 465f2a7fa6SAlexey Lapshin# CHECK: .eh_frame contents: 47