platform/upstream/SPIRV-Tools.git
8 years agoRev32: Remove DepthAny and mark Xfb as requiring TransformFeedback.
Lei Zhang [Wed, 23 Sep 2015 21:09:01 +0000 (17:09 -0400)]
Rev32: Remove DepthAny and mark Xfb as requiring TransformFeedback.

8 years agoFix Capability dependencies on capabilities, Rev32
David Neto [Wed, 23 Sep 2015 20:04:24 +0000 (16:04 -0400)]
Fix Capability dependencies on capabilities, Rev32

8 years agoAssembler support for new capabilities in Rev32
David Neto [Wed, 23 Sep 2015 19:44:02 +0000 (15:44 -0400)]
Assembler support for new capabilities in Rev32

8 years agoSupport Image operand MinLod
David Neto [Wed, 23 Sep 2015 18:32:37 +0000 (14:32 -0400)]
Support Image operand MinLod

8 years agoAssembler supports new builtins in Rev32
David Neto [Wed, 23 Sep 2015 19:35:27 +0000 (15:35 -0400)]
Assembler supports new builtins in Rev32

They are VertexIndex and InstanceIndex.

8 years agoAssembler support for Nontemporal memory access
David Neto [Wed, 23 Sep 2015 19:38:59 +0000 (15:38 -0400)]
Assembler support for Nontemporal memory access

8 years agoDefine two macros to simplify code for ExecutionMode operands.
Lei Zhang [Wed, 23 Sep 2015 19:42:18 +0000 (15:42 -0400)]
Define two macros to simplify code for ExecutionMode operands.

8 years agoFix permissions on test/TextToBinary.Barrier.cpp
David Neto [Wed, 23 Sep 2015 20:57:05 +0000 (16:57 -0400)]
Fix permissions on test/TextToBinary.Barrier.cpp

8 years agoSupport Dim InputTarget
David Neto [Wed, 23 Sep 2015 14:30:06 +0000 (10:30 -0400)]
Support Dim InputTarget

8 years agoSupport StorageClass PushConstant
David Neto [Wed, 23 Sep 2015 14:19:57 +0000 (10:19 -0400)]
Support StorageClass PushConstant

8 years agoSupport ExecutionMode IndependentForwardProgress
David Neto [Wed, 23 Sep 2015 14:16:39 +0000 (10:16 -0400)]
Support ExecutionMode IndependentForwardProgress

8 years agoAssembler test for Memory Semantics enum
David Neto [Wed, 23 Sep 2015 14:07:17 +0000 (10:07 -0400)]
Assembler test for Memory Semantics enum

Enables mask expression parsing for Memory Semantics arguments,
e.g. on OpMemoryBarrier.

8 years agoAll values now represent symbolic names instead of mixed with numeric.
Andrew Woloszyn [Tue, 22 Sep 2015 19:50:33 +0000 (15:50 -0400)]
All values now represent symbolic names instead of mixed with numeric.

Also removed un-necessary heap-allocation of spv_named_id_table.
This removed the necessity to expose a function to create/destroy it
and simplified the interface.

8 years agoRemove executable file mode bits on source files.
Lei Zhang [Wed, 23 Sep 2015 15:11:05 +0000 (11:11 -0400)]
Remove executable file mode bits on source files.

8 years agoUpdate to Rev32 headers. Part 1.
David Neto [Tue, 22 Sep 2015 20:23:06 +0000 (16:23 -0400)]
Update to Rev32 headers. Part 1.

Just enough fixes to code make it build and pass tests.

Core changes:
 - Fix spelling for: NoPerspective, NonWritable, NonReadable,
 - Remove NoStaticUse, RelaxedMask

GLSL changes:
 - Fixed spelling for: InverseSqrt, FaceForward, MatrixInverse,
   SmoothStep, FindILsb, FindSMsb, FindUMsb
 - Replace Mix with IMix and FMix
 - Remove AddCarry, SubBorrow, MulExtended

