aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.cc
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2022-10-07 09:57:32 +0200
committerAldy Hernandez <aldyh@redhat.com>2022-10-07 12:06:10 +0200
commitffaf244c442c575aadbe1c947e22f791a6f14c96 (patch)
tree82391c260d1d2a0eca086a2a854d6383980daf43 /gcc/function.cc
parentfce601fd07fd04f55c4e8260ec49012dea886b06 (diff)
downloadgcc-ffaf244c442c575aadbe1c947e22f791a6f14c96.zip
gcc-ffaf244c442c575aadbe1c947e22f791a6f14c96.tar.gz
gcc-ffaf244c442c575aadbe1c947e22f791a6f14c96.tar.bz2
Convert nonzero mask back to tree.
Having nonzero masks always set had a performance penalty of 10% in VRP, so mask==NULL is a shortcut to all bits set. gcc/ChangeLog: * value-range.cc (irange::irange_set): Convert nonzero mask to tree. (irange::irange_set_anti_range): Same. (irange::set): Same. (irange::verify_range): Same. (irange::contains_p): Same. (irange::invert): Same. (irange::set_range_from_nonzero_bits): Same. (irange::set_nonzero_bits): Same. (mask_to_wi): Same. (irange::intersect_nonzero_bits): Same. (irange::union_nonzero_bits): Same. * value-range.h (irange::varying_compatible_p): Same. (gt_ggc_mx): Same. (gt_pch_nx): Same. (irange::set_undefined): Same. (irange::set_varying): Same.
Diffstat (limited to 'gcc/function.cc')
0 files changed, 0 insertions, 0 deletions