[AutoDiff] Use `@derivative` attribute to register tgmath derivatives.
- Compile stdlib with `-enable-experimental-cross-file-derivative-registration`.
- This is necessary for using `@derivative` with tgmath functions, since
some original functions (e.g. the `tan(_: Double) -> Double`) are imported
from Clang.
- Fix `@derivative` attribute SILGen for foreign original declarations.
- Replace `@differentiable(jvp:vjp)` with `@derivative` for tgmath functions.
Resolves TF-1087: `@derivative` attribute SILGen crash foreign declarations.
Progress towards TF-1085: using `@derivative` attribute in the stdlib.