KalebDark / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

Fix DEQP preprocessor failures #989

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Fix failures in the WebGL test deqp/data/gles2/shaders/preprocessor.html and 
DEQP dEQP-GLES2.functional.shaders.preprocessor.* tests.

Original issue reported on code.google.com by geofflang@chromium.org on 28 Apr 2015 at 7:25

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : b819d25dc608d2a982f323b9db4083dffcba4215

Code-Review  0 : Geoff Lang, Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : I279a38aaae8010017ef6e3f1aa139ae03f374680
Reviewed-at    : https://chromium-review.googlesource.com/267397

Validate that there are no tokens following #undef on the same line.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.definitions.undefine_object_invalid_s
yntax_vertex
dEQP-GLES2.functional.shaders.preprocessor.definitions.undefine_object_invalid_s
yntax_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_definitions.undef_non_identif
ier_2_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_definitions.undef_non_identif
ier_2_fragment

BUG=angleproject:989

src/compiler/preprocessor/DirectiveParser.cpp

Original comment by bugdro...@chromium.org on 28 Apr 2015 at 8:48

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : d3c29f57aaeb451b149bbb9fd17b3f1f99101c52

Code-Review  0 : Geoff Lang, Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : Ibd584dc08a2436e163dfc52eeffdf2dac8a22cb8
Reviewed-at    : https://chromium-review.googlesource.com/267639

Add pragma errors for malformed pragmas.

Instead of always warning on invalid pragmas, only warn when the pragma
type is not recognized and error when the syntax is invalid.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_debug_
vertex
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_debug_
fragment
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_token_
vertex
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_token_
fragment

BUG=angleproject:989

src/compiler/preprocessor/DiagnosticsBase.cpp
src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/translator/DirectiveHandler.cpp
src/tests/preprocessor_tests/pragma_test.cpp

Original comment by bugdro...@chromium.org on 29 Apr 2015 at 1:59

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : 95a423d06ab938999a022f048c94816c10d95819

Code-Review  0 : Geoff Lang
Code-Review  +1: Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : I6511f7082c98206fb623775d81329b6bc7673c1a
Reviewed-at    : https://chromium-review.googlesource.com/267638

Unexpected tokens after conditionals should be an error instead of a warning.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_if_
vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_if_
fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_els
e_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_els
e_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_end
if_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_end
if_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifd
ef_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifd
ef_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifn
def_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifn
def_fragment

BUG=angleproject:989

src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp

Original comment by bugdro...@chromium.org on 29 Apr 2015 at 2:00

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : 26be18da8c440adf17244a4c4d41d56e27d0700b

Code-Review  0 : Geoff Lang
Code-Review  +1: Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : I32198f1c9036c371b46e7ad2986a44e42fd38e20
Reviewed-at    : https://chromium-review.googlesource.com/267396

Validate that all preprocessor function arguments are unique.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.invalid_function_definitions.unique_p
aram_name_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_function_definitions.unique_p
aram_name_fragment

BUG=angleproject:989

src/compiler/preprocessor/DiagnosticsBase.cpp
src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp

Original comment by bugdro...@chromium.org on 29 Apr 2015 at 5:07

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : fa55bf1ed6a26341c57f45b3a3da8feda0b6c18d

Code-Review  0 : Geoff Lang, Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : Ie0aba80b2fde0160e83fc95f545b62954af2e5fc
Reviewed-at    : https://chromium-review.googlesource.com/267398

Track if a non-preprocessor token has been seen and validate #extension with it.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.extensions.after_non_preprocessing_to
kens_vertex
dEQP-GLES2.functional.shaders.preprocessor.extensions.after_non_preprocessing_to
kens_fragment

BUG=angleproject:989

src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/preprocessor/DirectiveParser.h

Original comment by bugdro...@chromium.org on 29 Apr 2015 at 8:01

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : 9624e05860bddf03ea5138fa14f4fa7b4a1f2f57

