* xmlXPathCompSwap: * @comp: the compiled expression * @op: operation index * * Swaps 2 operations in the compiled expression */
| 1033 | * Swaps 2 operations in the compiled expression |
| 1034 | */ |
| 1035 | static void |
| 1036 | xmlXPathCompSwap(xmlXPathStepOpPtr op) { |
| 1037 | int tmp; |
| 1038 | |
| 1039 | #ifndef LIBXML_THREAD_ENABLED |
| 1040 | /* |
| 1041 | * Since this manipulates possibly shared variables, this is |
| 1042 | * disabled if one detects that the library is used in a multithreaded |
| 1043 | * application |
| 1044 | */ |
| 1045 | if (xmlXPathDisableOptimizer) |
| 1046 | return; |
| 1047 | #endif |
| 1048 | |
| 1049 | tmp = op->ch1; |
| 1050 | op->ch1 = op->ch2; |
| 1051 | op->ch2 = tmp; |
| 1052 | } |
| 1053 | |
| 1054 | #define PUSH_FULL_EXPR(op, op1, op2, val, val2, val3, val4, val5) \ |
| 1055 | xmlXPathCompExprAdd(ctxt, (op1), (op2), \ |
no outgoing calls
no test coverage detected