add a new OPC_SwitchOpcode which is semantically equivalent
to a scope where every child starts with a CheckOpcode, but
executes more efficiently.  Enhance DAGISelMatcherOpt to 
form it.

This also fixes a bug in CheckOpcode: apparently the SDNodeInfo
objects are not pointer comparable, we have to compare the
enum name.

llvm-svn: 97438
6 files changed
tree: ead3f7ac022d52ad3b06f522b995b9e4f81e3bc0
  1. clang/
  2. compiler-rt/
  3. llvm/