Paste: bad output from scheduling

Author: littledan
Mode: factor
Date: Thu, 5 Nov 2009 06:48:38
Plain Text |
==With no scheduler==


_label 0 
_prologue T{ stack-frame { total-size 32 } { calls-vm? t } } 
_label 1 
##gc RAX RCX 72 { } { } f 
##load-immediate RAX 5 
##load-reference RCX { metrics 7 1 tuple 3547099654 metrics 121759836292 } 
##allot RBX 72 tuple RDX 
##set-slot-imm RCX RBX 1 7 
##peek RCX D 1 
##peek RDX D 0 
##inc-r 2 
##replace RBX D 1 
##set-slot-imm RAX RBX 2 7 
##set-slot-imm RAX RBX 3 7 
##replace RCX D 0 
##replace RDX R 1 
##replace RCX R 0 
##set-slot-imm RAX RBX 4 7 
##set-slot-imm RAX RBX 5 7 
##set-slot-imm RAX RBX 6 7 
##set-slot-imm RAX RBX 7 7 
##set-slot-imm RAX RBX 8 7 
_label 2 
##call CTFontGetCapHeight 
_label 3 
##peek RAX D 1 
##write-barrier-imm RAX 49 RCX RDX 
##peek RCX D 0 
##peek RDX R 0 
##inc-r -1 
##replace RDX D 0 
##set-slot-imm RCX RAX 7 7 
_label 4 
##call CTFontGetXHeight 
_label 5 
##gc RAX RCX 72 { } { } f 
##load-immediate RAX 0 
##load-constant RCX 0.0 
##allot RBX 24 byte-array RDX 
##allot RBP 24 byte-array RDX 
##load-immediate RDX 64 
##allot RDI 24 byte-array RSI 
##peek RSI D 1 
##peek R8 D 0 
##peek R9 R 0 
##write-barrier-imm RSI 57 R10 R11 
##set-slot-imm R8 RSI 8 7 
##set-slot-imm RDX RBX 1 6 
##set-slot-imm RAX RBX 2 6 
##set-slot-imm RAX RBX 3 6 
##set-slot-imm RAX RBX 4 6 
##inc-d 3 
##set-slot-imm RAX RBX 5 6 
##inc-r 2 
##set-slot-imm RAX RBX 6 6 
##replace R9 D 3 
##set-slot-imm RAX RBX 7 6 
##set-slot-imm RAX RBX 8 6 
##set-slot-imm RAX RBX 9 6 
##replace RBX D 2 
##replace RDI D 1 
##replace RBP D 0 
##replace RBX R 0 
##replace RBP R 2 
##alien-double XMM0 RCX 5 
##set-alien-double RBX 10 XMM0 
##set-slot-imm RDX RDI 1 6 
##replace RDI R 1 
##set-slot-imm RAX RDI 2 6 
##set-slot-imm RAX RDI 3 6 
##set-slot-imm RAX RDI 4 6 
##set-slot-imm RAX RDI 5 6 
##set-slot-imm RAX RDI 6 6 
##set-slot-imm RAX RDI 7 6 
##set-slot-imm RAX RDI 8 6 
##set-slot-imm RAX RDI 9 6 
##set-alien-double RDI 10 XMM0 
##set-slot-imm RDX RBP 1 6 
##set-slot-imm RAX RBP 2 6 
##set-slot-imm RAX RBP 3 6 
##set-slot-imm RAX RBP 4 6 
##set-slot-imm RAX RBP 5 6 
##set-slot-imm RAX RBP 6 6 
##set-slot-imm RAX RBP 7 6 
##set-slot-imm RAX RBP 8 6 
##set-slot-imm RAX RBP 9 6 
##set-alien-double RBP 10 XMM0 
_label 6 
##call CTLineGetTypographicBounds 
_label 7 
##gc RAX RCX 48 { } { } f 
##allot RCX 16 float RAX 
##allot RDX 16 float RAX 
##peek RAX R 0 
##alien-double XMM0 RAX 10 
##allot RBX 16 float RAX 
##set-alien-double RDX 5 XMM0 
##peek RAX R 2 
##peek RBP R 1 
##alien-double XMM0 RBP 10 
##peek RBP D 1 
##write-barrier-imm RBP 9 RSI RDI 
##write-barrier-imm RBP 25 RDI RSI 
##peek RSI D 0 
##set-alien-double RCX 5 XMM0 
##inc-d 1 
##write-barrier-imm RBP 41 R8 RDI 
##write-barrier-imm RBP 17 RDI R8 
##alien-double XMM0 RAX 10 
##set-alien-double RBX 5 XMM0 
##set-slot-imm RSI RBP 2 7 
##set-slot-imm RDX RBP 3 7 
##set-slot-imm RCX RBP 4 7 
##inc-r -3 
##replace RDX D 1 
##set-slot-imm RBX RBP 6 7 
##replace RCX D 0 
_label 8 
##call + 
_label 9 
##peek RAX D 1 
##write-barrier-imm RAX 33 RDX RCX 
##peek RCX D 0 
##set-slot-imm RCX RAX 5 7 
##inc-d -1 
_label 10 
_epilogue T{ stack-frame { total-size 32 } { calls-vm? t } } 
##return 
_spill-area-size 0 


==With the scheduler==