Replace header OpenCLLib.h with OpenCL.std.h

TODO:
 - Regenerate the core instruction syntax table (source/opcode.inc)
 - Add test coverage for new enums and instructions.

8 years agoSwitched VecTypeHint to take a LiteralNumber instead of an ID
Andrew Woloszyn [Tue, 22 Sep 2015 19:49:27 +0000 (15:49 -0400)]
Switched VecTypeHint to take a LiteralNumber instead of an ID

8 years agoRemoved duplicate code due to what looks like a merge issue
Andrew Woloszyn [Tue, 22 Sep 2015 15:54:48 +0000 (11:54 -0400)]
Removed duplicate code due to what looks like a merge issue

8 years agoCleanups for EnumCase
David Neto [Mon, 21 Sep 2015 21:16:45 +0000 (17:16 -0400)]
Cleanups for EnumCase

Make it a class, since it has non-trivial behaviour for converting
the enumerated value to a uint32_t value. (Comply with style guide.)

Merge EnumCaseWithOperands into EnumCase.

8 years agoPut the test fixture into spvtest namespace.
David Neto [Mon, 21 Sep 2015 15:36:44 +0000 (11:36 -0400)]
Put the test fixture into spvtest namespace.

All test utility code should go into the spvtest namespace.

8 years agoFix MSVC build for boolean opeartions on enums.
Andrew Woloszyn [Fri, 18 Sep 2015 17:41:49 +0000 (13:41 -0400)]
Fix MSVC build for boolean opeartions on enums.

8 years agoFix the Supported Features section.
David Neto [Fri, 18 Sep 2015 17:34:58 +0000 (13:34 -0400)]
Fix the Supported Features section.

8 years agoReadme: Assembler supports all of Rev31, for 32-bit code
David Neto [Fri, 18 Sep 2015 15:34:25 +0000 (11:34 -0400)]
Readme: Assembler supports all of Rev31, for 32-bit code

Also say that we have fixed problems building with MSVC 2013.
Also document other recent changes.

8 years agoPut const back on const char* in test case structs
David Neto [Fri, 18 Sep 2015 16:08:36 +0000 (12:08 -0400)]
Put const back on const char* in test case structs

8 years agoA bunch of small fixes to build in MSVC2013.
Andrew Woloszyn [Fri, 18 Sep 2015 15:50:54 +0000 (11:50 -0400)]
A bunch of small fixes to build in MSVC2013.

Fixed an issue where some of the tests were testing
the wrong word with the wrong operation. (| != ||).

Coalesced the many versions of EnumCase into one.
Added a get_value() to EnumCase to convert to a uint32_t.

Replaces ASSERT_TRUE(pointer), with ASSERT_NE(nullptr, pointer),
so that we do not do implicit pointer->bool conversion.

Removed const from some test structs since gtest needs to be
able to swap them.

8 years agoAssembler support for image operands from Rev31
David Neto [Fri, 18 Sep 2015 15:19:18 +0000 (11:19 -0400)]
Assembler support for image operands from Rev31

Rev32 and later add many more image operands, and
rearrange their values.

8 years agoLet EncodeAndDecodeSuccessfully remove preamble comments.
Lei Zhang [Thu, 17 Sep 2015 22:24:53 +0000 (18:24 -0400)]
Let EncodeAndDecodeSuccessfully remove preamble comments.

8 years agoClean up code for encoding literal operands.
Lei Zhang [Tue, 15 Sep 2015 17:36:21 +0000 (13:36 -0400)]
Clean up code for encoding literal operands.

8 years agoRemove SPV_OPERAND_TYPE_VARIABLE_MEMORY_ACCESS
David Neto [Thu, 17 Sep 2015 21:39:45 +0000 (17:39 -0400)]
Remove SPV_OPERAND_TYPE_VARIABLE_MEMORY_ACCESS

