aboutsummaryrefslogtreecommitdiff
path: root/disas/libvixl/utils.cc
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2015-02-05 13:37:25 +0000
committerPeter Maydell <peter.maydell@linaro.org>2015-02-05 13:37:25 +0000
commitd4eba98df4cca016c3cc88f519164b5c0e434e69 (patch)
tree4f5a5620580022d7577ea3529fcb5638499ce7aa /disas/libvixl/utils.cc
parent87c3d486150917c8e286d29166c98a2035377b52 (diff)
downloadqemu-d4eba98df4cca016c3cc88f519164b5c0e434e69.zip
qemu-d4eba98df4cca016c3cc88f519164b5c0e434e69.tar.gz
qemu-d4eba98df4cca016c3cc88f519164b5c0e434e69.tar.bz2
disas/libvixl: Update to upstream VIXL 1.7
Update our copy of libvixl to upstream's 1.7 release. This includes upstream's fix for the issue we had a local patch for in commit 94cc44a9e. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1422274779-13359-2-git-send-email-peter.maydell@linaro.org
Diffstat (limited to 'disas/libvixl/utils.cc')
-rw-r--r--disas/libvixl/utils.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/disas/libvixl/utils.cc b/disas/libvixl/utils.cc
index 21965d7..80b132a 100644
--- a/disas/libvixl/utils.cc
+++ b/disas/libvixl/utils.cc
@@ -135,4 +135,17 @@ bool IsPowerOf2(int64_t value) {
return (value != 0) && ((value & (value - 1)) == 0);
}
+
+unsigned CountClearHalfWords(uint64_t imm, unsigned reg_size) {
+ VIXL_ASSERT((reg_size % 8) == 0);
+ int count = 0;
+ for (unsigned i = 0; i < (reg_size / 16); i++) {
+ if ((imm & 0xffff) == 0) {
+ count++;
+ }
+ imm >>= 16;
+ }
+ return count;
+}
+
} // namespace vixl