1/* 2Copyright (c) 2014, Intel Corporation 3All rights reserved. 4 5Redistribution and use in source and binary forms, with or without 6modification, are permitted provided that the following conditions are met: 7 8 * Redistributions of source code must retain the above copyright notice, 9 * this list of conditions and the following disclaimer. 10 11 * Redistributions in binary form must reproduce the above copyright notice, 12 * this list of conditions and the following disclaimer in the documentation 13 * and/or other materials provided with the distribution. 14 15 * Neither the name of Intel Corporation nor the names of its contributors 16 * may be used to endorse or promote products derived from this software 17 * without specific prior written permission. 18 19THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 20ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 21WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 23ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 24(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 26ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 28SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29*/ 30 31/******************************************************************************/ 32// ALGORITHM DESCRIPTION 33// --------------------- 34// 35// Let x=2^k * mx, mx in [1,2) 36// 37// Get B~1/mx based on the output of rcpps instruction (B0) 38// B = int((B0*2^7+0.5))/2^7 39// 40// Reduced argument: r=B*mx-1.0 (computed accurately in high and low parts) 41// 42// Result: k*log(2) - log(B) + p(r) 43// p(r) is a degree 7 polynomial 44// -log(B) read from data table (high, low parts) 45// Result is formed from high and low parts 46// 47// Special cases: 48// log1p(NaN) = quiet NaN, and raise invalid exception 49// log1p(+INF) = that INF 50// log1p(x) = NaN if x < -1 or x = -INF, and raises invalid exception 51// log1p(-1) = -INF, and raises divide-by-zero exception 52// log1p(+/-0) = +/-0 53// 54/******************************************************************************/ 55 56#include <private/bionic_asm.h> 57# -- Begin log1p 58ENTRY(log1p) 59# parameter 1: %xmm0 60..B1.1: 61..___tag_value_log1p.1: 62 subq $24, %rsp 63..___tag_value_log1p.3: 64 movsd %xmm0, 8(%rsp) 65..B1.2: 66 movq $0x3ff0000000000000, %rax 67 movd %rax, %xmm2 68 xorpd %xmm3, %xmm3 69 movl $32768, %ecx 70 movd %rcx, %xmm4 71 movq $0xffffe00000000000, %r8 72 movd %r8, %xmm5 73 movddup %xmm0, %xmm7 74 pshufd $68, %xmm2, %xmm6 75 pextrw $3, %xmm0, %ecx 76 addsd %xmm2, %xmm0 77 movq %xmm0, %xmm1 78 pextrw $3, %xmm0, %eax 79 subsd %xmm0, %xmm6 80 orpd %xmm2, %xmm0 81 psrlq $27, %xmm0 82 lea L_tbl(%rip), %r11 83 psrld $2, %xmm0 84 subl $16, %eax 85 cmpl $32736, %eax 86 jae .L_2TAG_PACKET_0.0.2 87 addsd %xmm6, %xmm7 88 rcpps %xmm0, %xmm0 89 psllq $12, %xmm1 90 pshufd $228, %xmm5, %xmm6 91 psrlq $12, %xmm1 92 andl $32752, %ecx 93 cmpl $16256, %ecx 94 jb .L_2TAG_PACKET_1.0.2 95 andl $32752, %eax 96 movl $32720, %ecx 97 subl %eax, %ecx 98 pinsrw $3, %ecx, %xmm3 99.L_2TAG_PACKET_2.0.2: 100 mulsd %xmm3, %xmm7 101 paddd %xmm4, %xmm0 102 movq $0x3800000000000000, %rcx 103 movd %rcx, %xmm4 104 orpd %xmm2, %xmm1 105 movd %xmm0, %edx 106 psllq $29, %xmm0 107 andpd %xmm1, %xmm5 108 andpd %xmm6, %xmm0 109 subsd %xmm5, %xmm1 110 paddd %xmm4, %xmm0 111 mulsd %xmm0, %xmm5 112 movl $16352, %ecx 113 subl %ecx, %eax 114 cvtsi2sd %eax, %xmm4 115 mulsd %xmm0, %xmm7 116 mulsd %xmm0, %xmm1 117 movq log2(%rip), %xmm6 118 movapd coeff(%rip), %xmm3 119 subsd %xmm2, %xmm5 120 andl $16711680, %edx 121 shrl $12, %edx 122 movapd (%r11,%rdx), %xmm0 123 movapd 16+coeff(%rip), %xmm2 124 addsd %xmm5, %xmm1 125 movq %xmm1, %xmm5 126 addsd %xmm7, %xmm1 127 subsd %xmm1, %xmm5 128 addsd %xmm5, %xmm7 129 mulsd %xmm4, %xmm6 130 mulsd 8+log2(%rip), %xmm4 131 mulsd %xmm1, %xmm3 132 movddup %xmm1, %xmm5 133 addsd %xmm6, %xmm0 134 mulpd %xmm5, %xmm2 135 mulpd %xmm5, %xmm5 136 movddup %xmm0, %xmm6 137 addsd %xmm1, %xmm0 138 addpd 32+coeff(%rip), %xmm2 139 mulpd %xmm5, %xmm3 140 subsd %xmm0, %xmm6 141 mulsd %xmm1, %xmm2 142 addsd %xmm7, %xmm4 143 mulsd %xmm1, %xmm7 144 addsd %xmm6, %xmm1 145 pshufd $238, %xmm0, %xmm6 146 mulsd %xmm5, %xmm5 147 addsd %xmm6, %xmm4 148 subsd %xmm7, %xmm1 149 addpd %xmm3, %xmm2 150 addsd %xmm4, %xmm1 151 mulpd %xmm5, %xmm2 152 addsd %xmm2, %xmm1 153 pshufd $238, %xmm2, %xmm5 154 addsd %xmm5, %xmm1 155 addsd %xmm1, %xmm0 156 jmp ..B1.5 157.L_2TAG_PACKET_0.0.2: 158 movq 8(%rsp), %xmm0 159 movq 8(%rsp), %xmm1 160 addl $16, %eax 161 cmpl $32768, %eax 162 jae .L_2TAG_PACKET_3.0.2 163 cmpl $0, %eax 164 je .L_2TAG_PACKET_4.0.2 165.L_2TAG_PACKET_5.0.2: 166 addsd %xmm0, %xmm0 167 jmp ..B1.5 168.L_2TAG_PACKET_6.0.2: 169 ja .L_2TAG_PACKET_5.0.2 170 cmpl $0, %edx 171 ja .L_2TAG_PACKET_5.0.2 172 jmp .L_2TAG_PACKET_7.0.2 173.L_2TAG_PACKET_3.0.2: 174 movd %xmm1, %edx 175 psrlq $32, %xmm1 176 movd %xmm1, %ecx 177 addl %ecx, %ecx 178 cmpl $-2097152, %ecx 179 jae .L_2TAG_PACKET_6.0.2 180 orl %ecx, %edx 181 cmpl $0, %edx 182 je .L_2TAG_PACKET_4.0.2 183.L_2TAG_PACKET_7.0.2: 184 xorpd %xmm1, %xmm1 185 xorpd %xmm0, %xmm0 186 movl $32752, %eax 187 pinsrw $3, %eax, %xmm1 188 movl $141, (%rsp) 189 mulsd %xmm1, %xmm0 190 jmp .L_2TAG_PACKET_8.0.2 191.L_2TAG_PACKET_4.0.2: 192 xorpd %xmm1, %xmm1 193 xorpd %xmm0, %xmm0 194 movl $49136, %eax 195 pinsrw $3, %eax, %xmm0 196 divsd %xmm1, %xmm0 197 movl $140, (%rsp) 198 jmp .L_2TAG_PACKET_8.0.2 199.L_2TAG_PACKET_1.0.2: 200 movq 8(%rsp), %xmm0 201 cmpl $15504, %ecx 202 jb .L_2TAG_PACKET_9.0.2 203 movapd coeff2(%rip), %xmm1 204 pshufd $68, %xmm0, %xmm0 205 movapd 16+coeff2(%rip), %xmm2 206 pshufd $68, %xmm0, %xmm4 207 movapd 32+coeff2(%rip), %xmm3 208 mulpd %xmm0, %xmm1 209 xorpd %xmm6, %xmm6 210 mulpd %xmm4, %xmm4 211 addpd %xmm2, %xmm1 212 pshufd $68, %xmm4, %xmm5 213 mulpd %xmm0, %xmm4 214 movl $49120, %eax 215 pinsrw $3, %eax, %xmm6 216 mulpd %xmm0, %xmm1 217 mulsd %xmm4, %xmm4 218 addpd %xmm3, %xmm1 219 mulsd %xmm6, %xmm5 220 mulpd %xmm4, %xmm1 221 pshufd $238, %xmm1, %xmm7 222 addsd %xmm7, %xmm1 223 addsd %xmm5, %xmm1 224 addsd %xmm1, %xmm0 225 jmp ..B1.5 226.L_2TAG_PACKET_9.0.2: 227 cmpl $16, %ecx 228 jb .L_2TAG_PACKET_10.0.2 229 jmp ..B1.5 230.L_2TAG_PACKET_10.0.2: 231 movq %xmm0, %xmm1 232 mulsd %xmm1, %xmm1 233 jmp ..B1.5 234.L_2TAG_PACKET_8.0.2: 235 movq %xmm0, 16(%rsp) 236..B1.3: 237 movq 16(%rsp), %xmm0 238.L_2TAG_PACKET_11.0.2: 239..B1.5: 240 addq $24, %rsp 241..___tag_value_log1p.4: 242 ret 243..___tag_value_log1p.5: 244END(log1p) 245# -- End log1p 246 .section .rodata, "a" 247 .align 16 248 .align 16 249L_tbl: 250 .long 4277811200 251 .long 1072049730 252 .long 2479318832 253 .long 1026487127 254 .long 2854492160 255 .long 1072033410 256 .long 215631550 257 .long 1025638968 258 .long 1547061248 259 .long 1072017216 260 .long 2886781435 261 .long 1026423395 262 .long 649825280 263 .long 1072001146 264 .long 4281533405 265 .long 1024038923 266 .long 646346752 267 .long 1071985198 268 .long 1562735921 269 .long 1023790276 270 .long 2203734016 271 .long 1071969370 272 .long 1838397691 273 .long 3173936209 274 .long 1872169984 275 .long 1071953661 276 .long 3981202460 277 .long 1022325013 278 .long 669557760 279 .long 1071938069 280 .long 4182597802 281 .long 3173174122 282 .long 4076413952 283 .long 1071922591 284 .long 1209029111 285 .long 3170736207 286 .long 556125184 287 .long 1071907228 288 .long 821086028 289 .long 3173437049 290 .long 204914688 291 .long 1071891976 292 .long 2097025986 293 .long 3171071798 294 .long 387545088 295 .long 1071876834 296 .long 3142936996 297 .long 3173092218 298 .long 2912783360 299 .long 1071861800 300 .long 2502420140 301 .long 1024505919 302 .long 1144260608 303 .long 1071846874 304 .long 3315658140 305 .long 3173469843 306 .long 1471209472 307 .long 1071832053 308 .long 129621009 309 .long 3172443877 310 .long 1829683200 311 .long 1071817336 312 .long 3885467693 313 .long 1025535275 314 .long 288676864 315 .long 1071802722 316 .long 86139472 317 .long 3171639793 318 .long 3636378624 319 .long 1071788208 320 .long 1850238587 321 .long 1024654342 322 .long 1606817792 323 .long 1071773795 324 .long 3388899795 325 .long 3173675586 326 .long 1236164608 327 .long 1071759480 328 .long 3983599207 329 .long 1020046558 330 .long 1089616896 331 .long 1071745262 332 .long 4171974224 333 .long 1024773198 334 .long 4143093760 335 .long 1071731139 336 .long 2727587401 337 .long 3173965207 338 .long 600267776 339 .long 1071717112 340 .long 3147685042 341 .long 3173353031 342 .long 2249313280 343 .long 1071703177 344 .long 125835074 345 .long 1025255832 346 .long 3805303808 347 .long 1071689334 348 .long 2289991207 349 .long 1025460331 350 .long 87278592 351 .long 1071675583 352 .long 1106114045 353 .long 1025933602 354 .long 3195405312 355 .long 1071661920 356 .long 3885316576 357 .long 3171206239 358 .long 3853649920 359 .long 1071648346 360 .long 2977069852 361 .long 3171236771 362 .long 2944026624 363 .long 1071625048 364 .long 1008093493 365 .long 1023444474 366 .long 3993180160 367 .long 1071598247 368 .long 1862355595 369 .long 1024642533 370 .long 1454641152 371 .long 1071571617 372 .long 1514603089 373 .long 1026500596 374 .long 3286085632 375 .long 1071545154 376 .long 1400028424 377 .long 3173279056 378 .long 438773760 379 .long 1071518858 380 .long 120727864 381 .long 3172148914 382 .long 1212979200 383 .long 1071492725 384 .long 1625055594 385 .long 3172901933 386 .long 1189017600 387 .long 1071466754 388 .long 3920062376 389 .long 1025727407 390 .long 403064832 391 .long 1071440943 392 .long 1053271728 393 .long 3171391427 394 .long 3343210496 395 .long 1071415289 396 .long 3243395502 397 .long 3173627613 398 .long 1765777408 399 .long 1071389792 400 .long 2145968512 401 .long 1026354304 402 .long 461430784 403 .long 1071364449 404 .long 4094322285 405 .long 1026021467 406 .long 71706624 407 .long 1071339258 408 .long 763632021 409 .long 1024496933 410 .long 1380503552 411 .long 1071314217 412 .long 1383547992 413 .long 3173088453 414 .long 1015732224 415 .long 1071289325 416 .long 3198646877 417 .long 1025390322 418 .long 35977216 419 .long 1071264580 420 .long 2141026805 421 .long 1025754693 422 .long 3927306240 423 .long 1071239979 424 .long 282116272 425 .long 3173394334 426 .long 1125341184 427 .long 1071215523 428 .long 2768427504 429 .long 3172279059 430 .long 1666971648 431 .long 1071191208 432 .long 786837629 433 .long 3172427445 434 .long 2827694080 435 .long 1071167033 436 .long 3857122416 437 .long 3173014241 438 .long 2003683328 439 .long 1071142997 440 .long 859010954 441 .long 1026545007 442 .long 1004017664 443 .long 1071119098 444 .long 3356644970 445 .long 3173458064 446 .long 1753020416 447 .long 1071095334 448 .long 788338552 449 .long 1026157693 450 .long 1992718336 451 .long 1071071704 452 .long 1239179443 453 .long 1026394889 454 .long 3870234624 455 .long 1071048206 456 .long 2082614663 457 .long 1024926053 458 .long 1050437632 459 .long 1071024840 460 .long 660007840 461 .long 1025548499 462 .long 188395520 463 .long 1071001603 464 .long 3878792704 465 .long 3173889571 466 .long 3747176448 467 .long 1070978493 468 .long 144991708 469 .long 3171552042 470 .long 1405669376 471 .long 1070955511 472 .long 3999088879 473 .long 1025486317 474 .long 121151488 475 .long 1070932654 476 .long 2170865497 477 .long 1026473584 478 .long 2652319744 479 .long 1070909920 480 .long 453695652 481 .long 3173916809 482 .long 3262236672 483 .long 1070887309 484 .long 157800053 485 .long 3173984206 486 .long 601221120 487 .long 1070864820 488 .long 3968917661 489 .long 1023992886 490 .long 1999843328 491 .long 1070842450 492 .long 3053895004 493 .long 1024998228 494 .long 1992167424 495 .long 1070820199 496 .long 2968614856 497 .long 1024552653 498 .long 3788726272 499 .long 1070798065 500 .long 3542170808 501 .long 3173573242 502 .long 2094829568 503 .long 1070776048 504 .long 1246758132 505 .long 1026202874 506 .long 288675840 507 .long 1070754146 508 .long 3747328950 509 .long 1026331585 510 .long 1829681152 511 .long 1070732357 512 .long 3125197546 513 .long 1024100318 514 .long 1666869248 515 .long 1070710681 516 .long 1363656119 517 .long 1026336493 518 .long 3417110528 519 .long 1070689116 520 .long 4154791553 521 .long 1026267853 522 .long 2183653376 523 .long 1070667662 524 .long 1671819292 525 .long 3173785870 526 .long 1734434816 527 .long 1070646317 528 .long 373091049 529 .long 1025972363 530 .long 1615681536 531 .long 1070625080 532 .long 384650897 533 .long 1022926043 534 .long 1445382144 535 .long 1070603950 536 .long 344320330 537 .long 3172397196 538 .long 1823715328 539 .long 1070569756 540 .long 3389841200 541 .long 1025231852 542 .long 3839688704 543 .long 1070527917 544 .long 1706790417 545 .long 3167363349 546 .long 4293332992 547 .long 1070486286 548 .long 1614935088 549 .long 1019351591 550 .long 2966720512 551 .long 1070444861 552 .long 4145393717 553 .long 3173711658 554 .long 4066729984 555 .long 1070403639 556 .long 1974925028 557 .long 3171437182 558 .long 3337621504 559 .long 1070362619 560 .long 3314953170 561 .long 3169971314 562 .long 943448064 563 .long 1070321799 564 .long 1498682038 565 .long 3173862340 566 .long 1465634816 567 .long 1070281176 568 .long 1319952810 569 .long 3171693965 570 .long 1015734272 571 .long 1070240749 572 .long 1347821929 573 .long 3173544515 574 .long 118001664 575 .long 1070200516 576 .long 1751482746 577 .long 1026134093 578 .long 3707174912 579 .long 1070160474 580 .long 1486946159 581 .long 1023930920 582 .long 3946381312 583 .long 1070120623 584 .long 2867408081 585 .long 3171368276 586 .long 1699848192 587 .long 1070080961 588 .long 2590187139 589 .long 1025379803 590 .long 2235846656 591 .long 1070041485 592 .long 1888568069 593 .long 3172754960 594 .long 2339729408 595 .long 1070002194 596 .long 3852214753 597 .long 3173323149 598 .long 3196850176 599 .long 1069963086 600 .long 742141560 601 .long 1025101707 602 .long 1800683520 603 .long 1069924160 604 .long 3949500444 605 .long 3172102179 606 .long 3835801600 607 .long 1069885413 608 .long 3848895943 609 .long 1025913832 610 .long 2201202688 611 .long 1069846845 612 .long 1425913464 613 .long 1025868665 614 .long 2778279936 615 .long 1069808453 616 .long 2120889677 617 .long 3173831128 618 .long 2954203136 619 .long 1069770236 620 .long 592147081 621 .long 1019621288 622 .long 210141184 623 .long 1069732193 624 .long 3414275233 625 .long 1023647084 626 .long 709476352 627 .long 1069694321 628 .long 2413027164 629 .long 1024462115 630 .long 2116284416 631 .long 1069656619 632 .long 1144559924 633 .long 1026336654 634 .long 2183651328 635 .long 1069619086 636 .long 3459057650 637 .long 1025634168 638 .long 3047047168 639 .long 1069581720 640 .long 1879674924 641 .long 3173508573 642 .long 970711040 643 .long 1069541521 644 .long 1335954173 645 .long 3173332182 646 .long 2198478848 647 .long 1069467449 648 .long 2951103968 649 .long 3173892200 650 .long 1669611520 651 .long 1069393703 652 .long 531044147 653 .long 1025149248 654 .long 29114368 655 .long 1069320280 656 .long 3327831251 657 .long 1025918673 658 .long 2376949760 659 .long 1069247176 660 .long 737634533 661 .long 3172176000 662 .long 1085390848 663 .long 1069174390 664 .long 3108243400 665 .long 3171828406 666 .long 1566130176 667 .long 1069101918 668 .long 985483226 669 .long 1025708380 670 .long 792780800 671 .long 1069029758 672 .long 4184866295 673 .long 1024426204 674 .long 183156736 675 .long 1068957907 676 .long 2845699378 677 .long 1022107277 678 .long 1301782528 679 .long 1068886362 680 .long 1012735262 681 .long 3173804294 682 .long 1562411008 683 .long 1068815121 684 .long 2197086703 685 .long 3170187813 686 .long 2815549440 687 .long 1068744181 688 .long 2782613207 689 .long 1026345054 690 .long 2756124672 691 .long 1068673540 692 .long 2929486205 693 .long 3173037800 694 .long 3511050240 695 .long 1068603195 696 .long 1443733147 697 .long 3173331549 698 .long 3047047168 699 .long 1068533144 700 .long 1879674924 701 .long 3172459997 702 .long 3221667840 703 .long 1068427825 704 .long 1338588027 705 .long 3171815742 706 .long 3453861888 707 .long 1068288883 708 .long 1205348359 709 .long 3172624626 710 .long 3506110464 711 .long 1068150514 712 .long 893105198 713 .long 1025571866 714 .long 346013696 715 .long 1068012714 716 .long 3495569021 717 .long 3172563349 718 .long 4074029056 719 .long 1067875476 720 .long 3961106338 721 .long 3171065595 722 .long 3559784448 723 .long 1067738798 724 .long 1975385384 725 .long 3173783155 726 .long 797769728 727 .long 1067602675 728 .long 3760305787 729 .long 1026047642 730 .long 2313633792 731 .long 1067467101 732 .long 1559353171 733 .long 1023480256 734 .long 3960766464 735 .long 1067213778 736 .long 1067365107 737 .long 1025865926 738 .long 684261376 739 .long 1066944805 740 .long 844762164 741 .long 3173687482 742 .long 630718464 743 .long 1066676905 744 .long 2458269694 745 .long 1024033081 746 .long 1486061568 747 .long 1066410070 748 .long 115537874 749 .long 3173243995 750 .long 2743664640 751 .long 1065886792 752 .long 3665098304 753 .long 3173471607 754 .long 1971912704 755 .long 1065357333 756 .long 2577214440 757 .long 3171993451 758 .long 1498939392 759 .long 1064306693 760 .long 3409036923 761 .long 1025599151 762 .long 0 763 .long 0 764 .long 0 765 .long 2147483648 766 .type L_tbl,@object 767 .size L_tbl,2064 768 .align 16 769log2: 770 .long 4277811200 771 .long 1067855426 772 .long 2479318832 773 .long 1022292823 774 .type log2,@object 775 .size log2,16 776 .align 16 777coeff: 778 .long 2454267026 779 .long 1069697316 780 .long 0 781 .long 3218079744 782 .long 1030730101 783 .long 3217380702 784 .long 1431655765 785 .long 1070945621 786 .long 2576980378 787 .long 1070176665 788 .long 0 789 .long 3219128320 790 .type coeff,@object 791 .size coeff,48 792 .align 16 793coeff2: 794 .long 0 795 .long 3217031168 796 .long 2576980378 797 .long 1070176665 798 .long 2454267026 799 .long 1069697316 800 .long 0 801 .long 3218079744 802 .long 1431655765 803 .long 3217380693 804 .long 1431655765 805 .long 1070945621 806 .type coeff2,@object 807 .size coeff2,48 808 .data 809 .section .note.GNU-stack, "" 810// -- Begin DWARF2 SEGMENT .eh_frame 811 .section .eh_frame,"a",@progbits 812.eh_frame_seg: 813 .align 1 814 .4byte 0x00000014 815 .8byte 0x00527a0100000000 816 .8byte 0x08070c1b01107801 817 .4byte 0x00000190 818 .4byte 0x0000001c 819 .4byte 0x0000001c 820 .4byte ..___tag_value_log1p.1-. 821 .4byte ..___tag_value_log1p.5-..___tag_value_log1p.1 822 .2byte 0x0400 823 .4byte ..___tag_value_log1p.3-..___tag_value_log1p.1 824 .2byte 0x200e 825 .byte 0x04 826 .4byte ..___tag_value_log1p.4-..___tag_value_log1p.3 827 .2byte 0x080e 828 .byte 0x00 829# End 830