fix •bit._neg & •bit._not reuse check
This commit is contained in:
parent
ce48dd1bca
commit
ede87b4800
@ -1580,7 +1580,7 @@ B bitop1(B f, B x, enum BitOp1 op, char* name) {
|
|||||||
u8 rt = typeOfCast((CastType){ rw, 0 });
|
u8 rt = typeOfCast((CastType){ rw, 0 });
|
||||||
u64* xp = tyany_ptr(x);
|
u64* xp = tyany_ptr(x);
|
||||||
B r; u64* rp;
|
B r; u64* rp;
|
||||||
if (!reusable(x) || (rt==t_bitarr && IS_SLICE(TY(x)))) {
|
if (!reusable(x) || IS_SLICE(TY(x))) {
|
||||||
Arr* ra = m_arr(offsetof(TyArr,a) + (n+7)/8, rt, n>>rws);
|
Arr* ra = m_arr(offsetof(TyArr,a) + (n+7)/8, rt, n>>rws);
|
||||||
arr_shCopyUnchecked(ra, x);
|
arr_shCopyUnchecked(ra, x);
|
||||||
r = taga(ra); rp = tyany_ptr(r);
|
r = taga(ra); rp = tyany_ptr(r);
|
||||||
|
|||||||
@ -349,6 +349,7 @@ r←•MakeRand 1 ⋄ ! 1¨⊸≡ ∊{𝕊: 500 r.Deal 1000}¨ ↕4
|
|||||||
%USE eqvar ⋄ {𝕊 f: {•internal.Keep 𝕩⍋1 ⋄ •internal.Validate F 𝕩}_eqvar ↕64}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ 8‿16‿32‿64 ⋈⌜ 1‿8‿16‿32‿64
|
%USE eqvar ⋄ {𝕊 f: {•internal.Keep 𝕩⍋1 ⋄ •internal.Validate F 𝕩}_eqvar ↕64}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ 8‿16‿32‿64 ⋈⌜ 1‿8‿16‿32‿64
|
||||||
%USE eqvar ⋄ {𝕊 f: {•internal.Keep 𝕩⍒1 ⋄ •internal.Validate F 𝕩}_eqvar ⌽↕64}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ 8‿16‿32‿64 ⋈⌜ 1‿8‿16‿32‿64
|
%USE eqvar ⋄ {𝕊 f: {•internal.Keep 𝕩⍒1 ⋄ •internal.Validate F 𝕩}_eqvar ⌽↕64}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ 8‿16‿32‿64 ⋈⌜ 1‿8‿16‿32‿64
|
||||||
%USE eqvar ⋄ {𝕊 f: {•internal.Squeeze 𝕩 ⋄ •internal.Validate F 𝕩}_eqvar 64↑2}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ ⟨8⟩ ⋈⌜ 1‿8‿16‿32‿64
|
%USE eqvar ⋄ {𝕊 f: {•internal.Squeeze 𝕩 ⋄ •internal.Validate F 𝕩}_eqvar 64↑2}¨ ({𝕩•bit._neg}¨ 8‿16‿32‿64) ∾ {𝕩 •bit._cast}¨ ≠´¨⊸/ ⥊ ⟨8⟩ ⋈⌜ 1‿8‿16‿32‿64
|
||||||
|
%USE eqvar ⋄ {𝕊 w: {⟨𝕩, w•bit._not 8↓𝕩⟩}_eqvar ↕16}¨ 8‿16‿32‿64
|
||||||
|
|
||||||
# •platform
|
# •platform
|
||||||
Str ← {!=𝕩 ⋄ !×≠𝕩 ⋄ ! ∧´2=•Type¨𝕩} ⋄ Str •platform.os ⋄ Str •platform.cpu.arch ⋄ Str •platform.bqn.impl_version ⋄ Str •platform.environment
|
Str ← {!=𝕩 ⋄ !×≠𝕩 ⋄ ! ∧´2=•Type¨𝕩} ⋄ Str •platform.os ⋄ Str •platform.cpu.arch ⋄ Str •platform.bqn.impl_version ⋄ Str •platform.environment
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user