divide.pass.cpp revision f5256e16dfc425c1d466f6308d4026d529ce9e0b
156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks//===----------------------------------------------------------------------===// 256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// 356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// The LLVM Compiler Infrastructure 456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// 556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// This file is distributed under the University of Illinois Open Source 656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// License. See LICENSE.TXT for details. 756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// 856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks//===----------------------------------------------------------------------===// 956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 1056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// <valarray> 1156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 1256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// template <class T> class gslice_array 1356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 1456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// void operator/= (const valarray<value_type>& v) const; 1556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 1656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#include <valarray> 1756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#include <cassert> 1856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 1956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparksint main() 2056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{ 2156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks int a1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 2256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 2356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 2456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 36, 37, 38, 39, 40}; 2556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks int a2[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 2656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24}; 2756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks std::valarray<int> v1(a1, sizeof(a1)/sizeof(a1[0])); 2856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks std::valarray<int> v2(a2, sizeof(a2)/sizeof(a2[0])); 2956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks std::size_t sz[] = {2, 4, 3}; 3056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks std::size_t st[] = {19, 4, 1}; 3156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks typedef std::valarray<std::size_t> sizes; 3256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks typedef std::valarray<std::size_t> strides; 3356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks v1[std::gslice(3, sizes(sz, sizeof(sz)/sizeof(sz[0])), 3456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks strides(st, sizeof(st)/sizeof(st[0])))] /= v2; 357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1.size() == 41); 367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 0] == 0); 377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 1] == 1); 387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 2] == 2); 397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 3] == 3); 407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 4] == 2); 417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 5] == 1); 427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 6] == 6); 437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 7] == 1); 447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 8] == 1); 457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[ 9] == 1); 467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project assert(v1[10] == 10); 4756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[11] == 1); 4856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[12] == 1); 4956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[13] == 1); 5056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[14] == 14); 5156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[15] == 1); 5256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[16] == 1); 5356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[17] == 1); 5456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[18] == 18); 5556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[19] == 19); 5656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[20] == 20); 5756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[21] == 21); 5856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[22] == 1); 5956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[23] == 1); 6056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[24] == 1); 6156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[25] == 25); 6256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[26] == 1); 6356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[27] == 1); 6456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[28] == 1); 6556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[29] == 29); 6656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[30] == 1); 6756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[31] == 1); 6856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[32] == 1); 6956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[33] == 33); 7056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[34] == 1); 7156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[35] == 1); 7256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[36] == 1); 7356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[37] == 37); 7456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[38] == 38); 7556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[39] == 39); 7656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks assert(v1[40] == 40); 7756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} 7856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks