PPCPredicates.h
Go to the documentation of this file.
1 //===-- PPCPredicates.h - PPC Branch Predicate Information ------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file describes the PowerPC branch predicates.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 /* Capstone Disassembly Engine */
15 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
16 
17 #ifndef CS_POWERPC_PPCPREDICATES_H
18 #define CS_POWERPC_PPCPREDICATES_H
19 
20 #include "capstone/ppc.h"
21 
22 // NOTE: duplicate of ppc_bc in ppc.h to maitain code compatibility with LLVM
23 typedef enum ppc_predicate {
24  PPC_PRED_LT = (0 << 5) | 12,
25  PPC_PRED_LE = (1 << 5) | 4,
26  PPC_PRED_EQ = (2 << 5) | 12,
27  PPC_PRED_GE = (0 << 5) | 4,
28  PPC_PRED_GT = (1 << 5) | 12,
29  PPC_PRED_NE = (2 << 5) | 4,
30  PPC_PRED_UN = (3 << 5) | 12,
31  PPC_PRED_NU = (3 << 5) | 4,
32  PPC_PRED_LT_MINUS = (0 << 5) | 14,
33  PPC_PRED_LE_MINUS = (1 << 5) | 6,
34  PPC_PRED_EQ_MINUS = (2 << 5) | 14,
35  PPC_PRED_GE_MINUS = (0 << 5) | 6,
36  PPC_PRED_GT_MINUS = (1 << 5) | 14,
37  PPC_PRED_NE_MINUS = (2 << 5) | 6,
38  PPC_PRED_UN_MINUS = (3 << 5) | 14,
39  PPC_PRED_NU_MINUS = (3 << 5) | 6,
40  PPC_PRED_LT_PLUS = (0 << 5) | 15,
41  PPC_PRED_LE_PLUS = (1 << 5) | 7,
42  PPC_PRED_EQ_PLUS = (2 << 5) | 15,
43  PPC_PRED_GE_PLUS = (0 << 5) | 7,
44  PPC_PRED_GT_PLUS = (1 << 5) | 15,
45  PPC_PRED_NE_PLUS = (2 << 5) | 7,
46  PPC_PRED_UN_PLUS = (3 << 5) | 15,
47  PPC_PRED_NU_PLUS = (3 << 5) | 7,
48 
49  // When dealing with individual condition-register bits, we have simple set
50  // and unset predicates.
54 
57 
61 
62 #endif
PPC_PRED_NU_MINUS
@ PPC_PRED_NU_MINUS
Definition: PPCPredicates.h:39
getSwappedPredicate
ppc_predicate getSwappedPredicate(ppc_predicate Opcode)
PPC_PRED_BIT_UNSET
@ PPC_PRED_BIT_UNSET
Definition: PPCPredicates.h:52
PPC_PRED_UN
@ PPC_PRED_UN
Definition: PPCPredicates.h:30
PPC_PRED_LT
@ PPC_PRED_LT
Definition: PPCPredicates.h:24
PPC_PRED_NU
@ PPC_PRED_NU
Definition: PPCPredicates.h:31
ppc_predicate
ppc_predicate
Definition: PPCPredicates.h:23
PPC_PRED_NE
@ PPC_PRED_NE
Definition: PPCPredicates.h:29
PPC_PRED_BIT_SET
@ PPC_PRED_BIT_SET
Definition: PPCPredicates.h:51
PPC_PRED_LT_MINUS
@ PPC_PRED_LT_MINUS
Definition: PPCPredicates.h:32
PPC_PRED_LE_MINUS
@ PPC_PRED_LE_MINUS
Definition: PPCPredicates.h:33
PPC_PRED_NE_PLUS
@ PPC_PRED_NE_PLUS
Definition: PPCPredicates.h:45
PPC_PRED_GT_PLUS
@ PPC_PRED_GT_PLUS
Definition: PPCPredicates.h:44
PPC_PRED_UN_MINUS
@ PPC_PRED_UN_MINUS
Definition: PPCPredicates.h:38
PPC_PRED_EQ_MINUS
@ PPC_PRED_EQ_MINUS
Definition: PPCPredicates.h:34
PPC_PRED_GT_MINUS
@ PPC_PRED_GT_MINUS
Definition: PPCPredicates.h:36
PPC_PRED_NU_PLUS
@ PPC_PRED_NU_PLUS
Definition: PPCPredicates.h:47
PPC_PRED_NE_MINUS
@ PPC_PRED_NE_MINUS
Definition: PPCPredicates.h:37
PPC_PRED_GT
@ PPC_PRED_GT
Definition: PPCPredicates.h:28
PPC_PRED_EQ_PLUS
@ PPC_PRED_EQ_PLUS
Definition: PPCPredicates.h:42
PPC_PRED_UN_PLUS
@ PPC_PRED_UN_PLUS
Definition: PPCPredicates.h:46
PPC_PRED_LE
@ PPC_PRED_LE
Definition: PPCPredicates.h:25
PPC_PRED_LT_PLUS
@ PPC_PRED_LT_PLUS
Definition: PPCPredicates.h:40
PPC_PRED_GE
@ PPC_PRED_GE
Definition: PPCPredicates.h:27
InvertPredicate
ppc_predicate InvertPredicate(ppc_predicate Opcode)
Invert the specified predicate. != -> ==, < -> >=.
PPC_PRED_GE_MINUS
@ PPC_PRED_GE_MINUS
Definition: PPCPredicates.h:35
PPC_PRED_LE_PLUS
@ PPC_PRED_LE_PLUS
Definition: PPCPredicates.h:41
PPC_PRED_GE_PLUS
@ PPC_PRED_GE_PLUS
Definition: PPCPredicates.h:43
PPC_PRED_EQ
@ PPC_PRED_EQ
Definition: PPCPredicates.h:26
ppc.h


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:54