xref: /aosp_15_r20/external/capstone/arch/Sparc/Sparc.h (revision 9a0e4156d50a75a99ec4f1653a0e9602a5d45c18)
1*9a0e4156SSadaf Ebrahimi //===-- Sparc.h - Top-level interface for Sparc representation --*- C++ -*-===//
2*9a0e4156SSadaf Ebrahimi //
3*9a0e4156SSadaf Ebrahimi //                     The LLVM Compiler Infrastructure
4*9a0e4156SSadaf Ebrahimi //
5*9a0e4156SSadaf Ebrahimi // This file is distributed under the University of Illinois Open Source
6*9a0e4156SSadaf Ebrahimi // License. See LICENSE.TXT for details.
7*9a0e4156SSadaf Ebrahimi //
8*9a0e4156SSadaf Ebrahimi //===----------------------------------------------------------------------===//
9*9a0e4156SSadaf Ebrahimi //
10*9a0e4156SSadaf Ebrahimi // This file contains the entry points for global functions defined in the LLVM
11*9a0e4156SSadaf Ebrahimi // Sparc back-end.
12*9a0e4156SSadaf Ebrahimi //
13*9a0e4156SSadaf Ebrahimi //===----------------------------------------------------------------------===//
14*9a0e4156SSadaf Ebrahimi 
15*9a0e4156SSadaf Ebrahimi /* Capstone Disassembly Engine */
16*9a0e4156SSadaf Ebrahimi /* By Nguyen Anh Quynh <[email protected]>, 2013-2015 */
17*9a0e4156SSadaf Ebrahimi 
18*9a0e4156SSadaf Ebrahimi #ifndef CS_SPARC_TARGET_SPARC_H
19*9a0e4156SSadaf Ebrahimi #define CS_SPARC_TARGET_SPARC_H
20*9a0e4156SSadaf Ebrahimi 
21*9a0e4156SSadaf Ebrahimi #include "capstone/sparc.h"
22*9a0e4156SSadaf Ebrahimi 
SPARCCondCodeToString(sparc_cc CC)23*9a0e4156SSadaf Ebrahimi inline static const char *SPARCCondCodeToString(sparc_cc CC)
24*9a0e4156SSadaf Ebrahimi {
25*9a0e4156SSadaf Ebrahimi 	switch (CC) {
26*9a0e4156SSadaf Ebrahimi 		default:	return NULL;	// unreachable
27*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_A:  return "a";
28*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_N:   return "n";
29*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_NE:  return "ne";
30*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_E:   return "e";
31*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_G:   return "g";
32*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_LE:  return "le";
33*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_GE:  return "ge";
34*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_L:   return "l";
35*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_GU:  return "gu";
36*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_LEU: return "leu";
37*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_CC:  return "cc";
38*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_CS:  return "cs";
39*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_POS: return "pos";
40*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_NEG: return "neg";
41*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_VC:  return "vc";
42*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_ICC_VS:  return "vs";
43*9a0e4156SSadaf Ebrahimi 
44*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_A:   return "a";
45*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_N:   return "n";
46*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_U:   return "u";
47*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_G:   return "g";
48*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_UG:  return "ug";
49*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_L:   return "l";
50*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_UL:  return "ul";
51*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_LG:  return "lg";
52*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_NE:  return "ne";
53*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_E:   return "e";
54*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_UE:  return "ue";
55*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_GE:  return "ge";
56*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_UGE: return "uge";
57*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_LE:  return "le";
58*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_ULE: return "ule";
59*9a0e4156SSadaf Ebrahimi 		case SPARC_CC_FCC_O:   return "o";
60*9a0e4156SSadaf Ebrahimi 	}
61*9a0e4156SSadaf Ebrahimi }
62*9a0e4156SSadaf Ebrahimi 
63*9a0e4156SSadaf Ebrahimi #endif
64