94350549959ebc4c9ec70803a418bec09ad27378 |
|
29-Mar-2017 |
David Gross <dgross@google.com> |
Structure layout logic cleanup. Do not run special x86-32 transformations when slang has explicitly padded structs. Verify that front end (Module) and back end (TargetMachine) agree on the layout of every exported struct type. Cannot build without slang change: https://android-review.googlesource.com/#/c/359135/ Bug: http://b/29154200 Bug: http://b/28070272 Test: (aosp_x86_64-eng emulator, full_fugu-eng, aosp_angler-eng) x (RsTest 32-bit, RsTest 64-bit, cts -m RenderscriptTest) tests/run-lit-tests.sh Tried (unmodified slang, modified bcc) and ( modified slang, unmodified bcc) and ( modified slang, modified bcc) By instrumenting modified bcc, confimed that: - Special x8632 layout transformations only run with unmodified slang, and only when test is compiled for x8632. "Modified slang" is a forthcoming slang change to add explicit padding to struct types: https://android-review.googlesource.com/#/c/359135/ Change-Id: Id938db661497710275a318e0964a36f64fcfa05b (cherry picked from commit 97e50993c70083fdedb4f1dd2c487aa55c6f60cf)
/frameworks/compile/libbcc/lib/RSKernelExpand.cpp
|