summaryrefslogtreecommitdiffstats
path: root/runtime/vmap_table.h
Commit message (Collapse)AuthorAgeFilesLines
* ART: Mips64 runtime supportAndreas Gampe2015-01-151-1/+1
| | | | | | Interpret-only Mips64 runtime support. Change-Id: Iee22d0c8c77105d9b2f03a67dc4e09957fe0ab0a
* Register promotion support for 64-bit targetsbuzbee2014-07-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Not sufficiently tested for 64-bit targets, but should be fairly close. A significant amount of refactoring could stil be done, (in later CLs). With this change we are not making any changes to the vmap scheme. As a result, it is a requirement that if a vreg is promoted to both a 32-bit view and the low half of a 64-bit view it must share the same physical register. We may change this restriction later on to allow for more flexibility for 32-bit Arm. For example, if v4, v5, v4/v5 and v5/v6 are all hot enough to promote, we'd end up with something like: v4 (as an int) -> r10 v4/v5 (as a long) -> r10 v5 (as an int) -> r11 v5/v6 (as a long) -> r11 Fix a couple of ARM64 bugs on the way... Change-Id: I6a152b9c164d9f1a053622266e165428045362f3
* Replace CountOneBits and __builtin_popcount with POPCOUNT.Vladimir Marko2014-05-021-1/+1
| | | | | | Clean up utils.h, make some functions constexpr. Change-Id: I2399100280cbce81c3c4f5765f0680c1ddcb5883
* Encode VmapTable entries offset by 2 to reduce size.Vladimir Marko2014-02-251-7/+12
| | | | | | | | | | We're using special values 0xffff and 0xfffe for an fp register marker and for method pointer, respectively. These values were being encoded as 3 bytes each and this changes their encoding to 1 byte. Bug: 9437697 Change-Id: Ic1720e898b131a5d3f6ca87d8e1ecdf76fb4160a
* Uleb128 compression of vmap and mapping table.Ian Rogers2013-08-121-0/+115
Bug 9437697. Change-Id: I30bcb97d12cd8b46d3b2cdcbdd358f08fbb9947a (cherry picked from commit 1809a72a66d245ae598582d658b93a24ac3bf01e)