Index: lib/Target/Mips/AsmParser/MipsAsmParser.cpp =================================================================== --- lib/Target/Mips/AsmParser/MipsAsmParser.cpp +++ lib/Target/Mips/AsmParser/MipsAsmParser.cpp @@ -252,7 +252,7 @@ bool isABI_N32() const { return STI.getFeatureBits() & Mips::FeatureN32; } bool isABI_N64() const { return STI.getFeatureBits() & Mips::FeatureN64; } bool isABI_O32() const { return STI.getFeatureBits() & Mips::FeatureO32; } - bool isABI_FPXX() const { return false; } // TODO: add check for FeatureXX + bool isABI_FPXX() const { return STI.getFeatureBits() & Mips::FeatureFPXX; } bool useOddSPReg() const { return !(STI.getFeatureBits() & Mips::FeatureNoOddSPReg); Index: test/MC/Mips/mips_abi_flags_xx.s =================================================================== --- test/MC/Mips/mips_abi_flags_xx.s +++ test/MC/Mips/mips_abi_flags_xx.s @@ -5,6 +5,10 @@ # RUN: llvm-readobj -sections -section-data -section-relocations - | \ # RUN: FileCheck %s -check-prefix=CHECK-OBJ +# RUN: llvm-mc /dev/null -arch=mips -mcpu=mips32 -mattr=fpxx -filetype=obj -o - | \ +# RUN: llvm-readobj -sections -section-data -section-relocations - | \ +# RUN: FileCheck %s -check-prefix=CHECK-OBJ + # CHECK-ASM: .module fp=xx # Checking if the Mips.abiflags were correctly emitted.