SPIRV-Tools/test
David Neto d9ad050a95 spvBinaryParse: fix overruns, handle image format
Add unit tests for all diagnostics issued by spvBinaryParse.

Handle image format operands in the binary parser and the
disassembler.

Document that the callback function pointers can be null,
in which case they are ignored.

Detect exhaustion of input when parsing an operand,
to avoid buffer overruns on some invalid input cases.

Fix the description strings for some operand types.
Make the diagnostic messages for those operand types
consistent between the assembler and binary parser.

Fixes https://github.com/KhronosGroup/SPIRV-Tools/issues/29
2015-11-30 10:44:23 -05:00
..
AssemblyContext.cpp Support strings with up to 65535 chars, and null. 2015-10-26 12:55:33 -04:00
AssemblyFormat.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
BinaryDestroy.cpp Use opaque context object to hold SPIR-V info tables. 2015-11-12 16:27:51 -05:00
BinaryEndianness.cpp Fixed permissions 2015-11-11 12:12:16 -05:00
BinaryHeaderGet.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
BinaryParse.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
BinaryToText.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
BinaryToText.Literal.cpp Add missing copyright. 2015-11-12 09:43:03 -05:00
Comment.cpp Empty assembly text compiles to no instructions. 2015-11-10 15:56:57 -05:00
DiagnosticPrint.cpp Print diagnostics at the beginning of input. 2015-10-26 12:52:01 -04:00
DiagnosticStream.cpp Put DiagnosticStream and clr exports in libspirv namespace 2015-11-20 10:46:42 -05:00
ExtInst.OpenCL.std.cpp Update to 1.0 Rev 2 work-in-progress headers 2015-11-12 09:43:12 -05:00
ExtInstGLSLstd450.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
FixWord.cpp Support multiple word literal numbers as constants. 2015-10-26 12:55:33 -04:00
GeneratorMagicNumber.cpp Register Glslang tool 2015-11-13 12:35:47 -06:00
HexFloat.cpp Removed executable flag from HexFloat.cpp. 2015-11-19 10:12:44 -05:00
ImmediateInt.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
LibspirvMacros.cpp Run clang-format. 2015-10-26 12:54:39 -04:00
main.cpp Run clang-format to enforce Google style globally. 2015-11-10 15:56:47 -05:00
NamedId.cpp Use test fixture for a test. 2015-11-19 11:39:11 -05:00
OpcodeMake.cpp Use spirv.h instead of spirv.hpp. 2015-11-02 13:52:20 -05:00
OpcodeRequiresCapabilities.cpp Add GeometryStreams capability 2015-11-12 16:27:51 -05:00
OpcodeSplit.cpp Use spirv.h instead of spirv.hpp. 2015-11-02 13:52:20 -05:00
OpcodeTableGet.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
operand-class-test-coverage.csv Add negative-coverage location to operand-class-test-coverage.csv. 2015-10-26 12:55:33 -04:00
Operand.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
OperandCapabilities.cpp Remove old names for enums: memory semantics, scope ID 2015-11-18 15:56:38 -05:00
OperandPattern.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TestFixture.h Use opaque context object to hold SPIR-V info tables. 2015-11-12 16:27:51 -05:00
TextAdvance.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TextDestroy.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TextLiteral.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TextStartsNewInst.cpp Run clang-format to enforce Google style globally. 2015-11-10 15:56:47 -05:00
TextToBinary.Annotation.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
TextToBinary.Barrier.cpp Update to 1.0 Rev 2 work-in-progress headers 2015-11-12 09:43:12 -05:00
TextToBinary.Constant.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
TextToBinary.ControlFlow.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
TextToBinary.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TextToBinary.Debug.cpp Update to 1.0 Rev 2 work-in-progress headers 2015-11-12 09:43:12 -05:00
TextToBinary.DeviceSideEnqueue.cpp Use spirv.h instead of spirv.hpp. 2015-11-02 13:52:20 -05:00
TextToBinary.Extension.cpp Fix handling of OpExtInstImport 2015-11-10 15:58:07 -05:00
TextToBinary.Function.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
TextToBinary.Group.cpp Update to 1.0 Rev 2 work-in-progress headers 2015-11-12 09:43:12 -05:00
TextToBinary.Image.cpp Support OpImage 2015-11-12 16:27:51 -05:00
TextToBinary.Literal.cpp Simplify some tests 2015-11-12 16:27:46 -05:00
TextToBinary.Memory.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
TextToBinary.Miscellaneous.cpp Use spirv.h instead of spirv.hpp. 2015-11-02 13:52:20 -05:00
TextToBinary.ModeSetting.cpp Update to 1.0 Rev 2 work-in-progress headers 2015-11-12 09:43:12 -05:00
TextToBinary.TypeDeclaration.cpp spvBinaryParse: fix overruns, handle image format 2015-11-30 10:44:23 -05:00
TextWordGet.cpp Clean up CMake configuration and address compiler warnings. 2015-11-18 16:32:41 -05:00
UnitSPIRV.cpp Assembler test for OpSourceExtension. 2015-10-26 12:54:39 -04:00
UnitSPIRV.h Several unit tests for spvBinaryParse 2015-11-27 10:19:06 -05:00
Validate.cpp Use opaque context object to hold SPIR-V info tables. 2015-11-12 16:27:51 -05:00
ValidateID.cpp Use opaque context object to hold SPIR-V info tables. 2015-11-12 16:27:51 -05:00