diff options
author | 2015-10-19 21:31:53 -0700 | |
---|---|---|
committer | 2015-10-30 11:15:26 -0700 | |
commit | 7cffc3b0004d32faffc552c0a59286f369b21504 (patch) | |
tree | e3838b8ba2a782ed91ef8faa381362b7a686a32a /compiler/utils/assembler.h | |
parent | 9e1b56f0e77aa5b6c72374b86d0cef58484ddcaa (diff) |
ART: Arm32 packed-switch jump tables
Add jump table support to the thumb2 assembler. Jump tables are
a collection of labels for the case targets, and an anchor label
denoting the position of the jump.
Use the jump table support to implement packed-switch support for
arm32.
Add tests for BindTrackedLabel and JumpTable to the thumb2 assembler
test.
Bug: 24092914
Change-Id: I5c84f193dfebf9e07f48678efc8bd151bb1410dd
Diffstat (limited to 'compiler/utils/assembler.h')
-rw-r--r-- | compiler/utils/assembler.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/utils/assembler.h b/compiler/utils/assembler.h index d97a2a40b2..dfe6babb25 100644 --- a/compiler/utils/assembler.h +++ b/compiler/utils/assembler.h @@ -227,6 +227,8 @@ class AssemblerBuffer { // Returns the position in the instruction stream. int GetPosition() { return cursor_ - contents_; } + void ExtendCapacity(size_t min_capacity = 0u); + private: // The limit is set to kMinimumGap bytes before the end of the data area. // This leaves enough space for the longest possible instruction and allows @@ -261,8 +263,6 @@ class AssemblerBuffer { return data + capacity - kMinimumGap; } - void ExtendCapacity(size_t min_capacity = 0u); - friend class AssemblerFixup; }; |