fix UnaryOpStub::GenerateSmiCodeSub and neg implementation in simulator