Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(642)

Unified Diff: runtime/vm/assembler_arm.h

Issue 886173003: VM: Align implementations of assembler constant pools. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/assembler_arm.h
===================================================================
--- runtime/vm/assembler_arm.h (revision 43497)
+++ runtime/vm/assembler_arm.h (working copy)
@@ -316,7 +316,6 @@
public:
explicit Assembler(bool use_far_branches = false)
: buffer_(),
- object_pool_(GrowableObjectArray::Handle()),
prologue_offset_(-1),
use_far_branches_(use_far_branches),
comments_(),
@@ -341,7 +340,7 @@
ASSERT(buffer_.pointer_offsets().length() == 0); // No pointers in code.
return buffer_.pointer_offsets();
}
- const GrowableObjectArray& object_pool() const { return object_pool_; }
+ const GrowableObjectArray& object_pool() const { return object_pool_.data(); }
bool use_far_branches() const {
return FLAG_use_far_branches || use_far_branches_;
@@ -646,7 +645,6 @@
// Load and Store.
// These three do not clobber IP.
void LoadPatchableImmediate(Register rd, int32_t value, Condition cond = AL);
- void LoadDecodableImmediate(Register rd, int32_t value, Condition cond = AL);
void LoadImmediate(Register rd, int32_t value, Condition cond = AL);
// These two may clobber IP.
void LoadSImmediate(SRegister sd, float value, Condition cond = AL);
@@ -959,11 +957,8 @@
private:
AssemblerBuffer buffer_; // Contains position independent code.
- GrowableObjectArray& object_pool_; // Objects and patchable jump targets.
+ ObjectPool object_pool_; // Objects and patchable jump targets.
- // Hashmap for fast lookup in object pool.
- DirectChainedHashMap<ObjIndexPair> object_pool_index_table_;
-
int32_t prologue_offset_;
bool use_far_branches_;
@@ -973,9 +968,6 @@
void movw(Register rd, uint16_t imm16, Condition cond = AL);
void movt(Register rd, uint16_t imm16, Condition cond = AL);
- int32_t AddObject(const Object& obj);
- int32_t AddExternalLabel(const ExternalLabel* label);
-
void BindARMv6(Label* label);
void BindARMv7(Label* label);

Powered by Google App Engine
This is Rietveld 408576698