• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2008 Nicolai Haehnle.
3  *
4  * All Rights Reserved.
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining
7  * a copy of this software and associated documentation files (the
8  * "Software"), to deal in the Software without restriction, including
9  * without limitation the rights to use, copy, modify, merge, publish,
10  * distribute, sublicense, and/or sell copies of the Software, and to
11  * permit persons to whom the Software is furnished to do so, subject to
12  * the following conditions:
13  *
14  * The above copyright notice and this permission notice (including the
15  * next paragraph) shall be included in all copies or substantial
16  * portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21  * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
22  * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23  * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25  *
26  */
27 
28 #ifndef __RADEON_PROGRAM_ALU_H_
29 #define __RADEON_PROGRAM_ALU_H_
30 
31 #include "radeon_program.h"
32 
33 int radeonTransformALU(
34 	struct radeon_compiler * c,
35 	struct rc_instruction * inst,
36 	void*);
37 
38 int r300_transform_vertex_alu(
39 	struct radeon_compiler * c,
40 	struct rc_instruction * inst,
41 	void*);
42 
43 int r300_transform_trig_simple(
44 	struct radeon_compiler * c,
45 	struct rc_instruction * inst,
46 	void*);
47 
48 int radeonTransformTrigScale(
49 	struct radeon_compiler * c,
50 	struct rc_instruction * inst,
51 	void*);
52 
53 int r300_transform_trig_scale_vertex(
54 	struct radeon_compiler *c,
55 	struct rc_instruction *inst,
56 	void*);
57 
58 int radeonTransformDeriv(
59 	struct radeon_compiler * c,
60 	struct rc_instruction * inst,
61 	void*);
62 
63 void rc_transform_KILL(struct radeon_compiler * c,
64 		       void *user);
65 
66 int rc_force_output_alpha_to_one(struct radeon_compiler *c,
67 				 struct rc_instruction *inst, void *data);
68 
69 #endif /* __RADEON_PROGRAM_ALU_H_ */
70