X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbeirgmod.h;h=54fa679137e7ad74cad6e135449a2f11c4fa4ea9;hb=6e3e499d6c68aee0c6a9ada6a99f16c4f6f8445b;hp=ed5922b132b3bec8ecc2352d3f93494290ca9f13;hpb=1d017c585cbce1afb01e3e8f54b1af6cbcd0eabd;p=libfirm diff --git a/ir/be/beirgmod.h b/ir/be/beirgmod.h index ed5922b13..54fa67913 100644 --- a/ir/be/beirgmod.h +++ b/ir/be/beirgmod.h @@ -10,6 +10,7 @@ #ifndef _BEIRGMOD_H #define _BEIRGMOD_H +#include "firm_types.h" #include "pset.h" /* @@ -96,4 +97,18 @@ void be_ssa_constr_set_phis_ignore(dom_front_info_t *info, pset *nodes, pset *ph */ void be_ssa_constr_set_phis(dom_front_info_t *info, pset *nodes, pset *phis); -#endif +/** + * Insert a Perm which permutates all (non-ignore) live values of a given register class + * after a certain instruction. + * @param arch_env The architecture environment. + * @param cls The register class. + * @param dom_front Dominance frontier information. + * @param irn The node to insert the Perm after. + * @return The Perm or NULL if nothing was live before @p irn. + */ +ir_node *insert_Perm_after(const arch_env_t *arch_env, + const arch_register_class_t *cls, + dom_front_info_t *dom_front, + ir_node *irn); + +#endif /* _BEIRGMOD_H */