1*fe013be4SDimitry Andric//===- X86EncodingOptimizationForImmediate.def.def ---------------*- C++ -*-==//
2*fe013be4SDimitry Andric//
3*fe013be4SDimitry Andric// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*fe013be4SDimitry Andric// See https://llvm.org/LICENSE.txt for license information.
5*fe013be4SDimitry Andric// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*fe013be4SDimitry Andric//
7*fe013be4SDimitry Andric//===----------------------------------------------------------------------===//
8*fe013be4SDimitry Andric// \file
9*fe013be4SDimitry Andric// This file defines all the entries of X86 instruction relaxation for immediate
10*fe013be4SDimitry Andric//===----------------------------------------------------------------------===//
11*fe013be4SDimitry Andric
12*fe013be4SDimitry Andric#ifndef ENTRY
13*fe013be4SDimitry Andric#define ENTRY(LONG, SHORT)
14*fe013be4SDimitry Andric#endif
15*fe013be4SDimitry AndricENTRY(ADC16mi, ADC16mi8)
16*fe013be4SDimitry AndricENTRY(ADC16ri, ADC16ri8)
17*fe013be4SDimitry AndricENTRY(ADC32mi, ADC32mi8)
18*fe013be4SDimitry AndricENTRY(ADC32ri, ADC32ri8)
19*fe013be4SDimitry AndricENTRY(ADC64mi32, ADC64mi8)
20*fe013be4SDimitry AndricENTRY(ADC64ri32, ADC64ri8)
21*fe013be4SDimitry AndricENTRY(SBB16mi, SBB16mi8)
22*fe013be4SDimitry AndricENTRY(SBB16ri, SBB16ri8)
23*fe013be4SDimitry AndricENTRY(SBB32mi, SBB32mi8)
24*fe013be4SDimitry AndricENTRY(SBB32ri, SBB32ri8)
25*fe013be4SDimitry AndricENTRY(SBB64mi32, SBB64mi8)
26*fe013be4SDimitry AndricENTRY(SBB64ri32, SBB64ri8)
27*fe013be4SDimitry AndricENTRY(ADD16mi, ADD16mi8)
28*fe013be4SDimitry AndricENTRY(ADD16ri, ADD16ri8)
29*fe013be4SDimitry AndricENTRY(ADD32mi, ADD32mi8)
30*fe013be4SDimitry AndricENTRY(ADD32ri, ADD32ri8)
31*fe013be4SDimitry AndricENTRY(ADD64mi32, ADD64mi8)
32*fe013be4SDimitry AndricENTRY(ADD64ri32, ADD64ri8)
33*fe013be4SDimitry AndricENTRY(AND16mi, AND16mi8)
34*fe013be4SDimitry AndricENTRY(AND16ri, AND16ri8)
35*fe013be4SDimitry AndricENTRY(AND32mi, AND32mi8)
36*fe013be4SDimitry AndricENTRY(AND32ri, AND32ri8)
37*fe013be4SDimitry AndricENTRY(AND64mi32, AND64mi8)
38*fe013be4SDimitry AndricENTRY(AND64ri32, AND64ri8)
39*fe013be4SDimitry AndricENTRY(OR16mi, OR16mi8)
40*fe013be4SDimitry AndricENTRY(OR16ri, OR16ri8)
41*fe013be4SDimitry AndricENTRY(OR32mi, OR32mi8)
42*fe013be4SDimitry AndricENTRY(OR32ri, OR32ri8)
43*fe013be4SDimitry AndricENTRY(OR64mi32, OR64mi8)
44*fe013be4SDimitry AndricENTRY(OR64ri32, OR64ri8)
45*fe013be4SDimitry AndricENTRY(SUB16mi, SUB16mi8)
46*fe013be4SDimitry AndricENTRY(SUB16ri, SUB16ri8)
47*fe013be4SDimitry AndricENTRY(SUB32mi, SUB32mi8)
48*fe013be4SDimitry AndricENTRY(SUB32ri, SUB32ri8)
49*fe013be4SDimitry AndricENTRY(SUB64mi32, SUB64mi8)
50*fe013be4SDimitry AndricENTRY(SUB64ri32, SUB64ri8)
51*fe013be4SDimitry AndricENTRY(XOR16mi, XOR16mi8)
52*fe013be4SDimitry AndricENTRY(XOR16ri, XOR16ri8)
53*fe013be4SDimitry AndricENTRY(XOR32mi, XOR32mi8)
54*fe013be4SDimitry AndricENTRY(XOR32ri, XOR32ri8)
55*fe013be4SDimitry AndricENTRY(XOR64mi32, XOR64mi8)
56*fe013be4SDimitry AndricENTRY(XOR64ri32, XOR64ri8)
57*fe013be4SDimitry AndricENTRY(CMP16mi, CMP16mi8)
58*fe013be4SDimitry AndricENTRY(CMP16ri, CMP16ri8)
59*fe013be4SDimitry AndricENTRY(CMP32mi, CMP32mi8)
60*fe013be4SDimitry AndricENTRY(CMP32ri, CMP32ri8)
61*fe013be4SDimitry AndricENTRY(CMP64mi32, CMP64mi8)
62*fe013be4SDimitry AndricENTRY(CMP64ri32, CMP64ri8)
63*fe013be4SDimitry AndricENTRY(IMUL16rmi, IMUL16rmi8)
64*fe013be4SDimitry AndricENTRY(IMUL16rri, IMUL16rri8)
65*fe013be4SDimitry AndricENTRY(IMUL32rmi, IMUL32rmi8)
66*fe013be4SDimitry AndricENTRY(IMUL32rri, IMUL32rri8)
67*fe013be4SDimitry AndricENTRY(IMUL64rmi32, IMUL64rmi8)
68*fe013be4SDimitry AndricENTRY(IMUL64rri32, IMUL64rri8)
69*fe013be4SDimitry AndricENTRY(PUSH16i, PUSH16i8)
70*fe013be4SDimitry AndricENTRY(PUSH32i, PUSH32i8)
71*fe013be4SDimitry AndricENTRY(PUSH64i32, PUSH64i8)
72*fe013be4SDimitry Andric#undef ENTRY
73