aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPirama Arumuga Nainar <pirama@google.com>2015-05-18 22:40:26 -0700
committerPirama Arumuga Nainar <pirama@google.com>2015-05-18 22:40:26 -0700
commit2f76f9ce52a6f9c084686f0e3b77834ff8a10c59 (patch)
tree9752aaeacc24b62a881bb4ac31d267b45a9617ca
parentda22f29bea98de041876aee5f621aa22befa827a (diff)
downloadvixl-2f76f9ce52a6f9c084686f0e3b77834ff8a10c59.tar.gz
Temporary workaround for b/21273194android-m-preview
Create a new Register object that is equivalent to register lr (x30). This is a temporary workaround to b/21273194. For some reason, the const global object vixl::lr is uninitialized at this point. Change-Id: I107778c2f66da6b4868edbfe0448349adaa0af59
-rw-r--r--src/vixl/a64/assembler-a64.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vixl/a64/assembler-a64.cc b/src/vixl/a64/assembler-a64.cc
index 9f85e8fb..89b96f0a 100644
--- a/src/vixl/a64/assembler-a64.cc
+++ b/src/vixl/a64/assembler-a64.cc
@@ -132,7 +132,10 @@ CPURegList CPURegList::GetCalleeSavedV(unsigned size) {
CPURegList CPURegList::GetCallerSaved(unsigned size) {
// Registers x0-x18 and lr (x30) are caller-saved.
CPURegList list = CPURegList(CPURegister::kRegister, size, 0, 18);
- list.Combine(lr);
+ // Temporary workaround for bug 21273194: Create a Register object equivalent
+ // to register lr (x30)
+ // list.Combine(lr);
+ list.Combine(Register(30, size));
return list;
}