Lioncash
6fd44e494c
Pass std::string by value where applicable.
...
By taking the std::string by value in the constructor, this allows for
certain situations where copies can be elided entirely (when moving an
instance into the constructor)
e.g.
std::string var = ...
...
... = LiteralString(std::move(var)) // Or whatever other initialization
// is done.
No copy will be done in this case, the move transfers it into the
constructor, and then the move within the initializer list transfers it
into the member variable.
tl;dr: This allows the calling code to potentially construct less
std::string instances by allowing moving into the parameters themselves.
2019-03-14 04:30:39 -03:00
ReinUsesLisp
d5c37d242a
Merge pull request #11 from lioncash/default
...
operand: Append default to the default constructor
2019-03-14 03:53:31 -03:00
Lioncash
260183a2c7
operand: Append default to the default constructor
...
Makes it consistent with the destructor.
2019-03-14 02:50:07 -04:00
ReinUsesLisp
3ec2231f9a
Merge pull request #9 from lioncash/unused
...
sirit: Remove unused variable in AddAnnotation()
2019-03-14 03:49:20 -03:00
Lioncash
984b731e17
op: Amend constructor initializer list order
...
Amends the order of the initializer list to be structured the same way
the members are ordered.
Silences a -Wreorder warning.
2019-03-14 02:45:57 -04:00
Lioncash
1081bcdda9
sirit: Remove unused variable in AddAnnotation()
...
id isn't used within AddAnnotation, so this can be removed.
2019-03-14 02:43:05 -04:00
Lioncash
11b7743c29
src: Amend missing override specifiers
2019-03-14 02:25:57 -04:00
ReinUsesLisp
057b100a68
Assert on empty Emit
2019-03-13 19:20:29 -03:00
ReinUsesLisp
1c06f8530e
Remove Op prefix on Type instructions
2019-03-13 18:32:38 -03:00
ReinUsesLisp
4b1c1d1e38
Add ellipsis overloads for instructions ending in vectors
2019-03-11 04:38:09 -03:00
ReinUsesLisp
ba92d8ea08
Update README.md and remove automatic capabilities addition
2019-03-11 03:41:44 -03:00
ReinUsesLisp
73595f4588
Change clang-format settings
2019-03-11 03:26:21 -03:00
ReinUsesLisp
38838c9a9d
Sort macro defitions for image instructions
2019-03-11 03:19:59 -03:00
ReinUsesLisp
88191480a8
Remove undefined behaviour from literal number
2019-03-11 03:19:59 -03:00
ReinUsesLisp
b23716087a
Add OpExtension
2019-03-08 21:09:11 -03:00
ReinUsesLisp
2b0a59d890
Add OpSwitch
2019-01-05 23:58:43 -03:00
ReinUsesLisp
e7971b4451
Add OpExecutionMode
2018-12-04 21:30:32 -03:00
ReinUsesLisp
3641e1de45
Add OpKill
2018-12-02 22:57:55 -03:00
ReinUsesLisp
93d42e62da
Remove WriteEnum abstraction
2018-11-16 04:21:37 -03:00
ReinUsesLisp
9d787510d3
Fixup assert formatting
2018-11-16 04:21:01 -03:00
ReinUsesLisp
f259019494
Rename "insts" directory to "instructions"
2018-11-16 04:15:48 -03:00
ReinUsesLisp
f5944d61a6
Upgrade from LGPLv2.1 to LGPLv3
2018-11-16 04:10:10 -03:00
ReinUsesLisp
174263d906
Merge pull request #5 from FernandoS27/image
...
Implemented Image Instructions
2018-11-13 20:06:13 -03:00
FernandoS27
0318449d65
Implemented Image Instructions
2018-11-13 19:04:43 -04:00
ReinUsesLisp
30dbb951dd
Fixup empty GLSL extension creation
2018-11-13 19:30:54 -03:00
FernandoS27
a6c435dcb7
Implement main conversion instructions
2018-11-12 14:37:54 -04:00
FernandoS27
aa2eaab480
Implemented ALL the logical instructions
2018-11-11 21:14:59 -04:00
ReinUsesLisp
bdf538bd64
Merge pull request #3 from FernandoS27/bit
...
Implemented the rest of the bitwise operations
2018-11-11 21:06:01 -03:00
FernandoS27
26a40708d7
Implemented a bunch of glsl functions
2018-11-11 20:03:29 -04:00
FernandoS27
aa3d1adbbd
Implemented the rest of the bitwise operations
2018-11-11 18:51:08 -04:00
FernandoS27
c2646f3b4c
Added more arithmetic instructions
2018-11-10 23:15:02 -04:00
ReinUsesLisp
8f17ad84ba
Annotations return target and add OpUMod
2018-11-06 04:50:10 -03:00
ReinUsesLisp
c502cfd4b2
Add OpFDiv
2018-11-04 03:19:02 -03:00
ReinUsesLisp
27a0b4f17e
Add OpFNegate
2018-11-04 03:11:25 -03:00
ReinUsesLisp
6742afd6dd
Add support for GLSLstd450 and OpFAbs
2018-11-04 03:03:06 -03:00
ReinUsesLisp
44043bca56
Add OpCompositeConstruct
2018-11-04 02:38:13 -03:00
ReinUsesLisp
5830eca337
Remove Op* prefix for constants
2018-11-03 21:32:37 -03:00
ReinUsesLisp
1cd11815db
Add OpMemberName
2018-11-03 21:29:24 -03:00
ReinUsesLisp
ad963b6520
Add OpCompositeExtract
2018-11-03 20:41:03 -03:00
ReinUsesLisp
65ccda50c7
Debug fixups
2018-11-03 03:40:20 -03:00
ReinUsesLisp
96e8290eef
Add OpString
2018-11-03 01:14:29 -03:00
ReinUsesLisp
d4c95981b5
Add OpIAdd and OpBitwiseAnd
2018-11-03 00:52:44 -03:00
ReinUsesLisp
15a4d3c0d4
Add OpArithmetic
2018-11-02 23:49:41 -03:00
ReinUsesLisp
c29314ad14
Add OpShift arithmetic and logical operations
2018-11-02 23:44:09 -03:00
ReinUsesLisp
9c7f96a809
Add OpLogicalNot and OpBitcast
2018-11-02 23:24:10 -03:00
ReinUsesLisp
4f66fb18e9
Add version select and OpLogicalNot
2018-11-02 13:38:33 -03:00
ReinUsesLisp
4043020f45
Add OpFunctionCall
2018-11-01 22:16:17 -03:00
ReinUsesLisp
798f8a5866
Add OpReturnValue
2018-11-01 22:16:17 -03:00
ReinUsesLisp
91e0769db5
Fixup build issues
2018-11-01 05:13:30 -03:00
ReinUsesLisp
f3a63aa55f
Use unique_ptr for instruction implementations
2018-11-01 00:02:45 -03:00