On closer inspection I think you can also remove this guy (from loongson.md):
(define_insn "reduc_uplus_v8qi"
[(set (match_operand:V8QI 0 "register_operand" "=f")
(unspec:V8QI [(match_operand:V8QI 1 "register_operand" "f")]
UNSPEC_LOONGSON_BIADD))]
"TARGET_HARD_FLOAT && TARGET_LOONGSON_VECTORS"
"biadd\t%0,%1"
[(set_attr "type" "fabs")])
as reduc_plus_scal_<mode> handles both signed and unsigned cases.
Cheers, Alan
