| 850 | |
| 851 | template <typename T> |
| 852 | inline port::StatusOr<DeviceMemory<T>> StreamExecutor::GetSymbol( |
| 853 | const string &symbol_name, ModuleHandle module_handle) { |
| 854 | port::StatusOr<DeviceMemoryBase> untyped_symbol = |
| 855 | GetUntypedSymbol(symbol_name, module_handle); |
| 856 | if (!untyped_symbol.ok()) { |
| 857 | return untyped_symbol.status(); |
| 858 | } |
| 859 | return DeviceMemory<T>(untyped_symbol.ValueOrDie()); |
| 860 | } |
| 861 | |
| 862 | template <typename ElemT> |
| 863 | ScopedDeviceMemory<ElemT>::ScopedDeviceMemory(StreamExecutor *parent, |