If a memory mask operand is present, it is a mask.  The mask appears
only once, so just use SPV_OPERAND_TYPE_OPTIONAL_MEMORY_MASK.

The "variable literals" aspect comes into play as follows: if the
Aligned bit is set in the mask, then the parser will be made to
expect the alignment value as a literal number operand that follows
the mask.  That is done through mask operand expansion.

8 years agoAssembler: mask expressions where 1 bits imply operands
David Neto [Thu, 17 Sep 2015 21:06:10 +0000 (17:06 -0400)]
Assembler: mask expressions where 1 bits imply operands

Properly support a memory access mask with a combination
of bits, including the Aligned bit. When the Aligned bit is
set, the parser should expect an alignment value literal operand.

8 years agoDocument the syntax of mask expressions
David Neto [Thu, 17 Sep 2015 18:02:11 +0000 (14:02 -0400)]
Document the syntax of mask expressions

8 years agoAssembler support for simple mask expressions
David Neto [Wed, 16 Sep 2015 22:32:54 +0000 (18:32 -0400)]
Assembler support for simple mask expressions

For example, support combining mask enums with "|",
such as "NotNaN|AllowRecip" for the fast math mode.

This is supported for mask values that don't modify the
expected operand pattern:
 - fast math mode
 - function control
 - loop control
 - selection control

TODO: disassembler support to print them as mask expressions.

8 years agoGeneralize spvOperandTableNameLookup to take string length.
David Neto [Wed, 16 Sep 2015 20:42:56 +0000 (16:42 -0400)]
Generalize spvOperandTableNameLookup to take string length.

This is preparation for parsing mask expressions.

8 years agoForbid !<integer> preceding or succeeding '='.
Dejan Mircevski [Fri, 11 Sep 2015 19:03:54 +0000 (15:03 -0400)]
Forbid !<integer> preceding or succeeding '='.

8 years agoAssembler test for Dim, ImageFormat enums.
David Neto [Wed, 16 Sep 2015 19:56:43 +0000 (15:56 -0400)]
Assembler test for Dim, ImageFormat enums.

Adds SPV_OPERAND_TYPE_SAMPLER_IMAGE_FORMAT, and the
translation tables for its values from the spv::ImageFormat values.

8 years agoDocument inability to use names from 3.12, 1.13
David Neto [Wed, 16 Sep 2015 20:16:22 +0000 (16:16 -0400)]
Document inability to use names from 3.12, 1.13

You can't use names from 3.12 Image Channel Order and
3.13 Image Channel Data Type since in the intstruction grammar,
they are only used as return values, but never named arguments
to instructions.

8 years agoUse generalized EnumCase in AccessQualifier assembly tests
David Neto [Wed, 16 Sep 2015 19:29:02 +0000 (15:29 -0400)]
Use generalized EnumCase in AccessQualifier assembly tests

This is in preparation for coming tests that will also
use the templated EnumCase instead of making their
own structs.

Also reformat AccessQualifier test.

8 years agoHandle IDs among !<integer> operands.
Dejan Mircevski [Fri, 11 Sep 2015 20:34:49 +0000 (16:34 -0400)]
Handle IDs among !<integer> operands.

8 years agoAssembler test for SamplerAddressingMode, SamplerFilterMode
David Neto [Tue, 15 Sep 2015 14:27:22 +0000 (10:27 -0400)]
Assembler test for SamplerAddressingMode, SamplerFilterMode

Uses OpConstantSampler instruction.

8 years agoAssembler test for Storage Class enum values
David Neto [Tue, 15 Sep 2015 20:41:38 +0000 (16:41 -0400)]
Assembler test for Storage Class enum values

This covers the storage classes in SPIR-V Rev31.  Rev32 has more.

8 years agoSupport multiple word literal numbers as constants.
Lei Zhang [Mon, 14 Sep 2015 19:22:23 +0000 (15:22 -0400)]
Support multiple word literal numbers as constants.

