[AutoDiff] Fix `@differentiating` attribute. (#23441)
Update derivative name in `@differentiable` attribute when a derivative
function is set. This prevents linker errors.
Disable serialization for `@differentiable` attribute. It is unnecessary:
- Currently, type-checking sets the derivative in a `@differentiable` attribute
on the original function, which is serialized.
- If both `@differentiable` and `@differentiating` are serializable, using
`@differentiating` attribute causes an infinite loop occurs during
deserialization.
- In the future, `@differentiating` attribute will be lowered to SIL
differentiability witness tables, which will be serialized.
Unblocks #23193: using `@differentiating` attribute in the stdlib.