The DXIL Prepare pass handles the IR mutations required to convert
modern LLVM IR into something that more closely resembles LLVM-3.7 IR
so that the DXIL bitcode writer can emit 3.7 IR.
This change adds the codegen pass handling the first two IR
transformations:
- stripping new function attributes
- converting fneg into fsub
It's amusing to consider the implications of sanitizer attributes on DXIL. :) (no action required)