diff --git a/basis/cpu/ppc/intrinsics/intrinsics.factor b/basis/cpu/ppc/intrinsics/intrinsics.factor index bf990e1447..6413cf839c 100755 --- a/basis/cpu/ppc/intrinsics/intrinsics.factor +++ b/basis/cpu/ppc/intrinsics/intrinsics.factor @@ -5,9 +5,10 @@ cpu.ppc.assembler cpu.ppc.architecture cpu.ppc.allot cpu.architecture kernel kernel.private math math.private namespaces sequences words generic quotations byte-arrays hashtables hashtables.private compiler.generator -compiler.generator.registers generator.fixup sequences.private -sbufs vectors system layouts math.floats.private classes -slots.private combinators compiler.constants ; +compiler.generator.registers compiler.generator.fixup +sequences.private sbufs vectors system layouts +math.floats.private classes slots.private combinators +compiler.constants ; IN: cpu.ppc.intrinsics : %slot-literal-known-tag @@ -436,44 +437,44 @@ IN: cpu.ppc.intrinsics { +clobber+ { "n" } } } define-intrinsic -\ (tuple) [ - tuple "layout" get size>> 2 + cells %allot - ! Store layout - "layout" get 12 load-indirect - 12 11 cell STW - ! Store tagged ptr in reg - "tuple" get tuple %store-tagged -] H{ - { +input+ { { [ ] "layout" } } } - { +scratch+ { { f "tuple" } } } - { +output+ { "tuple" } } -} define-intrinsic - -\ (array) [ - array "n" get 2 + cells %allot - ! Store length - "n" operand 12 LI - 12 11 cell STW - ! Store tagged ptr in reg - "array" get object %store-tagged -] H{ - { +input+ { { [ ] "n" } } } - { +scratch+ { { f "array" } } } - { +output+ { "array" } } -} define-intrinsic - -\ (byte-array) [ - byte-array "n" get 2 cells + %allot - ! Store length - "n" operand 12 LI - 12 11 cell STW - ! Store tagged ptr in reg - "array" get object %store-tagged -] H{ - { +input+ { { [ ] "n" } } } - { +scratch+ { { f "array" } } } - { +output+ { "array" } } -} define-intrinsic +! \ (tuple) [ +! tuple "layout" get size>> 2 + cells %allot +! ! Store layout +! "layout" get 12 load-indirect +! 12 11 cell STW +! ! Store tagged ptr in reg +! "tuple" get tuple %store-tagged +! ] H{ +! { +input+ { { [ ] "layout" } } } +! { +scratch+ { { f "tuple" } } } +! { +output+ { "tuple" } } +! } define-intrinsic +! +! \ (array) [ +! array "n" get 2 + cells %allot +! ! Store length +! "n" operand 12 LI +! 12 11 cell STW +! ! Store tagged ptr in reg +! "array" get object %store-tagged +! ] H{ +! { +input+ { { [ ] "n" } } } +! { +scratch+ { { f "array" } } } +! { +output+ { "array" } } +! } define-intrinsic +! +! \ (byte-array) [ +! byte-array "n" get 2 cells + %allot +! ! Store length +! "n" operand 12 LI +! 12 11 cell STW +! ! Store tagged ptr in reg +! "array" get object %store-tagged +! ] H{ +! { +input+ { { [ ] "n" } } } +! { +scratch+ { { f "array" } } } +! { +output+ { "array" } } +! } define-intrinsic \ [ ratio 3 cells %allot