Add a new operand type SPV_OPERAND_TYPE_MULTIWORD_LITERAL_NUMBER
to represent those operands that can expand into multiple words.
Now only OpConstant and OpSpecConstant have such kind of operand.

8 years agoUpdate CHANGES and Future Work
David Neto [Tue, 15 Sep 2015 13:48:10 +0000 (09:48 -0400)]
Update CHANGES and Future Work

8 years agoAssembler test for ExecutionScope, with OpGroupIAdd
David Neto [Mon, 14 Sep 2015 21:07:11 +0000 (17:07 -0400)]
Assembler test for ExecutionScope, with OpGroupIAdd

Use spvOperandTypeStr to generalize the error message
for failure to parse an ID.
Extend spvOperandTypeStr to cover SPV_OPERAND_TYPE_EXECUTION_SCOPE.

8 years agoAssembler test for OpTypePipe
David Neto [Sat, 12 Sep 2015 02:35:04 +0000 (22:35 -0400)]
Assembler test for OpTypePipe

Covers all AccessQualifier enums.

In Rev32, OpTypePipe no longer has a type argument.
Added TODOs for this.

8 years agoAssembler test for single-valued Memory Access flag.
David Neto [Mon, 14 Sep 2015 19:08:48 +0000 (15:08 -0400)]
Assembler test for single-valued Memory Access flag.

8 years agoAssembler test for single-valued FunctionControl mask
David Neto [Mon, 14 Sep 2015 18:50:37 +0000 (14:50 -0400)]
Assembler test for single-valued FunctionControl mask

Fixed name of "Inline" enumerant.

Support for combinations of function control masks should come later.

8 years agoRemove useless variable.
Lei Zhang [Mon, 14 Sep 2015 19:26:12 +0000 (15:26 -0400)]
Remove useless variable.

8 years agoAssembler test for single-valued LoopControl mask
David Neto [Mon, 14 Sep 2015 18:33:08 +0000 (14:33 -0400)]
Assembler test for single-valued LoopControl mask

Support for combining masks should come later.

8 years agoAssembler test for single-valued SelectionControl mask
David Neto [Mon, 14 Sep 2015 18:28:33 +0000 (14:28 -0400)]
Assembler test for single-valued SelectionControl mask

Support for combining masks should come later.

8 years agoClarify the syntax. Some named enumerants are unusable
David Neto [Mon, 14 Sep 2015 17:56:45 +0000 (13:56 -0400)]
Clarify the syntax. Some named enumerants are unusable

You can't use a named enumerant if it's only meaningful
in an operand supplied as an ID to a target instruction.
The place where you'd use the name is something like an
OpConstant, but there's not enough context to bring those
names into scope, unless you're willing to tolerate
potential collisions.

Occurs for the names in:
- 3.25 Memory Semantics
- 3.27 Scope ID
- 3.29 Kernel Enqueue Flags
- 3.30 Kernel Profiling Info

8 years agoSimplify code for handling literals in disassembler.
Lei Zhang [Mon, 14 Sep 2015 16:26:15 +0000 (12:26 -0400)]
Simplify code for handling literals in disassembler.

8 years agoMove the syntax description into its own file
David Neto [Mon, 14 Sep 2015 17:05:53 +0000 (13:05 -0400)]
Move the syntax description into its own file

8 years agoAdd patch for generating opcode.inc syntax table.
David Neto [Mon, 14 Sep 2015 16:09:17 +0000 (12:09 -0400)]
Add patch for generating opcode.inc syntax table.

8 years agoRun clang-format.
Lei Zhang [Mon, 14 Sep 2015 14:05:37 +0000 (10:05 -0400)]
Run clang-format.

8 years agoAssembler test for OpExecutionMode
David Neto [Fri, 11 Sep 2015 17:55:57 +0000 (13:55 -0400)]
Assembler test for OpExecutionMode

