[Lldb-commits] [PATCH] D32813: ABISysV_arm64: compute return value for large vectors correctly

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Wed May 3 10:13:34 PDT 2017


labath created this revision.
Herald added subscribers: srhines, rengolin, aemerson.

Arm64 Procedure Call Standard specifies than only vectors up to 16 bytes
are stored in v0 (which makes sense, as that's the size of the
register). 32-byte vector types are passed as regular structs via x8
pointer. Treat them as such.

This fixes TestReturnValue for arm64-clang. I also split the test case
into two so I can avoid the if(gcc) line, and annotate each test
instead. (It seems the vector type tests fail with gcc only when
targetting x86 arches).


https://reviews.llvm.org/D32813

Files:
  packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py
  source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32813.97676.patch
Type: text/x-patch
Size: 5719 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170503/978ed2d5/attachment.bin>


More information about the lldb-commits mailing list