[test-suite] r236162 - Disable SingleSource/UnitTests/blockstret on AArch64.

Ahmed Bougacha ahmed.bougacha at gmail.com
Wed Apr 29 14:41:44 PDT 2015


Author: ab
Date: Wed Apr 29 16:41:43 2015
New Revision: 236162

URL: http://llvm.org/viewvc/llvm-project?rev=236162&view=rev
Log:
Disable SingleSource/UnitTests/blockstret on AArch64.

It never worked, and isn't supposed to.

It tests that clang properly emits the BLOCK_USE_STRET bit in the block
infos.  But that's intentionally disabled in:
  AArch64TargetCodeGenInfo::doesReturnSlotInterfereWithArgs
which indirectly drives the BLOCK_USE_STRET decision, via:
  CodeGenModule::ReturnSlotInterferesWithArgs

On AArch64, sret parameters go through a dedicated register (x8), and
thus don't affect the ABI like they would elsewhere (where all "actual"
parameters would be forced to be passed in the next register defined by
the ABI).

So, on AArch64, from the runtime's standpoint, blocks never "use STRET".

Modified:
    test-suite/trunk/SingleSource/UnitTests/Makefile

Modified: test-suite/trunk/SingleSource/UnitTests/Makefile
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/UnitTests/Makefile?rev=236162&r1=236161&r2=236162&view=diff
==============================================================================
--- test-suite/trunk/SingleSource/UnitTests/Makefile (original)
+++ test-suite/trunk/SingleSource/UnitTests/Makefile Wed Apr 29 16:41:43 2015
@@ -33,6 +33,12 @@ ifeq (,$(filter $(ARCH),x86_64 x86_64h))
 PROGRAMS_TO_SKIP += ms_struct-bitfield-init-1 ms_struct-bitfield-init ms_struct-bitfield ms_struct_pack_layout-1 ms_struct_pack_layout ms_struct-bitfield-1
 endif
 
+# The blockstret test doesn't make sense on AArch64 (as the BLOCK_USE_STRET bit
+# is never emitted by clang there).
+ifeq ($(ARCH),AArch64)
+PROGRAMS_TO_SKIP += blockstret
+endif
+
 # Add special tests for Mips
 ifeq ($(ARCH),Mips)
 DIRS += Mips





More information about the llvm-commits mailing list