llvm-project/llvm/lib/Target/Hexagon
Krzysztof Parzyszek 40a605f1be [Hexagon] Fix wrong order of operands for vmux
Shuffle generation uses vmux to collapse vectors resulting from two
individual shuffles into one. The indexes of the elements selected
from the first operand were indicated by 0xFF in the constant vector
used in the compare instruction, but the compare (veqb) set the bits
corresponding to the 0x00 elements, thus inverting the selection.

Reverse the order of operands to vmux to get the correct output.

llvm-svn: 320516
2017-12-12 19:32:41 +00:00
..
AsmParser [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
Disassembler [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
MCTargetDesc [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
TargetInfo Add backend name to Target to enable runtime info to be fed back into TableGen 2017-11-15 23:55:44 +00:00
BitTracker.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
BitTracker.h [Hexagon] Better determination of register classes in bit tracker 2017-09-25 19:12:55 +00:00
CMakeLists.txt [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
Hexagon.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
Hexagon.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonAsmPrinter.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonAsmPrinter.h [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
HexagonBitSimplify.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
HexagonBitTracker.cpp [CodeGen] Rename functions PrintReg* to printReg* 2017-11-28 12:42:37 +00:00
HexagonBitTracker.h [Hexagon] Better determination of register classes in bit tracker 2017-09-25 19:12:55 +00:00
HexagonBlockRanges.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonBlockRanges.h [Hexagon] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-09-28 22:27:31 +00:00
HexagonBranchRelaxation.cpp
HexagonCFGOptimizer.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
HexagonCommonGEP.cpp [Hexagon] Fix expensive checks build bot broken in r309230. 2017-07-26 23:56:29 +00:00
HexagonConstExtenders.cpp [CodeGen] Rename functions PrintReg* to printReg* 2017-11-28 12:42:37 +00:00
HexagonConstPropagation.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonCopyToCombine.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonDepArch.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepArch.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepDecoders.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepIICHVX.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepIICScalar.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepITypes.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepITypes.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepInstrFormats.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepInstrInfo.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepMappings.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepOperands.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonDepTimingClasses.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonEarlyIfConv.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonExpandCondsets.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonFixupHwLoops.cpp Target/TargetInstrInfo.h -> CodeGen/TargetInstrInfo.h to match layering 2017-11-08 01:01:31 +00:00
HexagonFrameLowering.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonFrameLowering.h Move TargetFrameLowering.h to CodeGen where it's implemented 2017-11-03 22:32:11 +00:00
HexagonGatherPacketize.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonGenExtract.cpp [Hexagon] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-09-28 22:27:31 +00:00
HexagonGenInsert.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
HexagonGenMux.cpp [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-07-29 00:56:56 +00:00
HexagonGenPredicate.cpp [CodeGen] Rename functions PrintReg* to printReg* 2017-11-28 12:42:37 +00:00
HexagonHardwareLoops.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonHazardRecognizer.cpp
HexagonHazardRecognizer.h
HexagonIICHVX.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonIICScalar.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonISelDAGToDAG.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonISelDAGToDAG.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonISelDAGToDAGHVX.cpp [Hexagon] Fix wrong order of operands for vmux 2017-12-12 19:32:41 +00:00
HexagonISelLowering.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonISelLowering.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonISelLoweringHVX.cpp [Hexagon] Crash in instruction selection for insert_vector_elt for HVX 2017-12-11 14:46:06 +00:00
HexagonInstrFormats.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonInstrFormatsV4.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonInstrFormatsV60.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonInstrFormatsV65.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonInstrInfo.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonInstrInfo.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonIntrinsics.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonIntrinsicsV3.td
HexagonIntrinsicsV4.td
HexagonIntrinsicsV5.td
HexagonIntrinsicsV60.td [Hexagon] Switch to parameterized register classes for HVX 2017-09-15 15:46:05 +00:00
HexagonLoopIdiomRecognition.cpp [ModRefInfo] Make enum ModRefInfo an enum class [NFC]. 2017-12-07 22:41:34 +00:00
HexagonMCInstLower.cpp [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
HexagonMachineFunctionInfo.cpp
HexagonMachineFunctionInfo.h
HexagonMachineScheduler.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
HexagonMachineScheduler.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
HexagonMapAsm2IntrinV62.gen.td [Hexagon] Switch to parameterized register classes for HVX 2017-09-15 15:46:05 +00:00
HexagonMapAsm2IntrinV65.gen.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonNewValueJump.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonOperands.td [Hexagon] Reorganize and update instruction patterns 2017-10-20 19:33:12 +00:00
HexagonOptAddrMode.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
HexagonOptimizeSZextends.cpp
HexagonPatterns.td [Hexagon] Generate HVX code for basic arithmetic operations 2017-12-07 17:37:28 +00:00
HexagonPatternsV65.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonPeephole.cpp [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
HexagonPseudo.td [Hexagon] New HVX target features. 2017-10-18 18:07:07 +00:00
HexagonRDFOpt.cpp [Hexagon] Allow the RDF optimizations to be run in .mir testcases 2017-10-30 14:11:52 +00:00
HexagonRegisterInfo.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonRegisterInfo.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
HexagonRegisterInfo.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonSchedule.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonScheduleV4.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonScheduleV55.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonScheduleV60.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonScheduleV62.td [Hexagon] Use automatically-generated scheduling information for HVX 2017-05-03 20:10:36 +00:00
HexagonScheduleV65.td [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonSelectionDAGInfo.cpp Make library calls sensitive to regparm module flag (Fixes PR3997). 2017-03-18 00:44:07 +00:00
HexagonSelectionDAGInfo.h
HexagonSplitConst32AndConst64.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
HexagonSplitDouble.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
HexagonStoreWidening.cpp [CodeGen] Print "%vreg0" as "%0" in both MIR and debug output 2017-11-30 12:12:19 +00:00
HexagonSubtarget.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonSubtarget.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonTargetMachine.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonTargetMachine.h Revert "TargetMachine: Merge TargetMachine and LLVMTargetMachine" 2017-10-12 22:57:28 +00:00
HexagonTargetObjectFile.cpp [Hexagon] Emit lookup tables in text section based on a flag 2017-07-18 15:31:37 +00:00
HexagonTargetObjectFile.h [Hexagon] Emit lookup tables in text section based on a flag 2017-07-18 15:31:37 +00:00
HexagonTargetStreamer.h
HexagonTargetTransformInfo.cpp [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
HexagonTargetTransformInfo.h [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
HexagonVLIWPacketizer.cpp [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonVLIWPacketizer.h [Hexagon] Add support for Hexagon V65 2017-12-11 18:57:54 +00:00
HexagonVectorLoopCarriedReuse.cpp Add llvm::for_each as a range-based extensions to <algorithm> and make use of it in some cases where it is a more clear alternative to std::for_each. 2017-11-03 20:01:25 +00:00
HexagonVectorPrint.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
LLVMBuild.txt
RDFCopy.cpp Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00
RDFCopy.h [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
RDFDeadCode.cpp [Hexagon] Make sure that RDF does not remove EH_LABELs 2017-11-21 21:05:51 +00:00
RDFDeadCode.h
RDFGraph.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
RDFGraph.h [CodeGen] Use MachineOperand::print in the MIRPrinter for MO_Register. 2017-12-07 10:40:31 +00:00
RDFLiveness.cpp [CodeGen] Unify MBB reference format in both MIR and debug output 2017-12-04 17:18:51 +00:00
RDFLiveness.h [Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-01 21:20:10 +00:00
RDFRegisters.cpp [CodeGen] Rename functions PrintReg* to printReg* 2017-11-28 12:42:37 +00:00
RDFRegisters.h Fix a bunch more layering of CodeGen headers that are in Target 2017-11-17 01:07:10 +00:00