Evan Cheng | ad934b8 | 2009-09-24 02:15:22 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -mtriple=x86_64-apple-darwin10 |
| 2 | |
| 3 | ; rdar://7247745 |
| 4 | |
| 5 | %struct._lck_mtx_ = type { %union.anon } |
| 6 | %struct._lck_rw_t_internal_ = type <{ i16, i8, i8, i32, i32, i32 }> |
| 7 | %struct.anon = type { i64, i64, [2 x i8], i8, i8, i32 } |
| 8 | %struct.memory_object = type { i32, i32, %struct.memory_object_pager_ops* } |
| 9 | %struct.memory_object_control = type { i32, i32, %struct.vm_object* } |
| 10 | %struct.memory_object_pager_ops = type { void (%struct.memory_object*)*, void (%struct.memory_object*)*, i32 (%struct.memory_object*, %struct.memory_object_control*, i32)*, i32 (%struct.memory_object*)*, i32 (%struct.memory_object*, i64, i32, i32, i32*)*, i32 (%struct.memory_object*, i64, i32, i64*, i32*, i32, i32, i32)*, i32 (%struct.memory_object*, i64, i32)*, i32 (%struct.memory_object*, i64, i64, i32)*, i32 (%struct.memory_object*, i64, i64, i32)*, i32 (%struct.memory_object*, i32)*, i32 (%struct.memory_object*)*, i8* } |
| 11 | %struct.queue_entry = type { %struct.queue_entry*, %struct.queue_entry* } |
| 12 | %struct.upl = type { %struct._lck_mtx_, i32, i32, %struct.vm_object*, i64, i32, i64, %struct.vm_object*, i32, i8* } |
| 13 | %struct.upl_page_info = type <{ i32, i8, [3 x i8] }> |
| 14 | %struct.vm_object = type { %struct.queue_entry, %struct._lck_rw_t_internal_, i64, %struct.vm_page*, i32, i32, i32, i32, %struct.vm_object*, %struct.vm_object*, i64, %struct.memory_object*, i64, %struct.memory_object_control*, i32, i16, i16, [2 x i8], i8, i8, %struct.queue_entry, %struct.queue_entry, i64, i32, i32, i32, i8*, i64, i8, i8, [2 x i8], %struct.queue_entry } |
| 15 | %struct.vm_page = type { %struct.queue_entry, %struct.queue_entry, %struct.vm_page*, %struct.vm_object*, i64, [2 x i8], i8, i8, i32, i8, i8, i8, i8, i32 } |
| 16 | %union.anon = type { %struct.anon } |
| 17 | |
| 18 | declare i64 @OSAddAtomic64(i64, i64*) noredzone noimplicitfloat |
| 19 | |
| 20 | define i32 @upl_commit_range(%struct.upl* %upl, i32 %offset, i32 %size, i32 %flags, %struct.upl_page_info* %page_list, i32 %count, i32* nocapture %empty) nounwind noredzone noimplicitfloat { |
| 21 | entry: |
| 22 | br i1 undef, label %if.then, label %if.end |
| 23 | |
| 24 | if.end: ; preds = %entry |
| 25 | br i1 undef, label %if.end143, label %if.then136 |
| 26 | |
| 27 | if.then136: ; preds = %if.end |
| 28 | unreachable |
| 29 | |
| 30 | if.end143: ; preds = %if.end |
| 31 | br i1 undef, label %if.else155, label %if.then153 |
| 32 | |
| 33 | if.then153: ; preds = %if.end143 |
| 34 | br label %while.cond |
| 35 | |
| 36 | if.else155: ; preds = %if.end143 |
| 37 | unreachable |
| 38 | |
| 39 | while.cond: ; preds = %if.end1039, %if.then153 |
| 40 | br i1 undef, label %if.then1138, label %while.body |
| 41 | |
| 42 | while.body: ; preds = %while.cond |
| 43 | br i1 undef, label %if.end260, label %if.then217 |
| 44 | |
| 45 | if.then217: ; preds = %while.body |
| 46 | br i1 undef, label %if.end260, label %if.then230 |
| 47 | |
| 48 | if.then230: ; preds = %if.then217 |
| 49 | br i1 undef, label %if.then246, label %if.end260 |
| 50 | |
| 51 | if.then246: ; preds = %if.then230 |
| 52 | br label %if.end260 |
| 53 | |
| 54 | if.end260: ; preds = %if.then246, %if.then230, %if.then217, %while.body |
| 55 | br i1 undef, label %if.end296, label %if.then266 |
| 56 | |
| 57 | if.then266: ; preds = %if.end260 |
| 58 | unreachable |
| 59 | |
| 60 | if.end296: ; preds = %if.end260 |
| 61 | br i1 undef, label %if.end1039, label %if.end306 |
| 62 | |
| 63 | if.end306: ; preds = %if.end296 |
| 64 | br i1 undef, label %if.end796, label %if.then616 |
| 65 | |
| 66 | if.then616: ; preds = %if.end306 |
| 67 | br i1 undef, label %commit_next_page, label %do.body716 |
| 68 | |
| 69 | do.body716: ; preds = %if.then616 |
| 70 | %call721 = call i64 @OSAddAtomic64(i64 1, i64* undef) nounwind noredzone noimplicitfloat ; <i64> [#uses=0] |
| 71 | call void asm sideeffect "movq\090x0($0),%rdi\0A\09movq\090x8($0),%rsi\0A\09.section __DATA, __data\0A\09.globl __dtrace_probeDOLLAR${:uid}4794___vminfo____pgrec\0A\09__dtrace_probeDOLLAR${:uid}4794___vminfo____pgrec:.quad 1f\0A\09.text\0A\091:nop\0A\09nop\0A\09nop\0A\09", "r,~{memory},~{di},~{si},~{dirflag},~{fpsr},~{flags}"(i64* undef) nounwind |
| 72 | br label %commit_next_page |
| 73 | |
| 74 | if.end796: ; preds = %if.end306 |
| 75 | unreachable |
| 76 | |
| 77 | commit_next_page: ; preds = %do.body716, %if.then616 |
| 78 | br i1 undef, label %if.end1039, label %if.then1034 |
| 79 | |
| 80 | if.then1034: ; preds = %commit_next_page |
| 81 | br label %if.end1039 |
| 82 | |
| 83 | if.end1039: ; preds = %if.then1034, %commit_next_page, %if.end296 |
| 84 | br label %while.cond |
| 85 | |
| 86 | if.then1138: ; preds = %while.cond |
| 87 | unreachable |
| 88 | |
| 89 | if.then: ; preds = %entry |
| 90 | ret i32 4 |
| 91 | } |