diff options
author | Frank Barchard <fbarchard@chromium.org> | 2018-03-28 14:16:03 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2018-03-28 21:52:08 +0000 |
commit | 4ad33344cfec9709e24233bf3fad8927c07d186c (patch) | |
tree | 0d5d07c3e97feca0ff049be1aba4c129df32fda1 /docs/getting_started.md | |
parent | d8680893ecfcffd952c7a5d0dc1878d1c486a4e4 (diff) | |
download | libyuv-4ad33344cfec9709e24233bf3fad8927c07d186c.tar.gz |
Pass float parameters via vector 2 float and "w" for scalar multiply.
Scalar multiply expects a 'd' register. The "w" (float) uses 's' for float
and wont work with the multiply in 32 bit (it does in 64 bit).
A vector 2 of float passes as 'd' register.
A vector 4 of float passes as 'q' register.
This change copies the float into the first entry of a vector 2
and passes that. The optimizer removes the extra copy, allowing
the single float to use referenced as
Test: LibYUVPlanarTest.TestByteToFloat
Bug: libyuv:786
Change-Id: I8773c5bae043c7b84e1d1db7fdea6731aa0b1323
Reviewed-on: https://chromium-review.googlesource.com/973984
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Diffstat (limited to 'docs/getting_started.md')
-rw-r--r-- | docs/getting_started.md | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/docs/getting_started.md b/docs/getting_started.md index 09297b66..2b986ab1 100644 --- a/docs/getting_started.md +++ b/docs/getting_started.md @@ -103,6 +103,10 @@ ios simulator ninja -v -C out/Debug libyuv_unittest ninja -v -C out/Release libyuv_unittest +ios disassembly + + otool -tV ./out/Release/obj/libyuv_neon/row_neon64.o >row_neon64.txt + ### Android https://code.google.com/p/chromium/wiki/AndroidBuildInstructions @@ -144,6 +148,8 @@ arm disassembly: third_party/android_ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-objdump -d ./out/Release/obj/libyuv_neon/row_neon64.o >row_neon64.txt + Caveat: Disassembly may require optimize_max be disabled in BUILD.gn + Running tests: build/android/test_runner.py gtest -s libyuv_unittest -t 7200 --verbose --release --gtest_filter=* |