8 years agoAssembler test for OpEntryPoint
David Neto [Fri, 11 Sep 2015 17:36:02 +0000 (13:36 -0400)]
Assembler test for OpEntryPoint

8 years agoSimplify format indication in CompileSuccesfully().
Dejan Mircevski [Sat, 12 Sep 2015 00:10:54 +0000 (20:10 -0400)]
Simplify format indication in CompileSuccesfully().

8 years agoLimit the use of spvCheck and spvCheckReturn to validator.
Lei Zhang [Fri, 11 Sep 2015 18:31:27 +0000 (14:31 -0400)]
Limit the use of spvCheck and spvCheckReturn to validator.

spvCheck is indeed just an if-statement. Defining such a macro
doesn't help much.

8 years agoUpdate readme with latest news.
David Neto [Fri, 11 Sep 2015 19:16:43 +0000 (15:16 -0400)]
Update readme with latest news.

8 years agoMove bitwisecast.h to source/ and add include guard.
Lei Zhang [Fri, 11 Sep 2015 17:45:18 +0000 (13:45 -0400)]
Move bitwisecast.h to source/ and add include guard.

8 years agoFix an infinite loop during message generation.
David Neto [Fri, 11 Sep 2015 16:04:03 +0000 (12:04 -0400)]
Fix an infinite loop during message generation.

Rename getWord to spvGetWord and unit test it.

8 years agoAdd option to change assembly syntax format in the dis tool.
Lei Zhang [Fri, 11 Sep 2015 15:56:09 +0000 (11:56 -0400)]
Add option to change assembly syntax format in the dis tool.

8 years agoHandle operands when OpCode is !<integer>.
Dejan Mircevski [Fri, 11 Sep 2015 04:43:11 +0000 (00:43 -0400)]
Handle operands when OpCode is !<integer>.

8 years agoAdd TODO for capability dependencies for Rev32+
David Neto [Fri, 11 Sep 2015 16:15:58 +0000 (12:15 -0400)]
Add TODO for capability dependencies for Rev32+

8 years agoAssembler test for OpMemoryModel
David Neto [Fri, 11 Sep 2015 15:28:27 +0000 (11:28 -0400)]
Assembler test for OpMemoryModel

8 years agoAdd library function parameter to set assembly format for disassembler.
Lei Zhang [Fri, 11 Sep 2015 15:01:59 +0000 (11:01 -0400)]
Add library function parameter to set assembly format for disassembler.

8 years agoAdd option to change assembly syntax format in the as tool.
Lei Zhang [Thu, 10 Sep 2015 21:42:41 +0000 (17:42 -0400)]
Add option to change assembly syntax format in the as tool.

8 years agoAssembler tests for OpCapability.
David Neto [Thu, 10 Sep 2015 20:39:09 +0000 (16:39 -0400)]
Assembler tests for OpCapability.

Adds test file for instructions in the Mode-Setting section
of the SPIR-V spec.

8 years agoAssembler test for LinkageAttributes decorations
David Neto [Thu, 10 Sep 2015 19:51:57 +0000 (15:51 -0400)]
Assembler test for LinkageAttributes decorations

8 years agoAssembler tests for all decorations except Linkage attributes
David Neto [Thu, 10 Sep 2015 17:23:11 +0000 (13:23 -0400)]
Assembler tests for all decorations except Linkage attributes

Fixes typos in various parser tables.

Updates readme.md with the fixes.

8 years agoRun clang-format.
Lei Zhang [Thu, 10 Sep 2015 21:07:21 +0000 (17:07 -0400)]
Run clang-format.

8 years agoAdd an API parameter to choose assembly syntax format for assembler.
Lei Zhang [Thu, 10 Sep 2015 18:00:00 +0000 (14:00 -0400)]
Add an API parameter to choose assembly syntax format for assembler.

Added a new enum for supported assembly syntax formats:
Canonical Assembly Format (CAF) and Assignment Assembly Format (AAF).

Updated assembler interface functions to support choice of assembly
syntax format.

