Utilizing newer llvm diagnostic remark API in order to enable use of opt-viewer tool.
Polly Diagnostic Remarks also now appear in yaml remark file.
In this patch, I've added the OptimizationRemarkEmitter into certain classes where remarks are being emitted and update the remark emit calls itself. I also provide each remark a BasicBlock or Instruction from where it is being called, in order to compute the hotness of the remark.