https://gcc.gnu.org/bugzilla/show_bug.cgi?id=50883
--- Comment #18 from Sebastian Huber <sebastian.hu...@embedded-brains.de> --- clang 11 produces this code for the attached test case: clang -O2 -S -o - pr50883.c -target arm clang-11.0: warning: unknown platform, assuming -mfloat-abi=soft clang-11.0: warning: unknown platform, assuming -mfloat-abi=soft .text .syntax unified .eabi_attribute 67, "2.09" @ Tag_conformance .cpu arm7tdmi .eabi_attribute 6, 2 @ Tag_CPU_arch .eabi_attribute 8, 1 @ Tag_ARM_ISA_use .eabi_attribute 9, 1 @ Tag_THUMB_ISA_use .eabi_attribute 34, 0 @ Tag_CPU_unaligned_access .eabi_attribute 17, 1 @ Tag_ABI_PCS_GOT_use .eabi_attribute 20, 1 @ Tag_ABI_FP_denormal .eabi_attribute 21, 0 @ Tag_ABI_FP_exceptions .eabi_attribute 23, 3 @ Tag_ABI_FP_number_model .eabi_attribute 24, 1 @ Tag_ABI_align_needed .eabi_attribute 25, 1 @ Tag_ABI_align_preserved .eabi_attribute 38, 1 @ Tag_ABI_FP_16bit_format .eabi_attribute 18, 4 @ Tag_ABI_PCS_wchar_t .eabi_attribute 26, 2 @ Tag_ABI_enum_size .eabi_attribute 14, 0 @ Tag_ABI_PCS_R9_use .file "pr50883.c" .globl f @ -- Begin function f .p2align 2 .type f,%function .code 32 @ @f f: .fnstart @ %bb.0: mov r0, r1 bx lr .Lfunc_end0: .size f, .Lfunc_end0-f .cantunwind .fnend @ -- End function .globl g @ -- Begin function g .p2align 2 .type g,%function .code 32 @ @g g: .fnstart @ %bb.0: mov r0, r1 bx lr .Lfunc_end1: .size g, .Lfunc_end1-g .cantunwind .fnend @ -- End function .globl h @ -- Begin function h .p2align 2 .type h,%function .code 32 @ @h h: .fnstart @ %bb.0: ldr r1, .LCPI2_0 ldm r1, {r0, r1} b j .p2align 2 @ %bb.1: .LCPI2_0: .long ss .Lfunc_end2: .size h, .Lfunc_end2-h .cantunwind .fnend @ -- End function .globl i @ -- Begin function i .p2align 2 .type i,%function .code 32 @ @i i: .fnstart @ %bb.0: ldr r1, .LCPI3_0 ldm r1, {r0, r1} b k .p2align 2 @ %bb.1: .LCPI3_0: .long tt .Lfunc_end3: .size i, .Lfunc_end3-i .cantunwind .fnend @ -- End function .ident "clang version 11.0.1" .section ".note.GNU-stack","",%progbits .addrsig