aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c')
-rw-r--r--gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c b/gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c
new file mode 100644
index 000000000..7e54aae3e
--- /dev/null
+++ b/gcc-4.4.3/gcc/testsuite/gcc.target/mips/truncate-1.c
@@ -0,0 +1,20 @@
+/* { dg-options "-O -mgp64" } */
+
+#define TEST(ID, TYPE, SHIFT) \
+ int __attribute__((nomips16)) \
+ f##ID (unsigned long long y) \
+ { \
+ return (TYPE) ((TYPE) (y >> SHIFT) + 1); \
+ }
+
+TEST (1, int, 32)
+TEST (2, short, 32)
+TEST (3, char, 32)
+TEST (4, int, 33)
+TEST (5, short, 33)
+TEST (6, char, 33)
+TEST (7, int, 61)
+TEST (8, short, 61)
+TEST (9, char, 61)
+
+/* { dg-final { scan-assembler-not "\tsll\t\[^\n\]*,0" } } */