8 years agoSimplify checking for !<integer> first word.
Dejan Mircevski [Thu, 10 Sep 2015 18:55:33 +0000 (14:55 -0400)]
Simplify checking for !<integer> first word.

8 years agoAssembler test for OpSourceExtension.
David Neto [Wed, 9 Sep 2015 22:10:01 +0000 (18:10 -0400)]
Assembler test for OpSourceExtension.

Add test utility function MakeVector(std::string) to encode
a string as a vector of 32-bit words, as per the SPIR-V literal
string encoding.

8 years agoAdded missing diagnostic when disassembling empty file.
Andrew Woloszyn [Thu, 10 Sep 2015 14:28:22 +0000 (10:28 -0400)]
Added missing diagnostic when disassembling empty file.

Added diagnostic messages for what should be an internal failure
that never happens. I figure if we return "failed" for something the
user cannot control we should print a message for it.

8 years agoTest assembly of OpSource using all language enums
David Neto [Wed, 9 Sep 2015 14:58:02 +0000 (10:58 -0400)]
Test assembly of OpSource using all language enums

Adds a file to test assembly of instructions in the "Debug" section
of the SPIR-V spec.

8 years agoUpdate CHANGES in the readme.md
David Neto [Wed, 9 Sep 2015 20:54:39 +0000 (16:54 -0400)]
Update CHANGES in the readme.md

8 years agoAvoid undefined pointer given to spvTextDestroy
David Neto [Tue, 8 Sep 2015 19:38:55 +0000 (15:38 -0400)]
Avoid undefined pointer given to spvTextDestroy

The undefined pointer might get through to the call
to spvTextDestroy if the test fails on an earlier step.
In that case I just want to see the test failure, and
not a test failure followed by undefined behaviour.

8 years agoFix build on MSC
Pyry Haulos [Wed, 9 Sep 2015 20:35:53 +0000 (13:35 -0700)]
Fix build on MSC

Visual C++ compiler doesn't allow ternary select where type depends on
condition even if there is a user-defined conversion operator to a common
type.

8 years agoAdd OpNop, OpUndef tests for spvTextToBinary
David Neto [Tue, 8 Sep 2015 21:11:40 +0000 (17:11 -0400)]
Add OpNop, OpUndef tests for spvTextToBinary

Add text_fixture::TextToBinaryTestBase::CompiledInstructions,
to more easily just examine the generated instructions by skipping
over the header.

Add spvtest::MakeInstruction utility function to easily generate
a vector containing an opcode and its operands.

8 years agoFix interface function calls to the new API.
Lei Zhang [Wed, 9 Sep 2015 19:44:32 +0000 (15:44 -0400)]
Fix interface function calls to the new API.

8 years agoPreserve float values during encoding and decoding roundtrip.
Lei Zhang [Wed, 9 Sep 2015 14:36:48 +0000 (10:36 -0400)]
Preserve float values during encoding and decoding roundtrip.

8 years agoRemoved the ambiguity in the API for cleaning input vs output data.
Andrew Woloszyn [Wed, 9 Sep 2015 17:04:32 +0000 (13:04 -0400)]
Removed the ambiguity in the API for cleaning input vs output data.

Previous the api used spv_text_t and spv_binary_t for both input
and output, but depending on the usage, you either MUST
call spvBinaryDestroy or you MUST NOT call spvBinaryDestroy on the
pointer.

8 years agoSimplify uses of spvBinaryDestroy in tests
David Neto [Tue, 8 Sep 2015 19:29:22 +0000 (15:29 -0400)]
Simplify uses of spvBinaryDestroy in tests

Always try to destroy the binary during common methods
of test fixtures.  This is safe if no other code in the test
attempted to destroy the binary.

Take advantage of the fact spvBinaryDestroy is a no-op on a nullptr,
by eliminating the null pointer check in the caller.

