Make gl_clear_broken workaround support core profile and use it under AMD Linux Catalyst driver

Make ClearFrameBuffer use a VAO and add version to shaders in core
profile. Use gl_clear_broken workaround under Linux AMD Catalyst driver
because it ignores clear if it's the only thing rendered to the target
before the target is read.

BUG=690122
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2764833003
Cr-Commit-Position: refs/heads/master@{#460282}
9 files changed