//===- AArch64MachineCombinerPattern.h -===// //===- AArch64 instruction pattern supported by combiner -===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This file defines instruction pattern supported by combiner // //===----------------------------------------------------------------------===// #ifndef LLVM_LIB_TARGET_AARCH64_AARCH64MACHINECOMBINERPATTERN_H #define LLVM_LIB_TARGET_AARCH64_AARCH64MACHINECOMBINERPATTERN_H namespace llvm { /// Enumeration of instruction pattern supported by machine combiner /// /// namespace MachineCombinerPattern { enum MC_PATTERN : int { MC_NONE = 0, MC_MULADDW_OP1 = 1, MC_MULADDW_OP2 = 2, MC_MULSUBW_OP1 = 3, MC_MULSUBW_OP2 = 4, MC_MULADDWI_OP1 = 5, MC_MULSUBWI_OP1 = 6, MC_MULADDX_OP1 = 7, MC_MULADDX_OP2 = 8, MC_MULSUBX_OP1 = 9, MC_MULSUBX_OP2 = 10, MC_MULADDXI_OP1 = 11, MC_MULSUBXI_OP1 = 12 }; } // end namespace MachineCombinerPattern } // end namespace llvm #endif