1. A method in a computing device, the method comprising: receiving, from a physical processor core on which a thread is scheduled, an undefined opcode exception indicating that that physical processor core does not support an instruction that caused the undefined opcode exception; identifying the instruction that caused the undefined opcode exception; selecting a second physical processor core which supports the instruction; and scheduling the thread to run on the second physical processor core starting at the identified instruction that caused the undefined opcode exception, the second physical processor core supporting functionality which supports the identified instruction.