8 years agospvTextDestroy is no-op on nullptr.
David Neto [Tue, 8 Sep 2015 19:34:26 +0000 (15:34 -0400)]
spvTextDestroy is no-op on nullptr.

8 years agoFix spvBinaryDestroy test to use an API-created object
David Neto [Wed, 9 Sep 2015 15:35:01 +0000 (11:35 -0400)]
Fix spvBinaryDestroy test to use an API-created object

8 years agoEnable OpcodeMake test, by sampling values.
David Neto [Tue, 8 Sep 2015 13:55:52 +0000 (09:55 -0400)]
Enable OpcodeMake test, by sampling values.

The previous version of the test was disabled, presumably
because it took to long to run.

8 years agospvBinaryDestroy(nullptr) is a no-op.
David Neto [Tue, 8 Sep 2015 19:15:23 +0000 (15:15 -0400)]
spvBinaryDestroy(nullptr) is a no-op.

8 years agoRemove spvOpcodeIsVariable
David Neto [Tue, 8 Sep 2015 18:59:57 +0000 (14:59 -0400)]
Remove spvOpcodeIsVariable

Nothing was using it.

8 years agoFix -p on disassembler.
David Neto [Tue, 8 Sep 2015 15:51:54 +0000 (11:51 -0400)]
Fix -p on disassembler.

spvTextToBinary fails if printing option is on
*and* you send in a non-null pointer-to-spv_text.

8 years agoAdd hex-format tests for !<integer>.
Dejan Mircevski [Tue, 8 Sep 2015 18:20:12 +0000 (14:20 -0400)]
Add hex-format tests for !<integer>.

8 years agoAdd invalid-operand tests for !<integer>.
Dejan Mircevski [Tue, 8 Sep 2015 18:17:14 +0000 (14:17 -0400)]
Add invalid-operand tests for !<integer>.

8 years agoMake all SpirvVectors const in ImmediateInt.cpp.
Dejan Mircevski [Tue, 8 Sep 2015 16:14:07 +0000 (12:14 -0400)]
Make all SpirvVectors const in ImmediateInt.cpp.

8 years agoTests for parsing recognizable words after !<integer>.
Dejan Mircevski [Tue, 8 Sep 2015 15:41:36 +0000 (11:41 -0400)]
Tests for parsing recognizable words after !<integer>.

8 years agoAdd disabled test to check float value parsing
David Neto [Fri, 4 Sep 2015 18:55:28 +0000 (14:55 -0400)]
Add disabled test to check float value parsing

Disabled for now because float parsing is broken.

8 years agoRemove SPV_OPERAND_TYPE_ELLIPSIS
David Neto [Tue, 1 Sep 2015 14:01:53 +0000 (10:01 -0400)]
Remove SPV_OPERAND_TYPE_ELLIPSIS

8 years agoAdded option to only compile spirv library instead of all binaries as well
Andrew Woloszyn [Fri, 4 Sep 2015 19:13:57 +0000 (15:13 -0400)]
Added option to only compile spirv library instead of all binaries as well

8 years agoPrint diagnostics at the beginning of input.
David Neto [Tue, 1 Sep 2015 22:05:14 +0000 (18:05 -0400)]
Print diagnostics at the beginning of input.

A spv_diagnostic_t value knows if the source is textual rather
than binary.

8 years agoAvoid "operands" in the !<immediate> explanation.
Dejan Mircevski [Thu, 3 Sep 2015 20:29:27 +0000 (16:29 -0400)]
Avoid "operands" in the !<immediate> explanation.

Also declare "!<integer> = OpCode" legal.

8 years agoDocument current support and known bugs.
David Neto [Fri, 4 Sep 2015 18:31:01 +0000 (14:31 -0400)]
Document current support and known bugs.

8 years agoTest consecutive opcodes being !<integer>.
Dejan Mircevski [Thu, 3 Sep 2015 21:42:50 +0000 (17:42 -0400)]
Test consecutive opcodes being !<integer>.