Possible GenericScheduler bug

If I compile for the MSP430 target with the -enable-misched I get an assertion failure in TargetLoweringBase::getRegClassFor(MVT). I've only noticed this since picking up LLVM 3.4 but it looks like the change has been there since rev 189,991. The issue is that the Converging / Generic Scheduler is assuming the i32 is a legal type and therefore has a corresponding general register class. This isn't the case for the MSP430, in which i32 isn't legal.

On the assumption that enabling the generic scheduler is something that people might want to do for all targets, should I raise this as a bug?

If I compile for the MSP430 target with the -enable-misched I get an assertion failure in TargetLoweringBase::getRegClassFor(MVT). I've only noticed this since picking up LLVM 3.4 but it looks like the change has been there since rev 189,991. The issue is that the Converging / Generic Scheduler is assuming the i32 is a legal type and therefore has a corresponding general register class. This isn't the case for the MSP430, in which i32 isn't legal.

On the assumption that enabling the generic scheduler is something that people might want to do for all targets, should I raise this as a bug?

Yes, please file a bug and also cc the code owner.

-Tom