diff options
Diffstat (limited to 'vaporize/tests/TreeVisitor.opt.regalloc')
-rw-r--r-- | vaporize/tests/TreeVisitor.opt.regalloc | 539 |
1 files changed, 539 insertions, 0 deletions
diff --git a/vaporize/tests/TreeVisitor.opt.regalloc b/vaporize/tests/TreeVisitor.opt.regalloc new file mode 100644 index 0000000..985ead2 --- /dev/null +++ b/vaporize/tests/TreeVisitor.opt.regalloc @@ -0,0 +1,539 @@ +func Main + in 0, out 0, callee-saves 0, spills 0 +Live In: + t.0: 15 +Linear Range: + t.0: 14-15 +Allocation: + t.0: t0 + +func TV.Start + in 0, out 0, callee-saves 1, spills 0 +Live In: + this: + root: 20 23-24 27-29 32-33 36-37 40-41 44-45 48-49 52-53 56-57 60-66 69-71 74-76 79-81 84-86 89-91 94-96 99-100 103-104 107 + ntb: + t.0: 63-64 + v: 65-66 69 + nti: + t.1: 75 + t.2: 80 + t.3: 85 + t.4: 90 + t.5: 95 + t.6: 108 +Linear Range: + root: 19-107 (cross call) + t.0: 62-64 + v: 64-69 + t.1: 74-75 + t.2: 79-80 + t.3: 84-85 + t.4: 89-90 + t.5: 94-95 + t.6: 107-108 +Allocation: + root: s0 + t.0: t0 + v: t0 + t.1: t0 + t.2: t0 + t.3: t0 + t.4: t0 + t.5: t0 + t.6: t0 + +func Tree.Init + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 112-114 + v_key: 112 +Linear Range: + this: 111-114 + v_key: 111-112 +Allocation: + this: t0 + v_key: t1 + +func Tree.SetRight + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 118 + rn: 118 +Linear Range: + this: 117-118 + rn: 117-118 +Allocation: + this: t0 + rn: t1 + +func Tree.SetLeft + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 122 + ln: 122 +Linear Range: + this: 121-122 + ln: 121-122 +Allocation: + this: t0 + ln: t1 + +func Tree.GetRight + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 126 + t.0: 127 +Linear Range: + this: 125-126 + t.0: 126-127 +Allocation: + this: t0 + t.0: t0 + +func Tree.GetLeft + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 130 + t.0: 131 +Linear Range: + this: 129-130 + t.0: 130-131 +Allocation: + this: t0 + t.0: t0 + +func Tree.GetKey + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 134 + t.0: 135 +Linear Range: + this: 133-134 + t.0: 134-135 +Allocation: + this: t0 + t.0: t0 + +func Tree.SetKey + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 138 + v_key: 138 +Linear Range: + this: 137-138 + v_key: 137-138 +Allocation: + this: t0 + v_key: t1 + +func Tree.GetHas_Right + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 142 + t.0: 143 +Linear Range: + this: 141-142 + t.0: 142-143 +Allocation: + this: t0 + t.0: t0 + +func Tree.GetHas_Left + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 146 + t.0: 147 +Linear Range: + this: 145-146 + t.0: 146-147 +Allocation: + this: t0 + t.0: t0 + +func Tree.SetHas_Left + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 150 + val: 150 +Linear Range: + this: 149-150 + val: 149-150 +Allocation: + this: t0 + val: t1 + +func Tree.SetHas_Right + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 154 + val: 154 +Linear Range: + this: 153-154 + val: 153-154 +Allocation: + this: t0 + val: t1 + +func Tree.Compare + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: + num1: 158-161 165 + num2: 158-160 + ntb: 163 168 173 + nti: 160-161 165 + t.0: 161 + t.1: 166 +Linear Range: + num1: 157-165 + num2: 157-160 + ntb: 162-173 + nti: 159-165 + t.0: 160-161 + t.1: 165-166 +Allocation: + num1: t0 + num2: t1 + ntb: t1 + nti: t2 + t.0: t1 + t.1: t2 + +func Tree.Insert + in 0, out 0, callee-saves 4, spills 0 +Live In: + this: 176-177 180-181 + v_key: 176-177 180-185 188-191 194-196 199-203 206-207 210-214 217-219 222-226 229-230 233-236 + new_node: 177 180-185 188-191 194-196 199-203 206-207 210-214 217-219 222-226 229-230 233-236 + ntb: + current_node: 182-185 188-191 194-196 199-203 206-207 210-214 217-219 222-226 229-230 233-236 + cont: 184-185 188-191 194-196 199-200 203 206-207 210-214 217-219 222-223 226 229-230 233-236 + key_aux: 189 + t.0: 190 + t.1: 195 + t.2: 218 +Linear Range: + this: 175-181 (cross call) + v_key: 175-236 (cross call) + new_node: 176-236 (cross call) + current_node: 181-236 (cross call) + cont: 182-236 (cross call) + key_aux: 188-189 + t.0: 189-190 + t.1: 194-195 + t.2: 217-218 +Allocation: + this: s0 + v_key: s1 + new_node: s2 + current_node: s0 + cont: s3 + key_aux: t0 + t.0: t0 + t.1: t0 + t.2: t0 + +func Tree.Delete + in 0, out 0, callee-saves 7, spills 0 +Live In: + this: 241-248 251-254 257-260 263-272 275-278 281-289 292-294 297-313 + v_key: 241-248 251-254 257-260 263-272 275-278 281-289 292-294 297-313 + current_node: 242-248 251-254 257-260 263-272 275-278 281-289 292-294 297-313 + parent_node: 243-248 251-254 257-258 260 263-272 275-276 278 281-289 292-294 297-313 + cont: 244-248 251-254 257-260 263-264 268-272 275-278 281-282 286 312-313 + found: 245-248 251-254 257-260 263-272 275-278 281-286 309-315 + is_root: 247-248 251-253 270-271 288 313 + key_aux: 252-253 270 + t.0: 253 + t.1: 258 + t.2: 271 + t.3: 276 + t.4: 293 + t.5: 298 + ntb: +Linear Range: + this: 240-313 (cross call) + v_key: 240-313 (cross call) + current_node: 241-313 (cross call) + parent_node: 242-313 (cross call) + cont: 243-313 (cross call) + found: 244-315 (cross call) + is_root: 245-313 (cross call) + key_aux: 251-270 + t.0: 252-253 + t.1: 257-258 + t.2: 270-271 + t.3: 275-276 + t.4: 292-293 + t.5: 297-298 +Allocation: + this: s0 + v_key: s1 + current_node: s2 + parent_node: s3 + cont: s4 + found: s5 + is_root: s6 + key_aux: t0 + t.0: t1 + t.1: t1 + t.2: t0 + t.3: t0 + t.4: t0 + t.5: t0 + +func Tree.Remove + in 0, out 0, callee-saves 3, spills 0 +Live In: + this: 318 321-323 326 329-331 334 337-338 341-342 345-348 351 359 362 + p_node: 318 321-323 326 329-331 334 337-338 341-342 345-348 351-353 356 359 362-364 367 + c_node: 318 321-323 326 329-331 334 337 + t.0: 322 + ntb: + t.1: 330 + auxkey1: 338 341-342 345-346 + t.2: 342 345 + auxkey2: 346 + t.3: 347 + t.4: 352 + t.5: 363 +Linear Range: + this: 317-362 (cross call) + p_node: 317-367 (cross call) + c_node: 317-337 (cross call) + t.0: 321-322 + t.1: 329-330 + auxkey1: 337-346 (cross call) + t.2: 341-345 + auxkey2: 345-346 + t.3: 346-347 + t.4: 351-352 + t.5: 362-363 +Allocation: + this: s0 + p_node: s1 + c_node: s2 + t.0: t0 + t.1: t0 + auxkey1: s2 + t.2: t0 + auxkey2: t0 + t.3: t0 + t.4: t0 + t.5: t0 + +func Tree.RemoveRight + in 0, out 0, callee-saves 3, spills 0 +Live In: + this: 375 378-380 383 386-387 390-393 396-399 402 + p_node: 375 378-379 393 396-399 402-404 407 + c_node: 375 378-380 383 386-387 390-393 396-397 + t.0: 379 + t.1: 387 390 + t.2: 391 + ntb: + t.3: 403 +Linear Range: + this: 373-402 (cross call) + p_node: 373-407 (cross call) + c_node: 373-397 (cross call) + t.0: 378-379 + t.1: 386-390 + t.2: 390-391 + t.3: 402-403 +Allocation: + this: s0 + p_node: s1 + c_node: s2 + t.0: t0 + t.1: t0 + t.2: t0 + t.3: t0 + +func Tree.RemoveLeft + in 0, out 0, callee-saves 3, spills 0 +Live In: + this: 412 415-417 420 423-424 427-430 433-436 439 + p_node: 412 415-416 430 433-436 439-441 444 + c_node: 412 415-417 420 423-424 427-430 433-434 + t.0: 416 + t.1: 424 427 + t.2: 428 + ntb: + t.3: 440 +Linear Range: + this: 410-439 (cross call) + p_node: 410-444 (cross call) + c_node: 410-434 (cross call) + t.0: 415-416 + t.1: 423-427 + t.2: 427-428 + t.3: 439-440 +Allocation: + this: s0 + p_node: s1 + c_node: s2 + t.0: t0 + t.1: t0 + t.2: t0 + t.3: t0 + +func Tree.Search + in 0, out 0, callee-saves 4, spills 0 +Live In: + this: 448 + v_key: 448-453 456-459 462-464 467-476 479-481 484-495 + current_node: 449-453 456-459 462-464 467-476 479-481 484-495 + cont: 450-453 456-459 462-464 467-468 472-476 479-481 484-485 489 495 + ifound: 452-453 456-459 462-464 467-476 479-481 484-489 492-497 + key_aux: 457-458 474 + t.0: 458 + t.1: 463 + t.2: 475 + t.3: 480 +Linear Range: + this: 447-448 + v_key: 447-495 (cross call) + current_node: 448-495 (cross call) + cont: 449-495 (cross call) + ifound: 450-497 (cross call) + key_aux: 456-474 + t.0: 457-458 + t.1: 462-463 + t.2: 474-475 + t.3: 479-480 +Allocation: + this: t0 + v_key: s0 + current_node: s1 + cont: s2 + ifound: s3 + key_aux: t0 + t.0: t1 + t.1: t1 + t.2: t0 + t.3: t0 + +func Tree.Print + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 500-501 + current_node: 501 + ntb: +Linear Range: + this: 499-501 + current_node: 500-501 +Allocation: + this: t0 + current_node: t1 + +func Tree.RecPrint + in 0, out 0, callee-saves 2, spills 0 +Live In: + this: 505 508-510 513-519 522-524 527-529 532-533 + node: 505 508-510 513-519 522-524 527-529 532 + t.0: 509 + t.1: 514 + ntb: + t.2: 523 + t.3: 528 + t.4: 533 +Linear Range: + this: 504-533 (cross call) + node: 504-532 (cross call) + t.0: 508-509 + t.1: 513-514 + t.2: 522-523 + t.3: 527-528 + t.4: 532-533 +Allocation: + this: s0 + node: s1 + t.0: t0 + t.1: t0 + t.2: t0 + t.3: t0 + t.4: t0 + +func Tree.accept + in 0, out 0, callee-saves 0, spills 0 +Live In: + this: 541-542 545-547 + v: 541-542 545-547 + t.0: 546-547 + nti: +Linear Range: + this: 540-547 + v: 540-547 + t.0: 545-547 +Allocation: + this: t0 + v: t1 + t.0: t2 + +func Visitor.visit + in 0, out 0, callee-saves 2, spills 0 +Live In: + this: 551 554-556 559-562 565-570 573-575 578-581 584 + n: 551 554-556 559-562 565-570 573-575 578 + t.0: 555 + t.1: 560 + t.2: 562 565 + nti: + t.3: 574 + t.4: 579 + t.5: 581 584 +Linear Range: + this: 550-584 (cross call) + n: 550-578 (cross call) + t.0: 554-555 + t.1: 559-560 + t.2: 561-565 + t.3: 573-574 + t.4: 578-579 + t.5: 580-584 +Allocation: + this: s0 + n: s1 + t.0: t0 + t.1: t0 + t.2: t0 + t.3: t0 + t.4: t0 + t.5: t0 + +func MyVisitor.visit + in 0, out 0, callee-saves 2, spills 0 +Live In: + this: 592 595-597 600-603 606-611 614-616 619-621 624-627 630 + n: 592 595-597 600-603 606-611 614-616 619-621 624 + t.0: 596 + t.1: 601 + t.2: 603 606 + nti: + t.3: 615 + t.4: 620 + t.5: 625 + t.6: 627 630 +Linear Range: + this: 591-630 (cross call) + n: 591-624 (cross call) + t.0: 595-596 + t.1: 600-601 + t.2: 602-606 + t.3: 614-615 + t.4: 619-620 + t.5: 624-625 + t.6: 626-630 +Allocation: + this: s0 + n: s1 + t.0: t0 + t.1: t0 + t.2: t0 + t.3: t0 + t.4: t0 + t.5: t0 + t.6: t0 + |