Code-Review  +2: Geoff Lang
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : Iebef439095a95741c8502716a4ce90c4785561eb
Reviewed-at    : https://chromium-review.googlesource.com/268742

Revert "Track if a non-preprocessor token has been seen and validate #extension 
with it."

Breaks some WebGL applications, holding off until a decision is made.

BUG=483252
BUG=angleproject:989

This reverts commit fa55bf1ed6a26341c57f45b3a3da8feda0b6c18d.

src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/preprocessor/DirectiveParser.h

Original comment by bugdro...@chromium.org on 1 May 2015 at 2:06

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : 4c8cae6073199b5610c93f11a160838caacda1d1

Code-Review  +2: Geoff Lang
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : I9f833366d5b69535ef74e358ac21efaccb1f1a3d
Reviewed-at    : https://chromium-review.googlesource.com/268751

Revert "Don't mark all macros with double underscores as reserved."

Fails a WebGL CTS test.

BUG=angleproject:989

This reverts commit 942e36254a1e3537371c39f3f23d1ce12f4c87e8.

src/compiler/preprocessor/DirectiveParser.cpp
src/tests/preprocessor_tests/define_test.cpp

Original comment by bugdro...@chromium.org on 1 May 2015 at 4:47

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : bbdb9e2259c38454be097ce01505db83db3ad7a8

Code-Review  0 : Geoff Lang
Code-Review  +1: Jamie Madill
Code-Review  +2: Zhenyao Mo
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : Ibf9adbf423cd9dee20ec45b8d2ea42bcfd9311be
Reviewed-at    : https://chromium-review.googlesource.com/269205

Track if a non-preprocessor token has been seen and validate #extension with it.

Reland: Only report a warning instead of an error.

BUG=angleproject:989
BUG=483252

src/compiler/preprocessor/DiagnosticsBase.cpp
src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/preprocessor/DirectiveParser.h

Original comment by bugdro...@chromium.org on 5 May 2015 at 6:50

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Jamie Madill <jmadill@chromium.org>
Commit : 4b6bfe102269658d7e868aaa434e9bf298073842

Code-Review  0 : Geoff Lang
Code-Review  +2: Jamie Madill
Verified     0 : Geoff Lang
Verified     +1: Jamie Madill
Commit Queue   : Chumped
Change-Id      : I3e1ad989af645194c8ee9b9847b2131e289d09e1
Reviewed-at    : https://chromium-review.googlesource.com/269403

Revert "Track if a non-preprocessor token has been seen and validate #extension 
with it."

Causing failures in the GLES2 CTS "build", related to extensions.

BUG=483252
BUG=angleproject:989

This reverts commit bbdb9e2259c38454be097ce01505db83db3ad7a8.

src/compiler/preprocessor/DiagnosticsBase.cpp
src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/preprocessor/DirectiveParser.h

Original comment by bugdro...@chromium.org on 5 May 2015 at 8:11

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Geoff Lang <geofflang@chromium.org>
Commit : 06e24a7e3d060ee2e2edee4f308d9ea82f41a3f7

Code-Review  0 : Geoff Lang, Zhenyao Mo
Code-Review  +2: Jamie Madill
Verified     0 : Jamie Madill, Zhenyao Mo
Verified     +1: Geoff Lang
Commit Queue   : Chumped
Change-Id      : Ife3e7759cdef6bc0f41cae3c58c307682b608279
Reviewed-at    : https://chromium-review.googlesource.com/269404

Track if a non-preprocessor token has been seen and validate #extension with it.

Reland: Only report a warning instead of an error.

BUG=angleproject:989
BUG=483252

src/compiler/preprocessor/DiagnosticsBase.cpp
src/compiler/preprocessor/DiagnosticsBase.h
src/compiler/preprocessor/DirectiveParser.cpp
src/compiler/preprocessor/DirectiveParser.h

Original comment by bugdro...@chromium.org on 6 May 2015 at 5:38