Fix IGET/IPUT slow path code generation.
Two bugs are fixed in this commit:
1. IGET instructions is calling Set*Instance runtime
function, which should be changed to Get*Instance.
2. We should pass the object address to the runtime
function for IGET and IPUT.
Change-Id: I10c317e5c2d093966d8a0f2fd422f9bb5d2b34ba
diff --git a/src/compiler_llvm/art_module.ll b/src/compiler_llvm/art_module.ll
index 4ac2916..274d575 100644
--- a/src/compiler_llvm/art_module.ll
+++ b/src/compiler_llvm/art_module.ll
@@ -101,13 +101,32 @@
declare i64 @art_get64_static_from_code(i32, %JavaObject*)
declare %JavaObject* @art_get_obj_static_from_code(i32, %JavaObject*)
-declare i32 @art_set32_instance_from_code(i32, %JavaObject*, i32)
-declare i32 @art_set64_instance_from_code(i32, %JavaObject*, i64)
-declare i32 @art_set_obj_instance_from_code(i32, %JavaObject*, %JavaObject*)
+declare i32 @art_set32_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*,
+ i32)
-declare i32 @art_get32_instance_from_code(i32, %JavaObject*)
-declare i64 @art_get64_instance_from_code(i32, %JavaObject*)
-declare %JavaObject* @art_get_obj_instance_from_code(i32, %JavaObject*)
+declare i32 @art_set64_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*,
+ i64)
+
+declare i32 @art_set_obj_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*,
+ %JavaObject*)
+
+declare i32 @art_get32_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*)
+
+declare i64 @art_get64_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*)
+
+declare %JavaObject* @art_get_obj_instance_from_code(i32,
+ %JavaObject*,
+ %JavaObject*)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;