Right-shifting a negative number should sign-extend according to the ESSL 3.00.6 spec. Implement sign-extending right shift so that it doesn't hit any undefined behavior in the C++ spec. Negative lhs operands are now allowed for bit-shift right. Also implement bit-shift left via conversion to unsigned integer, so that it does not hit signed integer overflow. Negative lhs operands are now allowed also for bit-shift left as well. BUG=chromium:654103 TEST=angle_unittests Change-Id: Iee241de9fd0d74c2f8a88219bddec690bb8e4db2 Reviewed-on: https://chromium-review.googlesource.com/395688 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:Geoff Lang <geofflang@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| API_test.cpp | Loading commit data... | |
| CollectVariables_test.cpp | Loading commit data... | |
| ConstantFolding_test.cpp | Loading commit data... | |
| DebugShaderPrecision_test.cpp | Loading commit data... | |
| EXT_blend_func_extended_test.cpp | Loading commit data... | |
| EmulateGLFragColorBroadcast_test.cpp | Loading commit data... | |
| ExpressionLimit_test.cpp | Loading commit data... | |
| FragDepth_test.cpp | Loading commit data... | |
| GLSLCompatibilityOutput_test.cpp | Loading commit data... | |
| IntermNode_test.cpp | Loading commit data... | |
| MalformedShader_test.cpp | Loading commit data... | |
| NV_draw_buffers_test.cpp | Loading commit data... | |
| Pack_Unpack_test.cpp | Loading commit data... | |
| PruneEmptyDeclarations_test.cpp | Loading commit data... | |
| PruneUnusedFunctions_test.cpp | Loading commit data... | |
| QualificationOrderESSL31_test.cpp | Loading commit data... | |
| QualificationOrder_test.cpp | Loading commit data... | |
| RecordConstantPrecision_test.cpp | Loading commit data... | |
| RemovePow_test.cpp | Loading commit data... | |
| ShCompile_test.cpp | Loading commit data... | |
| ShaderExtension_test.cpp | Loading commit data... | |
| ShaderVariable_test.cpp | Loading commit data... | |
| TypeTracking_test.cpp | Loading commit data... | |
| UnrollFlatten_test.cpp | Loading commit data... | |
| VariablePacker_test.cpp | Loading commit data... | |
| WorkGroupSize_test.cpp | Loading commit data... |