_label 0 
_prologue T{ stack-frame { total-size 32 } { calls-vm? t } } 
_label 1 
##gc RAX RCX 72 { } { } f 
##peek RAX D 1 
##peek RCX D 0 
##load-immediate RDX 5 
##load-reference RBX { metrics 7 1 tuple 3547099654 metrics 121759836292 } 
##allot RSI 72 tuple RBP 
##set-slot-imm RBX RSI 1 7 
##set-slot-imm RDX RSI 2 7 
##set-slot-imm RDX RSI 3 7 
##set-slot-imm RDX RSI 4 7 
##set-slot-imm RDX RSI 5 7 
##set-slot-imm RDX RSI 6 7 
##set-slot-imm RDX RSI 7 7 
##set-slot-imm RDX RSI 8 7 
##inc-r 2 
##replace RSI D 1 
##replace RAX D 0 
##replace RCX R 1 
##replace RAX R 0 
_label 2 
##call CTFontGetCapHeight 
_label 3 
##peek RAX D 1 
##peek RCX D 0 
##peek RDX R 0 
##set-slot-imm RCX RAX 7 7 
##write-barrier-imm RAX 49 RCX RBX 
##inc-r -1 
##replace RDX D 0 
_label 4 
##call CTFontGetXHeight 
_label 5 
##gc RAX RCX 72 { } { } f 
##peek RAX D 1 
##peek RCX D 0 
##peek RDX R 0 
##load-immediate RBX 64 
##set-slot-imm RCX RAX 8 7 
##write-barrier-imm RAX 57 RCX RBP 
##load-immediate RAX 0 
##allot RBP 24 byte-array RCX 
##set-slot-imm RBX RBP 1 6 
##set-slot-imm RAX RBP 2 6 
##set-slot-imm RAX RBP 3 6 
##set-slot-imm RAX RBP 4 6 
##set-slot-imm RAX RBP 5 6 
##set-slot-imm RAX RBP 6 6 
##set-slot-imm RAX RBP 7 6 
##set-slot-imm RAX RBP 8 6 
##set-slot-imm RAX RBP 9 6 
##load-constant RCX 0.0 
##alien-double XMM0 RCX 5 
##set-alien-double RBP 10 XMM0 
##allot RSI 24 byte-array RCX 
##set-slot-imm RBX RSI 1 6 
##set-slot-imm RAX RSI 2 6 
##set-slot-imm RAX RSI 3 6 
##set-slot-imm RAX RSI 4 6 
##set-slot-imm RAX RSI 5 6 
##set-slot-imm RAX RSI 6 6 
##set-slot-imm RAX RSI 7 6 
##set-slot-imm RAX RSI 8 6 
##set-slot-imm RAX RSI 9 6 
##set-alien-double RSI 10 XMM0 
##allot RDI 24 byte-array RCX 
##set-slot-imm RBX RDI 1 6 
##set-slot-imm RAX RDI 2 6 
##set-slot-imm RAX RDI 3 6 
##set-slot-imm RAX RDI 4 6 
##set-slot-imm RAX RDI 5 6 
##set-slot-imm RAX RDI 6 6 
##set-slot-imm RAX RDI 7 6 
##set-slot-imm RAX RDI 8 6 
##set-slot-imm RAX RDI 9 6 
##set-alien-double RDI 10 XMM0 
##inc-d 3 
##inc-r 2 
##replace RDX D 3 
##replace RBP D 2 
##replace RSI D 1 
##replace RDI D 0 
##replace RBP R 0 
##replace RDI R 2 
##replace RSI R 1 
_label 6 
##call CTLineGetTypographicBounds 
_label 7 
##gc RAX RCX 48 { } { } f 
##peek RAX R 0 
##peek RCX R 2 
##peek RDX R 1 
##peek RBX D 1 
##peek RBP D 0 
##alien-double XMM0 RAX 10 
##allot RAX 16 float RSI 
##set-alien-double RAX 5 XMM0 
##alien-double XMM0 RDX 10 
##allot RSI 16 float RDX 
##set-alien-double RSI 5 XMM0 
##alien-double XMM0 RCX 10 
##allot RDX 16 float RCX 
##set-alien-double RDX 5 XMM0 
##set-slot-imm RBP RBX 2 7 
##write-barrier-imm RBX 9 RBP RCX 
##set-slot-imm RAX RBX 3 7 
##write-barrier-imm RBX 17 RBP RCX 
##set-slot-imm RSI RBX 4 7 
##write-barrier-imm RBX 25 RBP RCX 
##set-slot-imm RDX RBX 6 7 
##write-barrier-imm RBX 41 RDX RCX 
##inc-d 1 
##inc-r -3 
##replace RAX D 1 
##replace RSI D 0 
_label 8 
##call + 
_label 9 
##peek RAX D 1 
##peek RCX D 0 
##set-slot-imm RCX RAX 5 7 
##write-barrier-imm RAX 33 RCX RDX 
##inc-d -1 
_label 10 
_epilogue T{ stack-frame { total-size 32 } { calls-vm? t } } 
##return 
_spill-area-size 0 

Annotation: Oops

Author: littledan
Mode: factor
Date: Thu, 5 Nov 2009 06:50:08
Plain Text |
This is actually labeled backwards. The first piece of IR is with the scheduler, and the second piece is without the scheduler

New Annotation

Summary:
Author:
Mode:
Body: