summaryrefslogtreecommitdiff
path: root/source/slang/slang-emit-source-writer.cpp
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2020-01-30 16:28:50 -0500
committerGitHub <noreply@github.com>2020-01-30 16:28:50 -0500
commit5942ff81d9a63ee1e37ba81172ea579646be774e (patch)
tree2a4cdb5851348f11a8fcde1605e81c29c1227727 /source/slang/slang-emit-source-writer.cpp
parent415409fc10cfd0d6b2eb805df8f37bdabc4f2405 (diff)
Support for 64 bit integer types (#1191)
* * For integer literals add postfix, and use unsigned/signed output appropriately * Extend GLSL extension handling by type, and for adding 64 bit int extensions * Added tests for int/uint64 types * Add explicit Int/UInt64 emit functions to avoid ambiguity.
Diffstat (limited to 'source/slang/slang-emit-source-writer.cpp')
-rw-r--r--source/slang/slang-emit-source-writer.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/source/slang/slang-emit-source-writer.cpp b/source/slang/slang-emit-source-writer.cpp
index 5661a48bb..8deecc846 100644
--- a/source/slang/slang-emit-source-writer.cpp
+++ b/source/slang/slang-emit-source-writer.cpp
@@ -197,6 +197,20 @@ void SourceWriter::emit(UInt value)
emit(buffer);
}
+void SourceWriter::emitUInt64(uint64_t value)
+{
+ char buffer[32];
+ sprintf(buffer, "%llu", (unsigned long long)(value));
+ emit(buffer);
+}
+
+void SourceWriter::emitInt64(int64_t value)
+{
+ char buffer[32];
+ sprintf(buffer, "%lld", (long long int)value);
+ emit(buffer);
+}
+
void SourceWriter::emit(int value)
{
char buffer[16];