diff options
author | Yvan Roux <yvan.roux@linaro.org> | 2017-07-03 13:08:24 +0200 |
---|---|---|
committer | Yvan Roux <yvan.roux@linaro.org> | 2017-07-04 08:16:15 +0000 |
commit | 5b4cc00c47d3eac2119acc3099cd746be490094e (patch) | |
tree | 3b2dcae0e1086cf8b9830d03ed20edc8f1a92240 /gcc | |
parent | 62810020c9fb7fdb03c18b46ccca4c9a0841eb82 (diff) |
gcc/testsuite/
Backport from trunk r248326.
2017-05-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
* gcc.target/arm/movsi_movt.c: New test.
* gcc.target/arm/movdi_movt.c: New test.
Change-Id: I57d45e31f2d9ddd202a89b19914c12e722514bc5
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gcc.target/arm/movdi_movt.c | 18 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/arm/movsi_movt.c | 10 |
2 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/arm/movdi_movt.c b/gcc/testsuite/gcc.target/arm/movdi_movt.c new file mode 100644 index 00000000000..e2a28ccbd99 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/movdi_movt.c @@ -0,0 +1,18 @@ +/* { dg-do compile { target { arm_cortex_m && { arm_thumb2_ok || arm_thumb1_movt_ok } } } } */ +/* { dg-options "-O2 -mslow-flash-data" } */ + +unsigned long long +movdi_1 (int a) +{ + return 0xF0F00000LLU; +} + +unsigned long long +movdi_2 (int a) +{ + return 0xF0F0000000000000LLU; +} + +/* Accept r1 because big endian targets put the low bits in the highest + numbered register of a pair. */ +/* { dg-final { scan-assembler-times "movt\tr\[01\], 61680" 2 } } */ diff --git a/gcc/testsuite/gcc.target/arm/movsi_movt.c b/gcc/testsuite/gcc.target/arm/movsi_movt.c new file mode 100644 index 00000000000..3cf46e2fd17 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/movsi_movt.c @@ -0,0 +1,10 @@ +/* { dg-do compile { target { arm_cortex_m && { arm_thumb2_ok || arm_thumb1_movt_ok } } } } */ +/* { dg-options "-O2 -mslow-flash-data" } */ + +unsigned +movsi (void) +{ + return 0xF0F00000U; +} + +/* { dg-final { scan-assembler-times "movt\tr0, 61680" 1 } } */ |