… | |
… | |
101 | #else |
101 | #else |
102 | return 0; |
102 | return 0; |
103 | #endif |
103 | #endif |
104 | } |
104 | } |
105 | |
105 | |
106 | =item ECB_INLINE |
106 | =item ecb_inline |
107 | |
107 | |
108 | This is not actually an attribute, but you use it like one. It expands |
108 | This is not actually an attribute, but you use it like one. It expands |
109 | either to C<static inline> or to just C<static>, if inline isn't |
109 | either to C<static inline> or to just C<static>, if inline isn't |
110 | supported. It should be used to declare functions that should be inlined, |
110 | supported. It should be used to declare functions that should be inlined, |
111 | for code size or speed reasons. |
111 | for code size or speed reasons. |
112 | |
112 | |
113 | Example: inline this function, it surely will reduce codesize. |
113 | Example: inline this function, it surely will reduce codesize. |
114 | |
114 | |
115 | ECB_INLINE int |
115 | ecb_inline int |
116 | negmul (int a, int b) |
116 | negmul (int a, int b) |
117 | { |
117 | { |
118 | return - (a * b); |
118 | return - (a * b); |
119 | } |
119 | } |
120 | |
120 | |