Merge git://factorcode.org/git/factor

release
Slava Pestov 2007-10-29 01:31:58 -04:00
commit d124669dc5
2 changed files with 7 additions and 26 deletions

View File

@ -55,10 +55,10 @@ IN: cpu.arm.intrinsics
: %write-barrier ( -- )
"val" get operand-immediate? "obj" get fresh-object? or [
"cards_offset" f R12 %alien-global
"scratch" operand R12 "scratch" operand card-bits <LSR> ADD
"val" operand "scratch" operand 0 LDRB
"scratch" operand R12 "obj" operand card-bits <LSR> ADD
"val" operand "scratch" operand 0 <+> LDRB
"val" operand dup card-mark ORR
"val" operand "scratch" operand 0 STRB
"val" operand "scratch" operand 0 <+> STRB
] unless ;
\ set-slot {
@ -315,12 +315,12 @@ IN: cpu.arm.intrinsics
! Store class
"class" operand 2 %set-slot
! Zero out the rest of the tuple
R12 f v>operand MOV
"n" get 1- [ 1+ R12 %fill-array ] each
"out" get object %store-tagged
"initial" operand f v>operand MOV
"n" get 1- [ 1+ "initial" operand %fill-array ] each
"out" get tuple %store-tagged
] H{
{ +input+ { { f "class" } { [ inline-array? ] "n" } } }
{ +scratch+ { { f "out" } } }
{ +scratch+ { { f "out" } { f "initial" } } }
{ +output+ { "out" } }
} define-intrinsic

View File

@ -1,19 +0,0 @@
.text
.globl c_to_factor_toplevel
.word exception_handler
.word 0
c_to_factor_toplevel:
ldr pc, _Pc_to_factor
_Pc_to_factor:
.word c_to_factor
.section .pdata
.word c_to_factor_toplevel
.word 0xc0000002 | (0xFFFFF << 8)