Right now, the generic C/C++ compiler and binutils binaries are exclusively owned by the GNU toolchain (gcc, GNU binutils) as far as I can see looking at gcc-config and binutils-config. It would be great, especially for LLVM profile, to be able to have them owned by LLVM so they are used by default outside of Portage (e.g. CMake selects the compiler at /usr/bin/cc which is currently always gcc). There's of course a workaround right now, that is to set the same environment variables (CC, CXX, ...) as output by emerge --info in your user environment. Caveat is that some build scripts might not respect them and it's also harder to update the environment for a whole running user session than swapping out the symlinks.
AFAIK the LLVM binutils aren't really binutils in that they're very underimplemented (especially AS). If we want to make the profile vars consistent with /bin/ we should probably just remove the vars.
That's what sys-devel/*-toolchain-symlinks[native-symlinks] do.