Move conjoin-at from compiler.cfg.liveness to sets
parent
a213db05db
commit
fd9a353fd6
|
@ -43,9 +43,6 @@ SYMBOL: work-list
|
||||||
[ nip kill-set ]
|
[ nip kill-set ]
|
||||||
2bi assoc-diff ;
|
2bi assoc-diff ;
|
||||||
|
|
||||||
: conjoin-at ( value key assoc -- )
|
|
||||||
[ dupd ?set-at ] change-at ;
|
|
||||||
|
|
||||||
: compute-phi-live-in ( basic-block -- phi-live-in )
|
: compute-phi-live-in ( basic-block -- phi-live-in )
|
||||||
instructions>> [ ##phi? ] filter [ f ] [
|
instructions>> [ ##phi? ] filter [ f ] [
|
||||||
H{ } clone [
|
H{ } clone [
|
||||||
|
|
|
@ -23,6 +23,7 @@ $nl
|
||||||
"Adding elements to sets:"
|
"Adding elements to sets:"
|
||||||
{ $subsection adjoin }
|
{ $subsection adjoin }
|
||||||
{ $subsection conjoin }
|
{ $subsection conjoin }
|
||||||
|
{ $subsection conjoin-at }
|
||||||
{ $see-also member? memq? any? all? "assocs-sets" } ;
|
{ $see-also member? memq? any? all? "assocs-sets" } ;
|
||||||
|
|
||||||
ABOUT: "sets"
|
ABOUT: "sets"
|
||||||
|
@ -54,6 +55,10 @@ HELP: conjoin
|
||||||
}
|
}
|
||||||
{ $side-effects "assoc" } ;
|
{ $side-effects "assoc" } ;
|
||||||
|
|
||||||
|
HELP: conjoin-at
|
||||||
|
{ $values { "value" object } { "key" object } { "assoc" assoc } }
|
||||||
|
{ $description "Adds " { $snippet "value" } " to the set stored at " { $snippet "key" } " of " { $snippet "assoc" } "." } ;
|
||||||
|
|
||||||
HELP: unique
|
HELP: unique
|
||||||
{ $values { "seq" "a sequence" } { "assoc" assoc } }
|
{ $values { "seq" "a sequence" } { "assoc" assoc } }
|
||||||
{ $description "Outputs a new assoc where the keys and values are equal." }
|
{ $description "Outputs a new assoc where the keys and values are equal." }
|
||||||
|
|
|
@ -7,6 +7,9 @@ IN: sets
|
||||||
|
|
||||||
: conjoin ( elt assoc -- ) dupd set-at ;
|
: conjoin ( elt assoc -- ) dupd set-at ;
|
||||||
|
|
||||||
|
: conjoin-at ( value key assoc -- )
|
||||||
|
[ dupd ?set-at ] change-at ;
|
||||||
|
|
||||||
: (prune) ( elt hash vec -- )
|
: (prune) ( elt hash vec -- )
|
||||||
3dup drop key? [ 3drop ] [
|
3dup drop key? [ 3drop ] [
|
||||||
[ drop conjoin ] [ nip push ] 3bi
|
[ drop conjoin ] [ nip push ] 3bi
|
||||||
|
|
Loading…
Reference in New Issue