1c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// This file is part of Eigen, a lightweight C++ template library 2c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// for linear algebra. 3c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// 4c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// Copyright (C) 2011 Benoit Jacob <jacob.benoit.1@gmail.com> 5c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// 6c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// This Source Code Form is subject to the terms of the Mozilla 7c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// Public License v. 2.0. If a copy of the MPL was not distributed 8c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath// with this file, You can obtain one at http://mozilla.org/MPL/2.0/. 9c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 10c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath#include "main.h" 11c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 12c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathfloat *ptr; 13c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathconst float *const_ptr; 14c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 15c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathtemplate<typename PlainObjectType, 16c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath bool IsDynamicSize = PlainObjectType::SizeAtCompileTime == Dynamic, 17c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath bool IsVector = PlainObjectType::IsVectorAtCompileTime 18c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath> 19c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathstruct mapstaticmethods_impl {}; 20c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 21c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathtemplate<typename PlainObjectType, bool IsVector> 22c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathstruct mapstaticmethods_impl<PlainObjectType, false, IsVector> 23c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 24c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath static void run(const PlainObjectType& m) 25c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath { 26c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath mapstaticmethods_impl<PlainObjectType, true, IsVector>::run(m); 27c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 28c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath int i = internal::random<int>(2,5), j = internal::random<int>(2,5); 29c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 30c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr).setZero(); 31c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr).setZero(); 32c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr).sum(); 33c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr).sum(); 34c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 35c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, InnerStride<>(i)).setZero(); 36c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, InnerStride<>(i)).setZero(); 37c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, InnerStride<>(i)).sum(); 38c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, InnerStride<>(i)).sum(); 39c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 40c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, InnerStride<2>()).setZero(); 41c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, InnerStride<3>()).setZero(); 42c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, InnerStride<4>()).sum(); 43c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, InnerStride<5>()).sum(); 44c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 45c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, OuterStride<>(i)).setZero(); 46c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, OuterStride<>(i)).setZero(); 47c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, OuterStride<>(i)).sum(); 48c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, OuterStride<>(i)).sum(); 49c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 50c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, OuterStride<2>()).setZero(); 51c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, OuterStride<3>()).setZero(); 52c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, OuterStride<4>()).sum(); 53c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, OuterStride<5>()).sum(); 54c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 55c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, Stride<Dynamic, Dynamic>(i,j)).setZero(); 56c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, Stride<2,Dynamic>(2,i)).setZero(); 57c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, Stride<Dynamic,3>(i,3)).sum(); 58c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, Stride<Dynamic, Dynamic>(i,j)).sum(); 59c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 60c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, Stride<2,3>()).setZero(); 61c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, Stride<3,4>()).setZero(); 62c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, Stride<2,4>()).sum(); 63c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, Stride<5,3>()).sum(); 64c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath } 65c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath}; 66c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 67c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathtemplate<typename PlainObjectType> 68c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathstruct mapstaticmethods_impl<PlainObjectType, true, false> 69c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 70c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath static void run(const PlainObjectType& m) 71c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath { 72c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath int rows = m.rows(), cols = m.cols(); 73c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 74c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath int i = internal::random<int>(2,5), j = internal::random<int>(2,5); 75c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 76c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols).setZero(); 77c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols).setZero(); 78c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols).sum(); 79c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols).sum(); 80c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 81c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, InnerStride<>(i)).setZero(); 82c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, InnerStride<>(i)).setZero(); 83c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, InnerStride<>(i)).sum(); 84c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, InnerStride<>(i)).sum(); 85c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 86c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, InnerStride<2>()).setZero(); 87c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, InnerStride<3>()).setZero(); 88c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, InnerStride<4>()).sum(); 89c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, InnerStride<5>()).sum(); 90c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 91c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, OuterStride<>(i)).setZero(); 92c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, OuterStride<>(i)).setZero(); 93c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, OuterStride<>(i)).sum(); 94c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, OuterStride<>(i)).sum(); 95c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 96c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, OuterStride<2>()).setZero(); 97c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, OuterStride<3>()).setZero(); 98c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, OuterStride<4>()).sum(); 99c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, OuterStride<5>()).sum(); 100c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 101c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, Stride<Dynamic, Dynamic>(i,j)).setZero(); 102c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, Stride<2,Dynamic>(2,i)).setZero(); 103c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, Stride<Dynamic,3>(i,3)).sum(); 104c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, Stride<Dynamic, Dynamic>(i,j)).sum(); 105c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 106c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, rows, cols, Stride<2,3>()).setZero(); 107c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, rows, cols, Stride<3,4>()).setZero(); 108c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, rows, cols, Stride<2,4>()).sum(); 109c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, rows, cols, Stride<5,3>()).sum(); 110c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath } 111c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath}; 112c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 113c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathtemplate<typename PlainObjectType> 114c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathstruct mapstaticmethods_impl<PlainObjectType, true, true> 115c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 116c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath static void run(const PlainObjectType& v) 117c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath { 118c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath int size = v.size(); 119c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 120c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath int i = internal::random<int>(2,5); 121c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 122c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, size).setZero(); 123c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, size).setZero(); 124c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, size).sum(); 125c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, size).sum(); 126c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 127c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, size, InnerStride<>(i)).setZero(); 128c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, size, InnerStride<>(i)).setZero(); 129c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, size, InnerStride<>(i)).sum(); 130c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, size, InnerStride<>(i)).sum(); 131c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 132c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(ptr, size, InnerStride<2>()).setZero(); 133c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(ptr, size, InnerStride<3>()).setZero(); 134c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::Map(const_ptr, size, InnerStride<4>()).sum(); 135c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath PlainObjectType::MapAligned(const_ptr, size, InnerStride<5>()).sum(); 136c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath } 137c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath}; 138c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 139c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathtemplate<typename PlainObjectType> 140c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathvoid mapstaticmethods(const PlainObjectType& m) 141c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 142c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath mapstaticmethods_impl<PlainObjectType>::run(m); 143c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath VERIFY(true); // just to avoid 'unused function' warning 144c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath} 145c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 146c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathvoid test_mapstaticmethods() 147c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 148c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath ptr = internal::aligned_new<float>(1000); 149c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath for(int i = 0; i < 1000; i++) ptr[i] = float(i); 150c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 151c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath const_ptr = ptr; 152c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 153c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_1(( mapstaticmethods(Matrix<float, 1, 1>()) )); 154c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_1(( mapstaticmethods(Vector2f()) )); 155c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_2(( mapstaticmethods(Vector3f()) )); 156c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_2(( mapstaticmethods(Matrix2f()) )); 157c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_3(( mapstaticmethods(Matrix4f()) )); 158c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_3(( mapstaticmethods(Array4f()) )); 159c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_4(( mapstaticmethods(Array3f()) )); 160c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_4(( mapstaticmethods(Array33f()) )); 161c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_5(( mapstaticmethods(Array44f()) )); 162c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_5(( mapstaticmethods(VectorXf(1)) )); 163c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_5(( mapstaticmethods(VectorXf(8)) )); 164c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_6(( mapstaticmethods(MatrixXf(1,1)) )); 165c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_6(( mapstaticmethods(MatrixXf(5,7)) )); 166c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_7(( mapstaticmethods(ArrayXf(1)) )); 167c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_7(( mapstaticmethods(ArrayXf(5)) )); 168c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_8(( mapstaticmethods(ArrayXXf(1,1)) )); 169c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath CALL_SUBTEST_8(( mapstaticmethods(ArrayXXf(8,6)) )); 170c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 171c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath internal::aligned_delete(ptr, 1000); 172c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath} 173c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 174