test.o: (__TEXT,__text) section -[AppDelegate testNoSideEffect:]: arc-linetable.m:50 - (int)testNoSideEffect:(NSString *)foo { // ['is_stmt'] 0000000000000000 pushq %rbp 0000000000000001 movq %rsp, %rbp 0000000000000004 subq $0x20, %rsp 0000000000000008 leaq 0xffffffffffffffe8(%rbp), %rax 000000000000000c movq %rdi, 0xfffffffffffffff8(%rbp) 0000000000000010 movq %rsi, 0xfffffffffffffff0(%rbp) 0000000000000014 movq $0x0, 0xffffffffffffffe8(%rbp) 000000000000001c movq %rax, %rdi 000000000000001f movq %rdx, %rsi 0000000000000022 callq 0x27 0000000000000027 movabsq $0x0, %rsi 0000000000000031 leaq 0xffffffffffffffe8(%rbp), %rax 0000000000000035 movl $0x1, 0xffffffffffffffe4(%rbp) arc-linetable.m:52  return 1; // Return expression // ['is_stmt', 'prologue_end'] 000000000000003c movq %rax, %rdi 000000000000003f callq 0x44 0000000000000044 movl $0x1, %eax arc-linetable.m:54 } // Cleanup + Ret // ['is_stmt'] 0000000000000049 addq $0x20, %rsp 000000000000004d popq %rbp 000000000000004e ret 000000000000004f nop -[AppDelegate testNoCleanup]: arc-linetable.m:56 - (int)testNoCleanup { // ['is_stmt'] 0000000000000050 pushq %rbp 0000000000000051 movq %rsp, %rbp 0000000000000054 movl $0x1, %eax 0000000000000059 movq %rdi, 0xfffffffffffffff8(%rbp) 000000000000005d movq %rsi, 0xfffffffffffffff0(%rbp) arc-linetable.m:58  return 1; // ['is_stmt', 'prologue_end'] 0000000000000061 popq %rbp 0000000000000062 ret 0000000000000063 nopw %cs:(%rax,%rax) -[AppDelegate testSideEffect:]: arc-linetable.m:61 - (int)testSideEffect:(NSString *)foo { // ['is_stmt'] 0000000000000070 pushq %rbp 0000000000000071 movq %rsp, %rbp 0000000000000074 subq $0x40, %rsp 0000000000000078 leaq 0xffffffffffffffe8(%rbp), %rax 000000000000007c movq %rdi, 0xfffffffffffffff8(%rbp) 0000000000000080 movq %rsi, 0xfffffffffffffff0(%rbp) 0000000000000084 movq $0x0, 0xffffffffffffffe8(%rbp) 000000000000008c movq %rax, %rdi 000000000000008f movq %rdx, %rsi 0000000000000092 callq 0x97 0000000000000097 movabsq $0x0, %rsi 00000000000000a1 leaq 0xffffffffffffffe8(%rbp), %rax arc-linetable.m:63  return [self testNoSideEffect :foo]; // ['is_stmt', 'prologue_end'] 00000000000000a5 movq 0xfffffffffffffff8(%rbp), %rdx 00000000000000a9 movq 0xffffffffffffffe8(%rbp), %rdi 00000000000000ad movq 0xa0c(%rip), %rcx 00000000000000b4 movq %rdi, 0xffffffffffffffd8(%rbp) 00000000000000b8 movq %rdx, %rdi 00000000000000bb movq %rsi, 0xffffffffffffffd0(%rbp) 00000000000000bf movq %rcx, %rsi 00000000000000c2 movq 0xffffffffffffffd8(%rbp), %rdx 00000000000000c6 movq %rax, 0xffffffffffffffc8(%rbp) 00000000000000ca callq 0xcf 00000000000000cf movl $0x1, 0xffffffffffffffe4(%rbp) arc-linetable.m:65 } // ['is_stmt'] 00000000000000d6 movq 0xffffffffffffffc8(%rbp), %rcx 00000000000000da movq %rcx, %rdi 00000000000000dd movq 0xffffffffffffffd0(%rbp), %rsi 00000000000000e1 movl %eax, 0xffffffffffffffc4(%rbp) 00000000000000e4 callq 0xe9 00000000000000e9 movl 0xffffffffffffffc4(%rbp), %eax 00000000000000ec addq $0x40, %rsp 00000000000000f0 popq %rbp 00000000000000f1 ret 00000000000000f2 nopw %cs:(%rax,%rax) -[AppDelegate testMultiline:]: arc-linetable.m:67 - (int)testMultiline:(NSString *)foo { // ['is_stmt'] 0000000000000100 pushq %rbp 0000000000000101 movq %rsp, %rbp 0000000000000104 subq $0x40, %rsp 0000000000000108 leaq 0xffffffffffffffe8(%rbp), %rax 000000000000010c movq %rdi, 0xfffffffffffffff8(%rbp) 0000000000000110 movq %rsi, 0xfffffffffffffff0(%rbp) 0000000000000114 movq $0x0, 0xffffffffffffffe8(%rbp) 000000000000011c movq %rax, %rdi 000000000000011f movq %rdx, %rsi 0000000000000122 callq 0x127 0000000000000127 movabsq $0x0, %rsi 0000000000000131 leaq 0xffffffffffffffe8(%rbp), %rax arc-linetable.m:69  int r = [self testSideEffect :foo]; // ['is_stmt', 'prologue_end'] 0000000000000135 movq 0xfffffffffffffff8(%rbp), %rdx 0000000000000139 movq 0xffffffffffffffe8(%rbp), %rdi 000000000000013d movq 0x984(%rip), %rcx 0000000000000144 movq %rdi, 0xffffffffffffffd8(%rbp) 0000000000000148 movq %rdx, %rdi 000000000000014b movq %rsi, 0xffffffffffffffd0(%rbp) 000000000000014f movq %rcx, %rsi 0000000000000152 movq 0xffffffffffffffd8(%rbp), %rdx 0000000000000156 movq %rax, 0xffffffffffffffc8(%rbp) 000000000000015a callq 0x15f 000000000000015f movl %eax, 0xffffffffffffffe4(%rbp) arc-linetable.m:71  return r; // ['is_stmt'] 0000000000000162 movl 0xffffffffffffffe4(%rbp), %eax 0000000000000165 movl $0x1, 0xffffffffffffffe0(%rbp) arc-linetable.m:73 } // ['is_stmt'] 000000000000016c movq 0xffffffffffffffc8(%rbp), %rcx 0000000000000170 movq %rcx, %rdi 0000000000000173 movq 0xffffffffffffffd0(%rbp), %rsi 0000000000000177 movl %eax, 0xffffffffffffffc4(%rbp) 000000000000017a callq 0x17f 000000000000017f movl 0xffffffffffffffc4(%rbp), %eax 0000000000000182 addq $0x40, %rsp 0000000000000186 popq %rbp 0000000000000187 ret 0000000000000188 nopl (%rax,%rax) -[AppDelegate testVoid:]: arc-linetable.m:75 - (void)testVoid:(NSString *)foo { // ['is_stmt'] 0000000000000190 pushq %rbp 0000000000000191 movq %rsp, %rbp 0000000000000194 subq $0x20, %rsp 0000000000000198 leaq 0xffffffffffffffe8(%rbp), %rax 000000000000019c movq %rdi, 0xfffffffffffffff8(%rbp) 00000000000001a0 movq %rsi, 0xfffffffffffffff0(%rbp) 00000000000001a4 movq $0x0, 0xffffffffffffffe8(%rbp) 00000000000001ac movq %rax, %rdi 00000000000001af movq %rdx, %rsi 00000000000001b2 callq 0x1b7 00000000000001b7 movabsq $0x0, %rsi 00000000000001c1 leaq 0xffffffffffffffe8(%rbp), %rax 00000000000001c5 movl $0x1, 0xffffffffffffffe4(%rbp) arc-linetable.m:77  return; // ['is_stmt', 'prologue_end'] 00000000000001cc movq %rax, %rdi 00000000000001cf callq 0x1d4 arc-linetable.m:79 } // ['is_stmt'] 00000000000001d4 addq $0x20, %rsp 00000000000001d8 popq %rbp 00000000000001d9 ret 00000000000001da nopw (%rax,%rax) -[AppDelegate testVoidNoReturn:]: arc-linetable.m:81 - (void)testVoidNoReturn:(NSString *)foo { // ['is_stmt'] 00000000000001e0 pushq %rbp 00000000000001e1 movq %rsp, %rbp 00000000000001e4 subq $0x30, %rsp 00000000000001e8 leaq 0xffffffffffffffe8(%rbp), %rax 00000000000001ec movq %rdi, 0xfffffffffffffff8(%rbp) 00000000000001f0 movq %rsi, 0xfffffffffffffff0(%rbp) 00000000000001f4 movq $0x0, 0xffffffffffffffe8(%rbp) 00000000000001fc movq %rax, %rdi 00000000000001ff movq %rdx, %rsi 0000000000000202 callq 0x207 0000000000000207 movabsq $0x0, %rsi 0000000000000211 leaq 0xffffffffffffffe8(%rbp), %rax arc-linetable.m:83  [self testVoid :foo]; // ['is_stmt', 'prologue_end'] 0000000000000215 movq 0xfffffffffffffff8(%rbp), %rdx 0000000000000219 movq 0xffffffffffffffe8(%rbp), %rdi 000000000000021d movq 0x8ac(%rip), %rcx 0000000000000224 movq %rdi, 0xffffffffffffffe0(%rbp) 0000000000000228 movq %rdx, %rdi 000000000000022b movq %rsi, 0xffffffffffffffd8(%rbp) 000000000000022f movq %rcx, %rsi 0000000000000232 movq 0xffffffffffffffe0(%rbp), %rdx 0000000000000236 movq %rax, 0xffffffffffffffd0(%rbp) 000000000000023a callq 0x23f arc-linetable.m:85 } // ['is_stmt'] 000000000000023f movq 0xffffffffffffffd0(%rbp), %rax 0000000000000243 movq %rax, %rdi 0000000000000246 movq 0xffffffffffffffd8(%rbp), %rsi 000000000000024a callq 0x24f 000000000000024f addq $0x30, %rsp 0000000000000253 popq %rbp 0000000000000254 ret 0000000000000255 nopw %cs:(%rax,%rax) -[AppDelegate testNoCleanupSideEffect]: arc-linetable.m:87 - (int)testNoCleanupSideEffect { // ['is_stmt'] 0000000000000260 pushq %rbp 0000000000000261 movq %rsp, %rbp 0000000000000264 subq $0x20, %rsp 0000000000000268 movl $0x1, %eax 000000000000026d leaq 0x87c(%rip), %rcx 0000000000000274 movq %rdi, 0xfffffffffffffff8(%rbp) 0000000000000278 movq %rsi, 0xfffffffffffffff0(%rbp) arc-linetable.m:89  [self testVoid :@"foo"]; // ['is_stmt', 'prologue_end'] 000000000000027c movq 0xfffffffffffffff8(%rbp), %rsi 0000000000000280 movq 0x849(%rip), %rdi 0000000000000287 movq %rdi, 0xffffffffffffffe8(%rbp) 000000000000028b movq %rsi, %rdi 000000000000028e movq 0xffffffffffffffe8(%rbp), %rsi 0000000000000292 movq %rcx, %rdx 0000000000000295 movl %eax, 0xffffffffffffffe4(%rbp) 0000000000000298 callq 0x29d arc-linetable.m:91  return 1; // ['is_stmt'] 000000000000029d movl 0xffffffffffffffe4(%rbp), %eax 00000000000002a0 addq $0x20, %rsp 00000000000002a4 popq %rbp 00000000000002a5 ret 00000000000002a6 nopw %cs:(%rax,%rax) _main: arc-linetable.m:98 int main(int argc, const char** argv) { // ['is_stmt'] 00000000000002b0 pushq %rbp 00000000000002b1 movq %rsp, %rbp 00000000000002b4 subq $0x40, %rsp 00000000000002b8 movabsq $0x0, %rax 00000000000002c2 leaq 0xffffffffffffffe8(%rbp), %rcx 00000000000002c6 leaq 0x823(%rip), %rdx 00000000000002cd leaq (%rip), %r8 00000000000002d4 movl $0x0, 0xfffffffffffffffc(%rbp) 00000000000002db movl %edi, 0xfffffffffffffff8(%rbp) 00000000000002de movq %rsi, 0xfffffffffffffff0(%rbp) arc-linetable.m:99  AppDelegate *o = [[AppDelegate alloc] init]; // ['is_stmt', 'prologue_end'] 00000000000002e2 movq 0x9e7(%rip), %rsi 00000000000002e9 movq %rsi, %rdi 00000000000002ec movq %r8, %rsi 00000000000002ef movq %rcx, 0xffffffffffffffd8(%rbp) 00000000000002f3 movq %rdx, 0xffffffffffffffd0(%rbp) 00000000000002f7 movq %rax, 0xffffffffffffffc8(%rbp) 00000000000002fb callq *(%rip) 0000000000000301 movq 0x7d0(%rip), %rsi 0000000000000308 movq %rax, %rdi 000000000000030b callq 0x310 0000000000000310 movq %rax, 0xffffffffffffffe8(%rbp) arc-linetable.m:100  return [o testMultiline :@"foo"]; // ['is_stmt'] 0000000000000314 movq 0xffffffffffffffe8(%rbp), %rax 0000000000000318 movq 0x7c1(%rip), %rsi 000000000000031f movq %rax, %rdi 0000000000000322 movq 0xffffffffffffffd0(%rbp), %rdx 0000000000000326 callq 0x32b 000000000000032b movl %eax, 0xfffffffffffffffc(%rbp) 000000000000032e movl $0x1, 0xffffffffffffffe4(%rbp) arc-linetable.m:101 } // ['is_stmt'] 0000000000000335 movq 0xffffffffffffffd8(%rbp), %rcx 0000000000000339 movq %rcx, %rdi 000000000000033c movq 0xffffffffffffffc8(%rbp), %rsi 0000000000000340 callq 0x345 0000000000000345 movl 0xfffffffffffffffc(%rbp), %eax 0000000000000348 addq $0x40, %rsp 000000000000034c popq %rbp 000000000000034d ret