<commit_before>USING: bit-arrays classes.struct sequences
tools.gc-decode tools.test vm ;
QUALIFIED: effects
QUALIFIED: llvm.types
QUALIFIED: unix.process
IN: tools.gc-decode.tests

! byte-array>bit-array
{
    ?{
        t t t t f t t t
        t f f f f f f f
    }
} [
    B{ 239 1 } byte-array>bit-array
] unit-test

{ ?{ t t t t t t t t } } [ B{ 255 } byte-array>bit-array ] unit-test

! scrub-bits
{ t } [
    \ effects:<effect> word>gc-info scrub-bits
    {
        ?{ t t t f t t t t } ! 64-bit
        ?{ t t t f f f f f t t t t } ! 32-bit
    } member?
] unit-test

{
    { }
} [
    \ decode-gc-maps word>gc-info scrub-bits
] unit-test

! decode-gc-maps
{ t } [
    \ effects:<effect> decode-gc-maps
    {
        {
            { 151 { { ?{ } ?{ t t t } ?{ } ?{ } ?{ f t t t t } } { } } }
        }
        {
            { 124 { { ?{ } ?{ t t t } ?{ } ?{ } ?{ f f f f f t t t t } } { } } }
        }
    } member?
] unit-test

{ t } [
    \ unix.process:fork-process decode-gc-maps
    {
        {
            { 82 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ } } { } } }
            { 244 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
            { 445 { { ?{ f f } ?{ f } ?{ t } ?{ t t } ?{ } } { } } }
            { 522 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
        }
        {
            { 57 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ f f f f f f f } } { } } }
            { 90 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ f f f f f f t } } { } } }
            { 207 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 231 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 437 { { ?{ f f } ?{ f } ?{ t } ?{ t t } ?{ f f f f f f f } } { } } }
            { 495 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 519 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
        }
    } member?
] unit-test

! read-gc-maps
{ { } } [
    \ decode-gc-maps decode-gc-maps
] unit-test

! base-pointer-groups
{ t } [
    \ llvm.types:resolve-types word>gc-info base-pointer-groups
    {
        {
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 5 }
            { -1 -1 -1 -1 -1 -1 5 }
            { -1 -1 -1 -1 -1 -1 -1 }
        }
        {
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
        }
    } member?
] unit-test


! One of the few words that has derived roots.
{ t } [
    \ llvm.types:resolve-types word>gc-info
    {
        S{ gc-info f 0 2 2 1 6 7 6 } ! 64-bit
        S{ gc-info f 0 2 2 1 10 11 6 } ! 32-bit
    } member?
] unit-test
<commit_msg>tools.gc-decode: Fix test for linux32.<commit_after>USING: bit-arrays classes.struct sequences
tools.gc-decode tools.test vm ;
QUALIFIED: effects
QUALIFIED: llvm.types
QUALIFIED: unix.process
IN: tools.gc-decode.tests

! byte-array>bit-array
{
    ?{
        t t t t f t t t
        t f f f f f f f
    }
} [
    B{ 239 1 } byte-array>bit-array
] unit-test

{ ?{ t t t t t t t t } } [ B{ 255 } byte-array>bit-array ] unit-test

! scrub-bits
{ t } [
    \ effects:<effect> word>gc-info scrub-bits
    {
        ?{ t t t f t t t t } ! 64-bit
        ?{ t t t f f f f f t t t t } ! 32-bit
    } member?
] unit-test

{
    { }
} [
    \ decode-gc-maps word>gc-info scrub-bits
] unit-test

! decode-gc-maps
{ t } [
    \ effects:<effect> decode-gc-maps
    {
        {
            { 151 { { ?{ } ?{ t t t } ?{ } ?{ } ?{ f t t t t } } { } } }
        }
        {
            { 124 { { ?{ } ?{ t t t } ?{ } ?{ } ?{ f f f f f t t t t } } { } } }
        }
    } member?
] unit-test

{ t } [
    \ unix.process:fork-process decode-gc-maps
    {
        {
            { 82 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ } } { } } }
            { 244 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
            { 445 { { ?{ f f } ?{ f } ?{ t } ?{ t t } ?{ } } { } } }
            { 522 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
        }
        {
            { 57 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ f f f f f f f } } { } } }
            { 90 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ f f f f f f t } } { } } }
            { 207 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 231 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 437 { { ?{ f f } ?{ f } ?{ t } ?{ t t } ?{ f f f f f f f } } { } } }
            { 495 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
            { 519 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ f f f f f f f } } { } } }
        }
        {
            { 57 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ } } { } } }
            { 81 { { ?{ t f } ?{ t } ?{ f } ?{ f f } ?{ } } { } } }
            { 200 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
            { 224 { { ?{ f f } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
            { 429 { { ?{ f f } ?{ f } ?{ t } ?{ t t } ?{ } } { } } }
            { 487 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ } { } } }
            { 511 { { ?{ t t } ?{ f } ?{ f } ?{ t f } ?{ } } { } } }
        }
    } member?
] unit-test

! read-gc-maps
{ { } } [
    \ decode-gc-maps decode-gc-maps
] unit-test

! base-pointer-groups
{ t } [
    \ llvm.types:resolve-types word>gc-info base-pointer-groups
    {
        {
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 5 }
            { -1 -1 -1 -1 -1 -1 5 }
            { -1 -1 -1 -1 -1 -1 -1 }
        }
        {
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 }
            { -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 }
        }
    } member?
] unit-test


! One of the few words that has derived roots.
{ t } [
    \ llvm.types:resolve-types word>gc-info
    {
        S{ gc-info f 0 2 2 1 6 7 6 } ! 64-bit
        S{ gc-info f 0 2 2 1 10 11 6 } ! 32-bit
    } member?
] unit-test

{'fraction_non_alphanumeric': 0.22124172707217143, 'fraction_numerical': 0.058462023321777495, 'mean_word_length': 0.9834375, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 28, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2640671', 'n_tokens_mistral': 2961, 'n_tokens_neox': 2791, 'n_words': 845}