[PATCH] D51854: [Arm builtins] Remove non-necessary IS check
Peter Smith via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 10 05:59:03 PDT 2018
peter.smith added a comment.
I agree that we should be using APSR_nzcvq rather than CPSR_f as both assemble to the same instruction encoding (they disassemble to APSR_nzcvq). I think it is worth seeing if there are any objections to removing the case for ARM state msr CPSR_f, #APSR_C as it saves one instruction. Overall looking good to me though.
================
Comment at: lib/builtins/arm/aeabi_cdcmp.S:57
msr APSR_nzcvq, ip
-#else
- msr CPSR_f, #APSR_C
----------------
We are going from 1 instruction in ARM state to two here (only ARM state supports the msr register, immediate form). Personally I think the simplicity of having a single code sequence outweighs having an extra instruction as I suspect the majority of people are using Thumb2. If there is anyone that prefers the immediate form it will be worth changing msr CPSR_F, #APSR_C to msr APSR_nzcvq, #APSR_C.
Repository:
rCRT Compiler Runtime
https://reviews.llvm.org/D51854
More information about the llvm-commits
mailing list