[PATCH] AArch64_BE function argument passing for ARM ABI
Tim Northover
t.p.northover at gmail.com
Tue Mar 25 09:31:57 PDT 2014
Hi Christian,
Most of this looks good. Just a couple of minor quibbles:
================
Comment at: lib/Target/AArch64/AArch64ISelLowering.cpp:1641-1642
@@ +1640,4 @@
+ uint32_t OpSize = Flags.isByVal() ? Flags.getByValSize()*8 :
+ VA.getLocVT().getSizeInBits();
+ OpSize = (OpSize + 7) / 8;
+ uint32_t BEAlign = 0;
----------------
Is this extra alignment step needed? I can't think of any types with a bitsize not a multiple of 8.
================
Comment at: test/CodeGen/AArch64/func-argpassing.ll:23
@@ -20,5 +22,3 @@
ret void
-}
-
-define void @add_floats(float %val1, float %val2) {
+}define void @add_floats(float %val1, float %val2) {
; CHECK-LABEL: add_floats:
----------------
Accidentally removed whitespace.
================
Comment at: test/CodeGen/AArch64/mul-lohi.ll:11
@@ -9,1 +10,3 @@
+; CHECK-BE: test_128bitmul:
+; CHECK-BE-DAG: umulh [[CARRY:x[0-9]+]], x1, x3
----------------
It's best to use "CHECK-BE-LABEL:" for function names. It makes debugging any failures in future easier.
http://llvm-reviews.chandlerc.com/D3176
More information about the llvm-commits
mailing list