Mercurial > hg > octave-lyh
comparison src/oct-stream.cc @ 7789:82be108cc558
First attempt at single precision tyeps
* * *
corrections to qrupdate single precision routines
* * *
prefer demotion to single over promotion to double
* * *
Add single precision support to log2 function
* * *
Trivial PROJECT file update
* * *
Cache optimized hermitian/transpose methods
* * *
Add tests for tranpose/hermitian and ChangeLog entry for new transpose code
author | David Bateman <dbateman@free.fr> |
---|---|
date | Sun, 27 Apr 2008 22:34:17 +0200 |
parents | 932b0cf51834 |
children | 89dd4531b26a |
comparison
equal
deleted
inserted
replaced
7788:45f5faba05a2 | 7789:82be108cc558 |
---|---|
3217 INSTANTIATE_DO_READ (uint16NDArray); | 3217 INSTANTIATE_DO_READ (uint16NDArray); |
3218 INSTANTIATE_DO_READ (int32NDArray); | 3218 INSTANTIATE_DO_READ (int32NDArray); |
3219 INSTANTIATE_DO_READ (uint32NDArray); | 3219 INSTANTIATE_DO_READ (uint32NDArray); |
3220 INSTANTIATE_DO_READ (int64NDArray); | 3220 INSTANTIATE_DO_READ (int64NDArray); |
3221 INSTANTIATE_DO_READ (uint64NDArray); | 3221 INSTANTIATE_DO_READ (uint64NDArray); |
3222 // INSTANTIATE_DO_READ (floatNDArray); | 3222 INSTANTIATE_DO_READ (FloatNDArray); |
3223 INSTANTIATE_DO_READ (NDArray); | 3223 INSTANTIATE_DO_READ (NDArray); |
3224 INSTANTIATE_DO_READ (charNDArray); | 3224 INSTANTIATE_DO_READ (charNDArray); |
3225 INSTANTIATE_DO_READ (boolNDArray); | 3225 INSTANTIATE_DO_READ (boolNDArray); |
3226 | 3226 |
3227 typedef octave_value (*read_fptr) (octave_stream&, octave_idx_type, octave_idx_type, octave_idx_type, octave_idx_type, bool, | 3227 typedef octave_value (*read_fptr) (octave_stream&, octave_idx_type, octave_idx_type, octave_idx_type, octave_idx_type, bool, |
3268 FILL_TABLE_ROW (oct_data_conv::dt_uint16, uint16NDArray); | 3268 FILL_TABLE_ROW (oct_data_conv::dt_uint16, uint16NDArray); |
3269 FILL_TABLE_ROW (oct_data_conv::dt_int32, int32NDArray); | 3269 FILL_TABLE_ROW (oct_data_conv::dt_int32, int32NDArray); |
3270 FILL_TABLE_ROW (oct_data_conv::dt_uint32, uint32NDArray); | 3270 FILL_TABLE_ROW (oct_data_conv::dt_uint32, uint32NDArray); |
3271 FILL_TABLE_ROW (oct_data_conv::dt_int64, int64NDArray); | 3271 FILL_TABLE_ROW (oct_data_conv::dt_int64, int64NDArray); |
3272 FILL_TABLE_ROW (oct_data_conv::dt_uint64, uint64NDArray); | 3272 FILL_TABLE_ROW (oct_data_conv::dt_uint64, uint64NDArray); |
3273 // FIXME -- the following line allows things like int8=>single | 3273 FILL_TABLE_ROW (oct_data_conv::dt_single, FloatNDArray); |
3274 // to work, but they will actually return a double value. We | |
3275 // need a floatNDArray for this to work properly. | |
3276 FILL_TABLE_ROW (oct_data_conv::dt_single, NDArray); | |
3277 FILL_TABLE_ROW (oct_data_conv::dt_double, NDArray); | 3274 FILL_TABLE_ROW (oct_data_conv::dt_double, NDArray); |
3278 FILL_TABLE_ROW (oct_data_conv::dt_char, charNDArray); | 3275 FILL_TABLE_ROW (oct_data_conv::dt_char, charNDArray); |
3279 FILL_TABLE_ROW (oct_data_conv::dt_schar, charNDArray); | 3276 FILL_TABLE_ROW (oct_data_conv::dt_schar, charNDArray); |
3280 FILL_TABLE_ROW (oct_data_conv::dt_uchar, charNDArray); | 3277 FILL_TABLE_ROW (oct_data_conv::dt_uchar, charNDArray); |
3281 FILL_TABLE_ROW (oct_data_conv::dt_logical, boolNDArray); | 3278 FILL_TABLE_ROW (oct_data_conv::dt_logical, boolNDArray); |
3604 oct_data_conv::data_type, | 3601 oct_data_conv::data_type, |
3605 octave_idx_type, oct_mach_info::float_format); | 3602 octave_idx_type, oct_mach_info::float_format); |
3606 | 3603 |
3607 template octave_idx_type | 3604 template octave_idx_type |
3608 octave_stream::write (const Array<double>&, octave_idx_type, | 3605 octave_stream::write (const Array<double>&, octave_idx_type, |
3606 oct_data_conv::data_type, | |
3607 octave_idx_type, oct_mach_info::float_format); | |
3608 | |
3609 template octave_idx_type | |
3610 octave_stream::write (const Array<float>&, octave_idx_type, | |
3609 oct_data_conv::data_type, | 3611 oct_data_conv::data_type, |
3610 octave_idx_type, oct_mach_info::float_format); | 3612 octave_idx_type, oct_mach_info::float_format); |
3611 | 3613 |
3612 template octave_idx_type | 3614 template octave_idx_type |
3613 octave_stream::write (const Array<octave_int8>&, octave_idx_type, | 3615 octave_stream::write (const Array<octave_int8>&, octave_idx_type, |