Andreas Krebbel wrote: > With this patch a `disabled' attribute is defined which can be used to > explicitly disable an alternative. This comes handy when defining the > substitutions later and while adding it anyway I've used it for the > existing cases as well.
> +; Insn attribute with boolean value > +; 1 to disable an insn alternative > +; 0 or * for an active insn alternative > +; an active alternative can still be disabled due to lacking cpu > +; facility support > +(define_attr "disabled" "" (const_int 0)) > + > (define_attr "enabled" "" > - (cond [(eq_attr "cpu_facility" "standard") > + (cond [(eq_attr "disabled" "1") > + (const_int 0) > + > + (eq_attr "cpu_facility" "standard") > (const_int 1) > > (and (eq_attr "cpu_facility" "ieee") So I'm wondering what the difference is between this and simply overriding the default implementation of "enabled" per-insn? So instead of adding (set_attr "disabled" "0,1")]) to an insn, you might simply add instead: (set_attr "enabled" "*,0")]) Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com