From 800b134fa740203f56504137d283749d2f3ce925 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Thu, 11 Sep 2008 01:11:17 -0500 Subject: [PATCH 1/2] random numbers were endian-dependent. clean up blum-blum-shub a bit --- basis/random/random.factor | 2 +- extra/random/blum-blum-shub/blum-blum-shub-tests.factor | 2 -- extra/random/blum-blum-shub/blum-blum-shub.factor | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/basis/random/random.factor b/basis/random/random.factor index 515c464a5a..5ee45e6729 100755 --- a/basis/random/random.factor +++ b/basis/random/random.factor @@ -14,7 +14,7 @@ GENERIC: random-32* ( tuple -- r ) GENERIC: random-bytes* ( n tuple -- byte-array ) M: object random-bytes* ( n tuple -- byte-array ) - swap [ drop random-32* ] with map >c-uint-array ; + [ random-32* ] curry replicate [ 4 >le ] map concat ; M: object random-32* ( tuple -- r ) 4 random-bytes* le> ; diff --git a/extra/random/blum-blum-shub/blum-blum-shub-tests.factor b/extra/random/blum-blum-shub/blum-blum-shub-tests.factor index 9ace53ab25..4b0dee642e 100644 --- a/extra/random/blum-blum-shub/blum-blum-shub-tests.factor +++ b/extra/random/blum-blum-shub/blum-blum-shub-tests.factor @@ -11,14 +11,12 @@ IN: blum-blum-shub.tests [ 70576473 ] [ T{ blum-blum-shub f 590695557939 811977232793 } clone [ 32 random-bits - little-endian? [ reverse *uint ] unless ] with-random ] unit-test [ 5570804936418322777 ] [ T{ blum-blum-shub f 590695557939 811977232793 } clone [ 64 random-bits - little-endian? [ 4 group [ reverse ] map concat *ulonglong ] unless ] with-random ] unit-test diff --git a/extra/random/blum-blum-shub/blum-blum-shub.factor b/extra/random/blum-blum-shub/blum-blum-shub.factor index e60990075c..8e9f0e2552 100755 --- a/extra/random/blum-blum-shub/blum-blum-shub.factor +++ b/extra/random/blum-blum-shub/blum-blum-shub.factor @@ -13,7 +13,7 @@ TUPLE: blum-blum-shub x n ; [ [ random-prime ] curry [ 4 mod 3 = ] generate ] dup bi ; : next-bbs-bit ( bbs -- bit ) - [ [ x>> 2 ] [ n>> ] bi ^mod dup ] keep (>>x) 1 bitand ; + dup [ x>> 2 ] [ n>> ] bi ^mod [ >>x drop ] [ 1 bitand ] bi ; PRIVATE> From b544a3b1b72bbb4f78e803ccda92c2c2f0b05f1a Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Thu, 11 Sep 2008 01:15:31 -0500 Subject: [PATCH 2/2] ppc bootstrap --- basis/cpu/ppc/architecture/architecture.factor | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/basis/cpu/ppc/architecture/architecture.factor b/basis/cpu/ppc/architecture/architecture.factor index 0aee836cf1..12fbbea82e 100755 --- a/basis/cpu/ppc/architecture/architecture.factor +++ b/basis/cpu/ppc/architecture/architecture.factor @@ -5,7 +5,7 @@ cpu.architecture generic kernel kernel.private math memory namespaces sequences words assocs compiler.generator compiler.generator.registers compiler.generator.fixup system layouts classes words.private alien combinators -compiler.constants math.order ; +compiler.constants math.order make ; IN: cpu.ppc.architecture ! PowerPC register assignments