summaryrefslogtreecommitdiff
path: root/testsuite/tests/codeGen
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2015-06-14 16:42:03 +0100
committerSergei Trofimovich <siarheit@google.com>2015-06-14 16:42:53 +0100
commita5084557b0b30faf3f89386ee6ee5a308dae51b1 (patch)
treebee0c708d008f0d3c65984b7a3fd162b2f1f36cb /testsuite/tests/codeGen
parent6e542a62e070b113f95908315c81d01c300d8803 (diff)
downloadhaskell-a5084557b0b30faf3f89386ee6ee5a308dae51b1.tar.gz
UNREG: fix pprHexVal to emit zeros (#10518)
jakzale on #ghc reported a build failure when ported GHC on a new target. The code 'pprHexVal (2^32) W32' emits '0xU' which is invalid C. I've introduced bug in 43f1b2ecd1960fa7377cf55a2b97c66059a701ef when added literal truncation. That truncation is a new source of zeros. Signed-off-by: Sergei Trofimovich <siarheit@google.com> Test Plan: added test and tested on UNREG ghc Reviewers: austin Reviewed By: austin Subscribers: thomie, bgamari Differential Revision: https://phabricator.haskell.org/D987 GHC Trac Issues: #10518
Diffstat (limited to 'testsuite/tests/codeGen')
-rw-r--r--testsuite/tests/codeGen/should_compile/T10518.cmm5
-rw-r--r--testsuite/tests/codeGen/should_compile/all.T1
2 files changed, 6 insertions, 0 deletions
diff --git a/testsuite/tests/codeGen/should_compile/T10518.cmm b/testsuite/tests/codeGen/should_compile/T10518.cmm
new file mode 100644
index 0000000000..966cd4ab53
--- /dev/null
+++ b/testsuite/tests/codeGen/should_compile/T10518.cmm
@@ -0,0 +1,5 @@
+foo() {
+ bits64 a;
+ a = 0x10000000000000000; // overflows 64 bits
+ return (a);
+}
diff --git a/testsuite/tests/codeGen/should_compile/all.T b/testsuite/tests/codeGen/should_compile/all.T
index e06cead7c3..c78f9ac21a 100644
--- a/testsuite/tests/codeGen/should_compile/all.T
+++ b/testsuite/tests/codeGen/should_compile/all.T
@@ -30,3 +30,4 @@ test('debug', extra_clean(['debug.cmm']),
run_command,
['$MAKE -s --no-print-directory debug'])
test('T9964', normal, compile, ['-O'])
+test('T10518', [cmm_src], compile, [''])