[AssumptionCache] Add replaceAssumption() to replace in-place. (#204432)
Add replaceAssumption and use it to replace assumptions when removing
bundles from assume in DropUnnecessaryAssumesPass, as suggested in PR
#203765.
Unfortunately I could not find any other candidates,that would not
require finding the WeakVH entry for assumes manually.
Compile-time impact is neutral/in the noise:
https://llvm-compile-time-tracker.com/compare.php?from=a2f4a1cabb083337ccb17c77cafb36d94c1ef52b&to=61a64fc62cbb38001894b75053f4add124869fe0&stat=instructions:u
PR: https://github.com/llvm/llvm-project/pull/204432