The frange setter does all its work in trees. This incurs a penalty
for the real_value variants because they must wrap their arguments
into a tree and pass it to the tree setter, which will then do the
opposite. This is leftovers from the irange setter.
Even though the we still need constructors taking trees so we can
interact with the tree world, there's no sense penalizing the rest of
the implementation.
Tested on x86-64 Linux.
gcc/ChangeLog:
* value-range.cc (frange::set): Swap setters such that the one
accepting REAL_VALUE_TYPE does all the work.