Marking branches/calls as volatile.

This commit is contained in:
Ben Vanik 2014-08-06 11:41:37 -07:00
parent 646b32ad4f
commit a53ee330ce
2 changed files with 8 additions and 7 deletions

View File

@ -321,6 +321,7 @@ bool RegisterAllocationPass::TryAllocateRegister(Value* value) {
}
bool RegisterAllocationPass::SpillOneRegister(HIRBuilder* builder,
Block* block,
TypeName required_type) {
// Get the set that we will be picking from.
RegisterSetUsage* usage_set;

View File

@ -54,43 +54,43 @@ DEFINE_OPCODE(
OPCODE_CALL,
"call",
OPCODE_SIG_X_S,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_CALL_TRUE,
"call_true",
OPCODE_SIG_X_V_S,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_CALL_INDIRECT,
"call_indirect",
OPCODE_SIG_X_V,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_CALL_INDIRECT_TRUE,
"call_indirect_true",
OPCODE_SIG_X_V_V,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_CALL_EXTERN,
"call_extern",
OPCODE_SIG_X_S,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_RETURN,
"return",
OPCODE_SIG_X,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_RETURN_TRUE,
"return_true",
OPCODE_SIG_X_V,
OPCODE_FLAG_BRANCH)
OPCODE_FLAG_BRANCH | OPCODE_FLAG_VOLATILE)
DEFINE_OPCODE(
OPCODE_SET_RETURN_ADDRESS,