blob: a97654c0f043e0ec25ca761529f3a276bbae36fb [file] [log] [blame]
Saleem Abdulrasool905b6d192014-04-03 23:47:24 +00001; RUN: llc -mtriple=thumb-eabi -mcpu=arm1156t2-s -mattr=+thumb2 %s -o - | FileCheck %s
David Goodwin5960e6d2009-06-26 18:07:25 +00002
David Goodwin911edef2009-06-29 22:25:22 +00003; 734439407618 = 0x000000ab00000002
David Goodwin5960e6d2009-06-26 18:07:25 +00004define i64 @f1(i64 %a) {
Stephen Lind24ab202013-07-14 06:24:09 +00005; CHECK-LABEL: f1:
Evan Cheng1e6c2a12009-08-12 01:49:45 +00006; CHECK: adds r0, #2
David Goodwin911edef2009-06-29 22:25:22 +00007 %tmp = add i64 %a, 734439407618
David Goodwin5960e6d2009-06-26 18:07:25 +00008 ret i64 %tmp
9}
10
David Goodwin911edef2009-06-29 22:25:22 +000011; 5066626890203138 = 0x0012001200000002
David Goodwin5960e6d2009-06-26 18:07:25 +000012define i64 @f2(i64 %a) {
Stephen Lind24ab202013-07-14 06:24:09 +000013; CHECK-LABEL: f2:
Evan Cheng1e6c2a12009-08-12 01:49:45 +000014; CHECK: adds r0, #2
David Goodwin911edef2009-06-29 22:25:22 +000015 %tmp = add i64 %a, 5066626890203138
David Goodwin5960e6d2009-06-26 18:07:25 +000016 ret i64 %tmp
17}
18
David Goodwin911edef2009-06-29 22:25:22 +000019; 3747052064576897026 = 0x3400340000000002
David Goodwin5960e6d2009-06-26 18:07:25 +000020define i64 @f3(i64 %a) {
Stephen Lind24ab202013-07-14 06:24:09 +000021; CHECK-LABEL: f3:
Evan Cheng1e6c2a12009-08-12 01:49:45 +000022; CHECK: adds r0, #2
David Goodwin911edef2009-06-29 22:25:22 +000023 %tmp = add i64 %a, 3747052064576897026
David Goodwin5960e6d2009-06-26 18:07:25 +000024 ret i64 %tmp
25}
26
David Goodwin911edef2009-06-29 22:25:22 +000027; 6221254862626095106 = 0x5656565600000002
David Goodwin5960e6d2009-06-26 18:07:25 +000028define i64 @f4(i64 %a) {
Stephen Lind24ab202013-07-14 06:24:09 +000029; CHECK-LABEL: f4:
Evan Cheng1e6c2a12009-08-12 01:49:45 +000030; CHECK: adds r0, #2
David Goodwin911edef2009-06-29 22:25:22 +000031 %tmp = add i64 %a, 6221254862626095106
David Goodwin5960e6d2009-06-26 18:07:25 +000032 ret i64 %tmp
33}
34
David Goodwin911edef2009-06-29 22:25:22 +000035; 287104476244869122 = 0x03fc000000000002
David Goodwin5960e6d2009-06-26 18:07:25 +000036define i64 @f5(i64 %a) {
Stephen Lind24ab202013-07-14 06:24:09 +000037; CHECK-LABEL: f5:
Evan Cheng1e6c2a12009-08-12 01:49:45 +000038; CHECK: adds r0, #2
David Goodwin911edef2009-06-29 22:25:22 +000039 %tmp = add i64 %a, 287104476244869122
David Goodwin5960e6d2009-06-26 18:07:25 +000040 ret i64 %tmp
41}
42
Evan Cheng1e6c2a12009-08-12 01:49:45 +000043define i64 @f6(i64 %a, i64 %b) {
Stephen Lind24ab202013-07-14 06:24:09 +000044; CHECK-LABEL: f6:
Evan Cheng1e6c2a12009-08-12 01:49:45 +000045; CHECK: adds r0, r0, r2
46 %tmp = add i64 %a, %b
47 ret i64 %tmp
48}