1# Copyright (C) 2016 The Android Open Source Project 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15'''Module that contains the test TestAllocationDump2Cpp.''' 16 17from __future__ import absolute_import 18 19from harness.test_base_remote import TestBaseRemote 20 21 22class TestAllocationDump2Cpp(TestBaseRemote): 23 '''Tests printing the contents of allocations in an NDK app.''' 24 25 bundle_target = { 26 'cpp': 'CppAllocations' 27 } 28 29 def test_case(self): 30 '''Run the lldb commands that are being tested. 31 32 Raises: 33 TestFail: One of the lldb commands did not provide the expected 34 output. 35 ''' 36 # pylint: disable=line-too-long 37 self.try_command('language renderscript kernel breakpoint all enable', 38 ['Breakpoints will be set on all kernels']) 39 40 self.try_command('process continue', 41 ['resuming', 42 'stopped', 43 'stop reason = breakpoint']) 44 45 self.try_command('breakpoint del 1', 46 ['1 breakpoints deleted']) 47 48 # Hit second kernel 49 self.try_command('process continue', 50 ['resuming', 51 'stopped', 52 'stop reason = breakpoint']) 53 54 # uchar 55 self.try_command('language renderscript allocation dump 20', 56 ['(0, 0, 0) = 0', 57 '(1, 0, 0) = 1', 58 '(2, 0, 0) = 2', 59 '(3, 0, 0) = 3', 60 '(4, 0, 0) = 4', 61 '(5, 0, 0) = 5', 62 '(6, 0, 0) = 6', 63 '(7, 0, 0) = 7', 64 '(8, 0, 0) = 8', 65 '(9, 0, 0) = 9', 66 '(10, 0, 0) = 10', 67 '(11, 0, 0) = 11', 68 '(12, 0, 0) = 12', 69 '(13, 0, 0) = 13', 70 '(14, 0, 0) = 14', 71 '(15, 0, 0) = 15', 72 '(16, 0, 0) = 16', 73 '(17, 0, 0) = 17', 74 '(18, 0, 0) = 18', 75 '(19, 0, 0) = 19', 76 '(20, 0, 0) = 20', 77 '(21, 0, 0) = 21', 78 '(22, 0, 0) = 22', 79 '(23, 0, 0) = 23']) 80 81 # uchar2 82 self.try_command('language renderscript allocation dump 21', 83 ['(0, 0, 0) = {0x00 0x01}', 84 '(1, 0, 0) = {0x02 0x03}', 85 '(0, 1, 0) = {0x04 0x05}', 86 '(1, 1, 0) = {0x06 0x07}', 87 '(0, 2, 0) = {0x08 0x09}', 88 '(1, 2, 0) = {0x0a 0x0b}', 89 '(0, 3, 0) = {0x0c 0x0d}', 90 '(1, 3, 0) = {0x0e 0x0f}', 91 '(0, 4, 0) = {0x10 0x11}', 92 '(1, 4, 0) = {0x12 0x13}', 93 '(0, 5, 0) = {0x14 0x15}', 94 '(1, 5, 0) = {0x16 0x17}']) 95 96 # uchar3 97 self.try_command('language renderscript allocation dump 22', 98 ['(0, 0, 0) = {0x00 0x01 0x02}', 99 '(1, 0, 0) = {0x04 0x05 0x06}', 100 '(2, 0, 0) = {0x08 0x09 0x0a}', 101 '(3, 0, 0) = {0x0c 0x0d 0x0e}', 102 '(4, 0, 0) = {0x10 0x11 0x12}', 103 '(5, 0, 0) = {0x14 0x15 0x16}']) 104 105 # uchar4 106 self.try_command('language renderscript allocation dump 23', 107 ['(0, 0, 0) = {0x00 0x01 0x02 0x03}', 108 '(1, 0, 0) = {0x04 0x05 0x06 0x07}', 109 '(2, 0, 0) = {0x08 0x09 0x0a 0x0b}', 110 '(3, 0, 0) = {0x0c 0x0d 0x0e 0x0f}', 111 '(4, 0, 0) = {0x10 0x11 0x12 0x13}', 112 '(5, 0, 0) = {0x14 0x15 0x16 0x17}']) 113 114 # ushort 115 self.try_command('language renderscript allocation dump 24', 116 ['(0, 0, 0) = 0', 117 '(1, 0, 0) = 1', 118 '(2, 0, 0) = 2', 119 '(3, 0, 0) = 3', 120 '(4, 0, 0) = 4', 121 '(5, 0, 0) = 5', 122 '(6, 0, 0) = 6', 123 '(7, 0, 0) = 7', 124 '(8, 0, 0) = 8', 125 '(9, 0, 0) = 9', 126 '(10, 0, 0) = 10', 127 '(11, 0, 0) = 11', 128 '(12, 0, 0) = 12', 129 '(13, 0, 0) = 13', 130 '(14, 0, 0) = 14', 131 '(15, 0, 0) = 15', 132 '(16, 0, 0) = 16', 133 '(17, 0, 0) = 17', 134 '(18, 0, 0) = 18', 135 '(19, 0, 0) = 19', 136 '(20, 0, 0) = 20', 137 '(21, 0, 0) = 21', 138 '(22, 0, 0) = 22', 139 '(23, 0, 0) = 23']) 140 141 # ushort2 142 self.try_command('language renderscript allocation dump 25', 143 ['(0, 0, 0) = {0x0000 0x0001}', 144 '(1, 0, 0) = {0x0002 0x0003}', 145 '(2, 0, 0) = {0x0004 0x0005}', 146 '(3, 0, 0) = {0x0006 0x0007}', 147 '(4, 0, 0) = {0x0008 0x0009}', 148 '(5, 0, 0) = {0x000a 0x000b}', 149 '(6, 0, 0) = {0x000c 0x000d}', 150 '(7, 0, 0) = {0x000e 0x000f}', 151 '(8, 0, 0) = {0x0010 0x0011}', 152 '(9, 0, 0) = {0x0012 0x0013}', 153 '(10, 0, 0) = {0x0014 0x0015}', 154 '(11, 0, 0) = {0x0016 0x0017}']) 155 156 # ushort3 157 self.try_command('language renderscript allocation dump 26', 158 ['(0, 0, 0) = {0x0000 0x0001 0x0002}', 159 '(0, 1, 0) = {0x0004 0x0005 0x0006}', 160 '(0, 2, 0) = {0x0008 0x0009 0x000a}', 161 '(0, 3, 0) = {0x000c 0x000d 0x000e}', 162 '(0, 4, 0) = {0x0010 0x0011 0x0012}', 163 '(0, 5, 0) = {0x0014 0x0015 0x0016}']) 164 165 # ushort4 166 self.try_command('language renderscript allocation dump 27', 167 ['(0, 0, 0) = {0x0000 0x0001 0x0002 0x0003}', 168 '(1, 0, 0) = {0x0004 0x0005 0x0006 0x0007}', 169 '(2, 0, 0) = {0x0008 0x0009 0x000a 0x000b}', 170 '(3, 0, 0) = {0x000c 0x000d 0x000e 0x000f}', 171 '(4, 0, 0) = {0x0010 0x0011 0x0012 0x0013}', 172 '(5, 0, 0) = {0x0014 0x0015 0x0016 0x0017}']) 173 174 # uint 175 self.try_command('language renderscript allocation dump 28', 176 ['(0, 0, 0) = 0', 177 '(1, 0, 0) = 1', 178 '(2, 0, 0) = 2', 179 '(3, 0, 0) = 3', 180 '(4, 0, 0) = 4', 181 '(5, 0, 0) = 5', 182 '(6, 0, 0) = 6', 183 '(7, 0, 0) = 7', 184 '(8, 0, 0) = 8', 185 '(9, 0, 0) = 9', 186 '(10, 0, 0) = 10', 187 '(11, 0, 0) = 11', 188 '(12, 0, 0) = 12', 189 '(13, 0, 0) = 13', 190 '(14, 0, 0) = 14', 191 '(15, 0, 0) = 15', 192 '(16, 0, 0) = 16', 193 '(17, 0, 0) = 17', 194 '(18, 0, 0) = 18', 195 '(19, 0, 0) = 19', 196 '(20, 0, 0) = 20', 197 '(21, 0, 0) = 21', 198 '(22, 0, 0) = 22', 199 '(23, 0, 0) = 23']) 200 201 # uint2 202 self.try_command('language renderscript allocation dump 29', 203 ['(0, 0, 0) = {0x00000000 0x00000001}', 204 '(1, 0, 0) = {0x00000002 0x00000003}', 205 '(2, 0, 0) = {0x00000004 0x00000005}', 206 '(3, 0, 0) = {0x00000006 0x00000007}', 207 '(4, 0, 0) = {0x00000008 0x00000009}', 208 '(5, 0, 0) = {0x0000000a 0x0000000b}', 209 '(6, 0, 0) = {0x0000000c 0x0000000d}', 210 '(7, 0, 0) = {0x0000000e 0x0000000f}', 211 '(8, 0, 0) = {0x00000010 0x00000011}', 212 '(9, 0, 0) = {0x00000012 0x00000013}', 213 '(10, 0, 0) = {0x00000014 0x00000015}', 214 '(11, 0, 0) = {0x00000016 0x00000017}']) 215 216 # uint3 217 self.try_command('language renderscript allocation dump 30', 218 ['(0, 0, 0) = {0x00000000 0x00000001 0x00000002}', 219 '(1, 0, 0) = {0x00000004 0x00000005 0x00000006}', 220 '(2, 0, 0) = {0x00000008 0x00000009 0x0000000a}', 221 '(3, 0, 0) = {0x0000000c 0x0000000d 0x0000000e}', 222 '(4, 0, 0) = {0x00000010 0x00000011 0x00000012}', 223 '(5, 0, 0) = {0x00000014 0x00000015 0x00000016}']) 224 225 # uint4 226 self.try_command('language renderscript allocation dump 31', 227 ['(0, 0, 0) = {0x00000000 0x00000001 0x00000002 0x00000003}', 228 '(0, 0, 1) = {0x00000004 0x00000005 0x00000006 0x00000007}', 229 '(0, 0, 2) = {0x00000008 0x00000009 0x0000000a 0x0000000b}', 230 '(0, 0, 3) = {0x0000000c 0x0000000d 0x0000000e 0x0000000f}', 231 '(0, 0, 4) = {0x00000010 0x00000011 0x00000012 0x00000013}', 232 '(0, 0, 5) = {0x00000014 0x00000015 0x00000016 0x00000017}']) 233 234 # ulong 235 self.try_command('language renderscript allocation dump 32', 236 ['(0, 0, 0) = 0', 237 '(1, 0, 0) = 1', 238 '(2, 0, 0) = 2', 239 '(3, 0, 0) = 3', 240 '(0, 1, 0) = 4', 241 '(1, 1, 0) = 5', 242 '(2, 1, 0) = 6', 243 '(3, 1, 0) = 7', 244 '(0, 2, 0) = 8', 245 '(1, 2, 0) = 9', 246 '(2, 2, 0) = 10', 247 '(3, 2, 0) = 11', 248 '(0, 0, 1) = 12', 249 '(1, 0, 1) = 13', 250 '(2, 0, 1) = 14', 251 '(3, 0, 1) = 15', 252 '(0, 1, 1) = 16', 253 '(1, 1, 1) = 17', 254 '(2, 1, 1) = 18', 255 '(3, 1, 1) = 19', 256 '(0, 2, 1) = 20', 257 '(1, 2, 1) = 21', 258 '(2, 2, 1) = 22', 259 '(3, 2, 1) = 23']) 260 261 # ulong2 262 self.try_command('language renderscript allocation dump 33', 263 ['(0, 0, 0) = {0x0000000000000000 0x0000000000000001}', 264 '(1, 0, 0) = {0x0000000000000002 0x0000000000000003}', 265 '(2, 0, 0) = {0x0000000000000004 0x0000000000000005}', 266 '(3, 0, 0) = {0x0000000000000006 0x0000000000000007}', 267 '(4, 0, 0) = {0x0000000000000008 0x0000000000000009}', 268 '(5, 0, 0) = {0x000000000000000a 0x000000000000000b}', 269 '(6, 0, 0) = {0x000000000000000c 0x000000000000000d}', 270 '(7, 0, 0) = {0x000000000000000e 0x000000000000000f}', 271 '(8, 0, 0) = {0x0000000000000010 0x0000000000000011}', 272 '(9, 0, 0) = {0x0000000000000012 0x0000000000000013}', 273 '(10, 0, 0) = {0x0000000000000014 0x0000000000000015}', 274 '(11, 0, 0) = {0x0000000000000016 0x0000000000000017}']) 275 276 # ulong3 277 self.try_command('language renderscript allocation dump 34', 278 ['(0, 0, 0) = {0x0000000000000000 0x0000000000000001 0x0000000000000002}', 279 '(1, 0, 0) = {0x0000000000000004 0x0000000000000005 0x0000000000000006}', 280 '(2, 0, 0) = {0x0000000000000008 0x0000000000000009 0x000000000000000a}', 281 '(3, 0, 0) = {0x000000000000000c 0x000000000000000d 0x000000000000000e}', 282 '(4, 0, 0) = {0x0000000000000010 0x0000000000000011 0x0000000000000012}', 283 '(5, 0, 0) = {0x0000000000000014 0x0000000000000015 0x0000000000000016}']) 284 285 # ulong4 286 self.try_command('language renderscript allocation dump 35', 287 ['(0, 0, 0) = {0x0000000000000000 0x0000000000000001 ' 288 '0x0000000000000002 0x0000000000000003}', 289 '(1, 0, 0) = {0x0000000000000004 0x0000000000000005 ' 290 '0x0000000000000006 0x0000000000000007}', 291 '(2, 0, 0) = {0x0000000000000008 0x0000000000000009 ' 292 '0x000000000000000a 0x000000000000000b}', 293 '(3, 0, 0) = {0x000000000000000c 0x000000000000000d ' 294 '0x000000000000000e 0x000000000000000f}', 295 '(4, 0, 0) = {0x0000000000000010 0x0000000000000011 ' 296 '0x0000000000000012 0x0000000000000013}', 297 '(5, 0, 0) = {0x0000000000000014 0x0000000000000015 ' 298 '0x0000000000000016 0x0000000000000017}']) 299 300 self.try_command('breakpoint del 2', 301 ['1 breakpoints deleted']) 302 303 # Hit third kernel 304 self.try_command('process continue', 305 ['resuming', 306 'stopped', 307 'stop reason = breakpoint']) 308 309 # Test that uint allocation has been squared by square_kernel 310 self.try_command('language renderscript allocation dump 28', 311 ['(0, 0, 0) = 0', 312 '(1, 0, 0) = 1', 313 '(2, 0, 0) = 4', 314 '(3, 0, 0) = 9', 315 '(4, 0, 0) = 16', 316 '(5, 0, 0) = 25', 317 '(6, 0, 0) = 36', 318 '(7, 0, 0) = 49', 319 '(8, 0, 0) = 64', 320 '(9, 0, 0) = 81', 321 '(10, 0, 0) = 100', 322 '(11, 0, 0) = 121', 323 '(12, 0, 0) = 144', 324 '(13, 0, 0) = 169', 325 '(14, 0, 0) = 196', 326 '(15, 0, 0) = 225', 327 '(16, 0, 0) = 256', 328 '(17, 0, 0) = 289', 329 '(18, 0, 0) = 324', 330 '(19, 0, 0) = 361', 331 '(20, 0, 0) = 400', 332 '(21, 0, 0) = 441', 333 '(22, 0, 0) = 484', 334 '(23, 0, 0) = 529']) 335 336 # half 337 self.try_command('language renderscript allocation dump 36', 338 ['(0, 0, 0) = inf', 339 '(1, 0, 0) = 1', 340 '(2, 0, 0) = 0.5', 341 '(3, 0, 0) = 0.333252', 342 '(4, 0, 0) = 0.25', 343 '(5, 0, 0) = 0.199951', 344 '(6, 0, 0) = 0.166626', 345 '(7, 0, 0) = 0.142822', 346 '(8, 0, 0) = 0.125', 347 '(9, 0, 0) = 0.111084', 348 '(10, 0, 0) = 0.0999756', 349 '(11, 0, 0) = 0.0908813', 350 '(12, 0, 0) = 0.083313', 351 '(13, 0, 0) = 0.0769043', 352 '(14, 0, 0) = 0.0714111', 353 '(15, 0, 0) = 0.0666504', 354 '(16, 0, 0) = 0.0625', 355 '(17, 0, 0) = 0.0588379', 356 '(18, 0, 0) = 0.055542', 357 '(19, 0, 0) = 0.0526428', 358 '(20, 0, 0) = 0.0499878', 359 '(21, 0, 0) = 0.0476074', 360 '(22, 0, 0) = 0.0454407', 361 '(23, 0, 0) = 0.0434875']) 362 363 # half2 364 self.try_command('language renderscript allocation dump 37', 365 ['(0, 0, 0) = {inf 1}', 366 '(1, 0, 0) = {0.5 0.333252}', 367 '(2, 0, 0) = {0.25 0.199951}', 368 '(3, 0, 0) = {0.166626 0.142822}', 369 '(4, 0, 0) = {0.125 0.111084}', 370 '(5, 0, 0) = {0.0999756 0.0908813}', 371 '(6, 0, 0) = {0.083313 0.0769043}', 372 '(7, 0, 0) = {0.0714111 0.0666504}', 373 '(8, 0, 0) = {0.0625 0.0588379}', 374 '(9, 0, 0) = {0.055542 0.0526428}', 375 '(10, 0, 0) = {0.0499878 0.0476074}', 376 '(11, 0, 0) = {0.0454407 0.0434875}']) 377 378 # half3 379 self.try_command('language renderscript allocation dump 38', 380 ['(0, 0, 0) = {inf 1 0.5}', 381 '(0, 1, 0) = {0.25 0.199951 0.166626}', 382 '(0, 2, 0) = {0.125 0.111084 0.0999756}', 383 '(0, 3, 0) = {0.083313 0.0769043 0.0714111}', 384 '(0, 4, 0) = {0.0625 0.0588379 0.055542}', 385 '(0, 5, 0) = {0.0499878 0.0476074 0.0454407}']) 386 387 # half4 388 self.try_command('language renderscript allocation dump 39', 389 ['(0, 0, 0) = {inf 1 0.5 0.333252}', 390 '(1, 0, 0) = {0.25 0.199951 0.166626 0.142822}', 391 '(2, 0, 0) = {0.125 0.111084 0.0999756 0.0908813}', 392 '(3, 0, 0) = {0.083313 0.0769043 0.0714111 0.0666504}', 393 '(4, 0, 0) = {0.0625 0.0588379 0.055542 0.0526428}', 394 '(5, 0, 0) = {0.0499878 0.0476074 0.0454407 0.0434875}']) 395 396 # float 397 self.try_command('language renderscript allocation dump 40', 398 ['(0, 0, 0) = inf', 399 '(1, 0, 0) = 1', 400 '(2, 0, 0) = 0.5', 401 '(3, 0, 0) = 0.333333', 402 '(4, 0, 0) = 0.25', 403 '(5, 0, 0) = 0.2', 404 '(6, 0, 0) = 0.166667', 405 '(7, 0, 0) = 0.142857', 406 '(8, 0, 0) = 0.125', 407 '(9, 0, 0) = 0.111111', 408 '(10, 0, 0) = 0.1', 409 '(11, 0, 0) = 0.0909091', 410 '(12, 0, 0) = 0.0833333', 411 '(13, 0, 0) = 0.0769231', 412 '(14, 0, 0) = 0.0714286', 413 '(15, 0, 0) = 0.0666667', 414 '(16, 0, 0) = 0.0625', 415 '(17, 0, 0) = 0.0588235', 416 '(18, 0, 0) = 0.0555556', 417 '(19, 0, 0) = 0.0526316', 418 '(20, 0, 0) = 0.05', 419 '(21, 0, 0) = 0.047619', 420 '(22, 0, 0) = 0.0454545', 421 '(23, 0, 0) = 0.0434783']) 422 423 # float2 424 self.try_command('language renderscript allocation dump 41', 425 ['(0, 0, 0) = {inf 1}', 426 '(1, 0, 0) = {0.5 0.333333}', 427 '(2, 0, 0) = {0.25 0.2}', 428 '(3, 0, 0) = {0.166667 0.142857}', 429 '(4, 0, 0) = {0.125 0.111111}', 430 '(5, 0, 0) = {0.1 0.0909091}', 431 '(6, 0, 0) = {0.0833333 0.0769231}', 432 '(7, 0, 0) = {0.0714286 0.0666667}', 433 '(8, 0, 0) = {0.0625 0.0588235}', 434 '(9, 0, 0) = {0.0555556 0.0526316}', 435 '(10, 0, 0) = {0.05 0.047619}', 436 '(11, 0, 0) = {0.0454545 0.0434783}']) 437 438 # float3 439 self.try_command('language renderscript allocation dump 42', 440 ['(0, 0, 0) = {inf 1 0.5}', 441 '(1, 0, 0) = {0.25 0.2 0.166667}', 442 '(2, 0, 0) = {0.125 0.111111 0.1}', 443 '(3, 0, 0) = {0.0833333 0.0769231 0.0714286}', 444 '(4, 0, 0) = {0.0625 0.0588235 0.0555556}', 445 '(5, 0, 0) = {0.05 0.047619 0.0454545}']) 446 447 # float4 448 self.try_command('language renderscript allocation dump 43', 449 ['(0, 0, 0) = {inf 1 0.5 0.333333}', 450 '(1, 0, 0) = {0.25 0.2 0.166667 0.142857}', 451 '(2, 0, 0) = {0.125 0.111111 0.1 0.0909091}', 452 '(0, 1, 0) = {0.0833333 0.0769231 0.0714286 0.0666667}', 453 '(1, 1, 0) = {0.0625 0.0588235 0.0555556 0.0526316}', 454 '(2, 1, 0) = {0.05 0.047619 0.0454545 0.0434783}']) 455 456 # double 457 self.try_command('language renderscript allocation dump 44', 458 ['(0, 0, 0) = inf', 459 '(1, 0, 0) = 1', 460 '(2, 0, 0) = 0.5', 461 '(3, 0, 0) = 0.333333333333333', 462 '(4, 0, 0) = 0.25', 463 '(5, 0, 0) = 0.2', 464 '(6, 0, 0) = 0.166666666666667', 465 '(7, 0, 0) = 0.142857142857143', 466 '(8, 0, 0) = 0.125', 467 '(9, 0, 0) = 0.111111111111111', 468 '(10, 0, 0) = 0.1', 469 '(11, 0, 0) = 0.0909090909090909', 470 '(12, 0, 0) = 0.0833333333333333', 471 '(13, 0, 0) = 0.0769230769230769', 472 '(14, 0, 0) = 0.0714285714285714', 473 '(15, 0, 0) = 0.0666666666666667', 474 '(16, 0, 0) = 0.0625', 475 '(17, 0, 0) = 0.0588235294117647', 476 '(18, 0, 0) = 0.0555555555555556', 477 '(19, 0, 0) = 0.0526315789473684', 478 '(20, 0, 0) = 0.05', 479 '(21, 0, 0) = 0.0476190476190476', 480 '(22, 0, 0) = 0.0454545454545455', 481 '(23, 0, 0) = 0.0434782608695652']) 482 483 # double2 484 self.try_command('language renderscript allocation dump 45', 485 ['(0, 0, 0) = {inf 1}', 486 '(1, 0, 0) = {0.5 0.333333333333333}', 487 '(2, 0, 0) = {0.25 0.2}', 488 '(3, 0, 0) = {0.166666666666667 0.142857142857143}', 489 '(0, 0, 1) = {0.125 0.111111111111111}', 490 '(1, 0, 1) = {0.1 0.0909090909090909}', 491 '(2, 0, 1) = {0.0833333333333333 0.0769230769230769}', 492 '(3, 0, 1) = {0.0714285714285714 0.0666666666666667}', 493 '(0, 0, 2) = {0.0625 0.0588235294117647}', 494 '(1, 0, 2) = {0.0555555555555556 0.0526315789473684}', 495 '(2, 0, 2) = {0.05 0.0476190476190476}', 496 '(3, 0, 2) = {0.0454545454545455 0.0434782608695652}']) 497 498 # double3 499 self.try_command('language renderscript allocation dump 46', 500 ['(0, 0, 0) = {inf 1 0.5}', 501 '(0, 1, 0) = {0.25 0.2 0.166666666666667}', 502 '(0, 0, 1) = {0.125 0.111111111111111 0.1}', 503 '(0, 1, 1) = {0.0833333333333333 0.0769230769230769 ' 504 '0.0714285714285714}', 505 '(0, 0, 2) = {0.0625 0.0588235294117647 0.0555555555555556}', 506 '(0, 1, 2) = {0.05 0.0476190476190476 0.0454545454545455}']) 507 508 # double4 509 self.try_command('language renderscript allocation dump 47', 510 ['(0, 0, 0) = {inf 1 0.5 0.333333333333333}', 511 '(0, 1, 0) = {0.25 0.2 0.166666666666667 0.142857142857143}', 512 '(0, 0, 1) = {0.125 0.111111111111111 0.1 0.0909090909090909}', 513 '(0, 1, 1) = {0.0833333333333333 0.0769230769230769 ' 514 '0.0714285714285714 0.0666666666666667}', 515 '(0, 0, 2) = {0.0625 0.0588235294117647 ' 516 '0.0555555555555556 0.0526315789473684}', 517 '(0, 1, 2) = {0.05 0.0476190476190476 ' 518 '0.0454545454545455 0.0434782608695652}']) 519 520 # Delete kernel breakpoint on add_half_kernel 521 self.try_command('breakpoint del 3', 522 ['1 breakpoints deleted']) 523 524 self.try_command('process continue', 525 ['exited with status = 0']) 526