| 1204 | } |
| 1205 | |
| 1206 | static bool IsVectorReferenceParameter( const Symbol* functionSymbol, size_t paramIndex, Type& paramType, AddressSpace& addressSpace ) |
| 1207 | { |
| 1208 | if( functionSymbol && functionSymbol->definition ) |
| 1209 | { |
| 1210 | auto params = functionSymbol->definition->GetChild( 0 ); |
| 1211 | auto param = params->GetChildOrNull( paramIndex ); |
| 1212 | if( param && param->GetToken() && param->GetToken()->type != OP_IN && param->GetType().IsScalarOrVector() ) |
| 1213 | { |
| 1214 | paramType = param->GetType(); |
| 1215 | addressSpace = AddressSpace::Thread; |
| 1216 | if( param->GetSymbol() ) |
| 1217 | { |
| 1218 | addressSpace = param->GetSymbol()->addressSpace; |
| 1219 | } |
| 1220 | return true; |
| 1221 | } |
| 1222 | } |
| 1223 | return false; |
| 1224 | } |
| 1225 | |
| 1226 | static const char* MSLAddressMode( uint8_t addressMode ) |
| 1227 | { |
no test coverage detected