Fix CPU fallback type check and add graph-level coverage
NodeArg::Type() returns the canonical ONNX type string, so comparing against bare element names never matched and the reduced-precision guard became dead code. Switch on TypeProto tensor elem_type instead, keep the policy internal to the .cc, and replace the tautological predicate assertions with a graph-level test over GetCpuPreferredNodes.
Author
Gopalakrishnan Nallasamy