| 117 | } |
| 118 | |
| 119 | void GLSLCompiler::translateOperator(int op) { |
| 120 | switch (op) |
| 121 | { |
| 122 | case glsl::kOperator_increment: m_gen.Function.Increment(); break; |
| 123 | case glsl::kOperator_decrement: m_gen.Function.Decrement(); break; |
| 124 | case glsl::kOperator_bit_not: m_gen.Function.BitNot(); break; |
| 125 | case glsl::kOperator_logical_not: m_gen.Function.Not(); break; |
| 126 | case glsl::kOperator_multiply: m_gen.Function.Multiply(); break; |
| 127 | case glsl::kOperator_divide: m_gen.Function.Divide(); break; |
| 128 | case glsl::kOperator_modulus: m_gen.Function.Modulo(); break; |
| 129 | case glsl::kOperator_plus: m_gen.Function.Add(); break; |
| 130 | case glsl::kOperator_minus: m_gen.Function.Subtract(); break; |
| 131 | case glsl::kOperator_shift_left: m_gen.Function.BitLeftShift(); break; |
| 132 | case glsl::kOperator_shift_right: m_gen.Function.BitRightShift(); break; |
| 133 | case glsl::kOperator_less: m_gen.Function.Less(); break; |
| 134 | case glsl::kOperator_greater: m_gen.Function.Greater(); break; |
| 135 | case glsl::kOperator_less_equal: m_gen.Function.LessEqual(); break; |
| 136 | case glsl::kOperator_greater_equal: m_gen.Function.GreaterEqual(); break; |
| 137 | case glsl::kOperator_equal: m_gen.Function.Equal(); break; |
| 138 | case glsl::kOperator_not_equal: m_gen.Function.NotEqual(); break; |
| 139 | case glsl::kOperator_bit_and: m_gen.Function.BitAnd(); break; |
| 140 | case glsl::kOperator_bit_xor: m_gen.Function.BitXor(); break; |
| 141 | case glsl::kOperator_bit_or: m_gen.Function.BitOr(); break; |
| 142 | case glsl::kOperator_logical_and: m_gen.Function.BoolAnd(); break; |
| 143 | case glsl::kOperator_logical_or: m_gen.Function.BoolOr(); break; |
| 144 | case glsl::kOperator_assign: m_gen.Function.Assign(); break; |
| 145 | |
| 146 | default: |
| 147 | break; |
| 148 | } |
| 149 | } |
| 150 | |
| 151 | void GLSLCompiler::translateIntConstant(glsl::astIntConstant *expression) { |
| 152 | m_gen.Function.PushStack((int)expression->value); |