This patch:
- Adds target-feature and target-cpu to FC1Options.
- Moves getTargetFeatures() from Clang.cpp to CommonArgs.cpp.
- Processes target cpu and features in the flang driver. Right now features are only added for AArch64/x86 because I only did basic testing on them but it should generally work for others as well. Option handling is similar to clang.
- Adds appropriate structures in TargetOptions and passes them to the target machine.
What's missing:
- Adding the CPU info and the features as attributes in the LLVM IR module.
- Processing target specific flags, e.g. SVE vector bits for AArch64, ABI etc.
Nit: leftover code?