[all-commits] [llvm/llvm-project] b37d59: [FPEnv][ARM] Add lowering of STRICT_FSETCC and STR...

john-brawn-arm via All-commits all-commits at lists.llvm.org
Mon Feb 3 04:59:42 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: b37d59353f699e99f139a9227a6a69964ef4b132
      https://github.com/llvm/llvm-project/commit/b37d59353f699e99f139a9227a6a69964ef4b132
  Author: John Brawn <john.brawn at arm.com>
  Date:   2020-02-03 (Mon, 03 Feb 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/test/CodeGen/ARM/fp-intrinsics.ll

  Log Message:
  -----------
  [FPEnv][ARM] Add lowering of STRICT_FSETCC and STRICT_FSETCCS

These can be lowered to code sequences using CMPFP and CMPFPE which then get
selected to VCMP and VCMPE. The implementation isn't fully correct, as the chain
operand isn't handled correctly, but resolving that looks like it would involve
changes around FPSCR-handling instructions and how the FPSCR is modelled.

The fp-intrinsics test was already testing some of this but as the entire test
was being XFAILed it wasn't noticed. Un-XFAIL the test and instead leave the
cases where we aren't generating the right instruction sequences as FIXME.

Differential Revision: https://reviews.llvm.org/D73194




More information about the All-commits mailing list