projects
/
mono.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[reflection] Use MonoError for mono_custom_attrs_from_assembly
[mono.git]
/
mono
/
mini
/
mini-ia64.c
diff --git
a/mono/mini/mini-ia64.c
b/mono/mini/mini-ia64.c
index 0e8838ae1223cea4ff0b043ee10d77de394a83e8..aee49d44b2125b324b9770b24fa29c9ba2fe96f9 100644
(file)
--- a/
mono/mini/mini-ia64.c
+++ b/
mono/mini/mini-ia64.c
@@
-1586,6
+1586,8
@@
mono_arch_lowering_pass (MonoCompile *cfg, MonoBasicBlock *bb)
break;
}
break;
}
+ if (mono_op_imm_to_op (ins->opcode) == -1)
+ g_error ("mono_op_imm_to_op failed for %s\n", mono_inst_name (ins->opcode));
ins->opcode = mono_op_imm_to_op (ins->opcode);
if (ins->inst_imm == 0)
ins->opcode = mono_op_imm_to_op (ins->opcode);
if (ins->inst_imm == 0)
@@
-3782,8
+3784,10
@@
mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain,
for (patch_info = ji; patch_info; patch_info = patch_info->next) {
unsigned char *ip = patch_info->ip.i + code;
const unsigned char *target;
for (patch_info = ji; patch_info; patch_info = patch_info->next) {
unsigned char *ip = patch_info->ip.i + code;
const unsigned char *target;
+ MonoError error;
- target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors);
+ target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
+ mono_error_raise_exception (&error); /* FIXME: don't raise here */
if (patch_info->type == MONO_PATCH_INFO_NONE)
continue;
if (patch_info->type == MONO_PATCH_INFO_NONE)
continue;
@@
-4184,8
+4188,7
@@
mono_arch_emit_exceptions (MonoCompile *cfg)
guint8* buf;
guint64 exc_token_index;
guint8* buf;
guint64 exc_token_index;
- exc_class = mono_class_from_name (mono_defaults.corlib, "System", patch_info->data.name);
- g_assert (exc_class);
+ exc_class = mono_class_load_from_name (mono_defaults.corlib, "System", patch_info->data.name);
exc_token_index = mono_metadata_token_index (exc_class->type_token);
throw_ip = cfg->native_code + patch_info->ip.i;
exc_token_index = mono_metadata_token_index (exc_class->type_token);
throw_ip = cfg->native_code + patch_info->ip.i;