; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -mtriple=aarch64-eabi | FileCheck %s

;==--------------------------------------------------------------------------==
; Tests for MOV-immediate implemented with ORR-immediate.
;==--------------------------------------------------------------------------==

; 64-bit immed with 32-bit pattern size, rotated by 0.
define i64 @test64_32_rot0() nounwind {
; CHECK-LABEL: test64_32_rot0:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #30064771079
; CHECK-NEXT:    ret
  ret i64 30064771079
}

; 64-bit immed with 32-bit pattern size, rotated by 2.
define i64 @test64_32_rot2() nounwind {
; CHECK-LABEL: test64_32_rot2:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-4611686002321260541
; CHECK-NEXT:    ret
  ret i64 13835058071388291075
}

; 64-bit immed with 4-bit pattern size, rotated by 3.
define i64 @test64_4_rot3() nounwind {
; CHECK-LABEL: test64_4_rot3:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-1229782938247303442
; CHECK-NEXT:    ret
  ret i64 17216961135462248174
}

; 64-bit immed with 64-bit pattern size, many bits.
define i64 @test64_64_manybits() nounwind {
; CHECK-LABEL: test64_64_manybits:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #4503599627304960
; CHECK-NEXT:    ret
  ret i64 4503599627304960
}

; 64-bit immed with 64-bit pattern size, one bit.
; FIXME: Prefer movz, so it prints as "mov".
define i64 @test64_64_onebit() nounwind {
; CHECK-LABEL: test64_64_onebit:
; CHECK:       // %bb.0:
; CHECK-NEXT:    orr x0, xzr, #0x4000000000
; CHECK-NEXT:    ret
  ret i64 274877906944
}

; 32-bit immed with 32-bit pattern size, rotated by 16.
; FIXME: Prefer "movz" instead (so we print as "mov").
define i32 @test32_32_rot16() nounwind {
; CHECK-LABEL: test32_32_rot16:
; CHECK:       // %bb.0:
; CHECK-NEXT:    orr w0, wzr, #0xff0000
; CHECK-NEXT:    ret
  ret i32 16711680
}

; 32-bit immed with 2-bit pattern size, rotated by 1.
define i32 @test32_2_rot1() nounwind {
; CHECK-LABEL: test32_2_rot1:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov w0, #-1431655766
; CHECK-NEXT:    ret
  ret i32 2863311530
}

;==--------------------------------------------------------------------------==
; Tests for MOVZ with MOVK.
;==--------------------------------------------------------------------------==

define i32 @movz() nounwind {
; CHECK-LABEL: movz:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov w0, #5
; CHECK-NEXT:    ret
  ret i32 5
}

define i64 @movz_3movk() nounwind {
; CHECK-LABEL: movz_3movk:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #22136
; CHECK-NEXT:    movk x0, #43981, lsl #16
; CHECK-NEXT:    movk x0, #4660, lsl #32
; CHECK-NEXT:    movk x0, #5, lsl #48
; CHECK-NEXT:    ret
  ret i64 1427392313513592
}

define i64 @movz_movk_skip1() nounwind {
; CHECK-LABEL: movz_movk_skip1:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #1126236160
; CHECK-NEXT:    movk x0, #5, lsl #32
; CHECK-NEXT:    ret
  ret i64 22601072640
}

define i64 @movz_skip1_movk() nounwind {
; CHECK-LABEL: movz_skip1_movk:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #4660
; CHECK-NEXT:    movk x0, #34388, lsl #32
; CHECK-NEXT:    ret
  ret i64 147695335379508
}

; FIXME: Prefer "mov w0, #2863311530; lsl x0, x0, #4"
; or "mov x0, #-6148914691236517206; and x0, x0, #45812984480"
define i64 @orr_lsl_pattern() nounwind {
; CHECK-LABEL: orr_lsl_pattern:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #43680
; CHECK-NEXT:    movk x0, #43690, lsl #16
; CHECK-NEXT:    movk x0, #10, lsl #32
; CHECK-NEXT:    ret
  ret i64 45812984480
}

; FIXME: prefer "mov x0, #-16639; lsl x0, x0, #24"
define i64 @mvn_lsl_pattern() nounwind {
; CHECK-LABEL: mvn_lsl_pattern:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #16777216
; CHECK-NEXT:    movk x0, #65471, lsl #32
; CHECK-NEXT:    movk x0, #65535, lsl #48
; CHECK-NEXT:    ret
  ret i64 -279156097024
}

; FIXME: prefer "mov w0, #-63; movk x0, #17, lsl #32"
define i64 @mvn32_pattern_2() nounwind {
; CHECK-LABEL: mvn32_pattern_2:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #65473
; CHECK-NEXT:    movk x0, #65535, lsl #16
; CHECK-NEXT:    movk x0, #17, lsl #32
; CHECK-NEXT:    ret
  ret i64 77309411265
}

;==--------------------------------------------------------------------------==
; Tests for MOVN with MOVK.
;==--------------------------------------------------------------------------==

define i64 @movn() nounwind {
; CHECK-LABEL: movn:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-42
; CHECK-NEXT:    ret
  ret i64 -42
}

define i64 @movn_skip1_movk() nounwind {
; CHECK-LABEL: movn_skip1_movk:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-60876
; CHECK-NEXT:    movk x0, #65494, lsl #32
; CHECK-NEXT:    ret
  ret i64 -176093720012
}

;==--------------------------------------------------------------------------==
; Tests for ORR with MOVK.
;==--------------------------------------------------------------------------==
; rdar://14987673

define i64 @orr_movk1() nounwind {
; CHECK-LABEL: orr_movk1:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #72056494543077120
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    ret
  ret i64 72056498262245120
}

define i64 @orr_movk2() nounwind {
; CHECK-LABEL: orr_movk2:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #72056494543077120
; CHECK-NEXT:    movk x0, #57005, lsl #48
; CHECK-NEXT:    ret
  ret i64 -2400982650836746496
}

define i64 @orr_movk3() nounwind {
; CHECK-LABEL: orr_movk3:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #72056494543077120
; CHECK-NEXT:    movk x0, #57005, lsl #32
; CHECK-NEXT:    ret
  ret i64 72020953688702720
}

define i64 @orr_movk4() nounwind {
; CHECK-LABEL: orr_movk4:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #72056494543077120
; CHECK-NEXT:    movk x0, #57005
; CHECK-NEXT:    ret
  ret i64 72056494543068845
}

; rdar://14987618
define i64 @orr_movk5() nounwind {
; CHECK-LABEL: orr_movk5:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-71777214294589696
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    ret
  ret i64 -71777214836900096
}

define i64 @orr_movk6() nounwind {
; CHECK-LABEL: orr_movk6:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-71777214294589696
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    movk x0, #57005, lsl #48
; CHECK-NEXT:    ret
  ret i64 -2400982647117578496
}

define i64 @orr_movk7() nounwind {
; CHECK-LABEL: orr_movk7:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-71777214294589696
; CHECK-NEXT:    movk x0, #57005, lsl #48
; CHECK-NEXT:    ret
  ret i64 -2400982646575268096
}

define i64 @orr_movk8() nounwind {
; CHECK-LABEL: orr_movk8:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-71777214294589696
; CHECK-NEXT:    movk x0, #57005
; CHECK-NEXT:    movk x0, #57005, lsl #48
; CHECK-NEXT:    ret
  ret i64 -2400982646575276371
}

; rdar://14987715
define i64 @orr_movk9() nounwind {
; CHECK-LABEL: orr_movk9:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #1152921435887370240
; CHECK-NEXT:    movk x0, #65280
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    ret
  ret i64 1152921439623315200
}

define i64 @orr_movk10() nounwind {
; CHECK-LABEL: orr_movk10:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #1152921504606846720
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    ret
  ret i64 1152921504047824640
}

define i64 @orr_movk11() nounwind {
; CHECK-LABEL: orr_movk11:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-65281
; CHECK-NEXT:    movk x0, #57005, lsl #16
; CHECK-NEXT:    movk x0, #65520, lsl #48
; CHECK-NEXT:    ret
  ret i64 -4222125209747201
}

define i64 @orr_movk12() nounwind {
; CHECK-LABEL: orr_movk12:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-4503599627370241
; CHECK-NEXT:    movk x0, #57005, lsl #32
; CHECK-NEXT:    ret
  ret i64 -4258765016661761
}

define i64 @orr_movk13() nounwind {
; CHECK-LABEL: orr_movk13:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #17592169267200
; CHECK-NEXT:    movk x0, #57005
; CHECK-NEXT:    movk x0, #57005, lsl #48
; CHECK-NEXT:    ret
  ret i64 -2401245434149282131
}

; rdar://13944082
define i64 @g() nounwind {
; CHECK-LABEL: g:
; CHECK:       // %bb.0: // %entry
; CHECK-NEXT:    mov x0, #2
; CHECK-NEXT:    movk x0, #65535, lsl #48
; CHECK-NEXT:    ret
entry:
  ret i64 -281474976710654
}

define i64 @orr_movk14() nounwind {
; CHECK-LABEL: orr_movk14:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-549755813888
; CHECK-NEXT:    movk x0, #2048, lsl #16
; CHECK-NEXT:    ret
  ret i64 -549621596160
}

define i64 @orr_movk15() nounwind {
; CHECK-LABEL: orr_movk15:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #549755813887
; CHECK-NEXT:    movk x0, #63487, lsl #16
; CHECK-NEXT:    ret
  ret i64 549621596159
}

; FIXME: prefer "mov x0, #2147483646; orr x0, x0, #36028659580010496"
define i64 @orr_movk16() nounwind {
; CHECK-LABEL: orr_movk16:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #36028659580010496
; CHECK-NEXT:    movk x0, #65534
; CHECK-NEXT:    movk x0, #32767, lsl #16
; CHECK-NEXT:    ret
  ret i64 36028661727494142
}

define i64 @orr_movk17() nounwind {
; CHECK-LABEL: orr_movk17:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-1099511627776
; CHECK-NEXT:    movk x0, #65280, lsl #16
; CHECK-NEXT:    ret
  ret i64 -1095233437696
}

define i64 @orr_movk18() nounwind {
; CHECK-LABEL: orr_movk18:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #137438887936
; CHECK-NEXT:    movk x0, #65473
; CHECK-NEXT:    ret
  ret i64 137438953409
}

; FIXME: prefer "mov x0, #72340172838076673; and x0, x0, #2199023255296"
define i64 @orr_and() nounwind {
; CHECK-LABEL: orr_and:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #256
; CHECK-NEXT:    movk x0, #257, lsl #16
; CHECK-NEXT:    movk x0, #257, lsl #32
; CHECK-NEXT:    ret
  ret i64 1103823438080
}

; FIXME: prefer "mov w0, #-1431655766; movk x0, #9, lsl #32"
define i64 @movn_movk() nounwind {
; CHECK-LABEL: movn_movk:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #43690
; CHECK-NEXT:    movk x0, #43690, lsl #16
; CHECK-NEXT:    movk x0, #9, lsl #32
; CHECK-NEXT:    ret
  ret i64 41518017194
}

; FIXME: prefer "mov w0, #-13690; orr x0, x0, #0x1111111111111111"
define i64 @movn_orr() nounwind {
; CHECK-LABEL: movn_orr:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-51847
; CHECK-NEXT:    movk x0, #4369, lsl #32
; CHECK-NEXT:    movk x0, #4369, lsl #48
; CHECK-NEXT:    ret
  ret i64 1229782942255887737
}

; FIXME: prefer "mov w0, #-305397761; eor x0, x0, #0x3333333333333333"
define i64 @movn_eor() nounwind {
; CHECK-LABEL: movn_eor:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #3689348814741910323
; CHECK-NEXT:    movk x0, #52428
; CHECK-NEXT:    movk x0, #8455, lsl #16
; CHECK-NEXT:    ret
  ret i64 3689348814437076172
}

; FIXME: prefer "mov x0, #536866816; orr x0, x0, #0x3fff800000000000"
define i64 @orr_orr_64() nounwind {
; CHECK-LABEL: orr_orr_64:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #4611545280939032576
; CHECK-NEXT:    movk x0, #61440
; CHECK-NEXT:    movk x0, #8191, lsl #16
; CHECK-NEXT:    ret
  ret i64 4611545281475899392
}

; FIXME: prefer "mov x0, #558551907040256; orr x0, x0, #0x1000100010001000"
define i64 @orr_orr_32() nounwind {
; CHECK-LABEL: orr_orr_32:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-287953294993589248
; CHECK-NEXT:    movk x0, #7169, lsl #16
; CHECK-NEXT:    movk x0, #7169, lsl #48
; CHECK-NEXT:    ret
  ret i64 2018171185438784512
}

; FIXME: prefer "mov x0, #281479271743489; orr x0, x0, #0x1000100010001000"
define i64 @orr_orr_16() nounwind {
; CHECK-LABEL: orr_orr_16:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #4097
; CHECK-NEXT:    movk x0, #4097, lsl #16
; CHECK-NEXT:    movk x0, #4097, lsl #32
; CHECK-NEXT:    movk x0, #4097, lsl #48
; CHECK-NEXT:    ret
  ret i64 1153220576333074433
}

; FIXME: prefer "mov x0, #144680345676153346; orr x0, x0, #0x1818181818181818"
define i64 @orr_orr_8() nounwind {
; CHECK-LABEL: orr_orr_8:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #6682
; CHECK-NEXT:    movk x0, #6682, lsl #16
; CHECK-NEXT:    movk x0, #6682, lsl #32
; CHECK-NEXT:    movk x0, #6682, lsl #48
; CHECK-NEXT:    ret
  ret i64 1880844493789993498
}

; FIXME: prefer "mov x0, #-6148914691236517206; orr x0, x0, #0x0FFFFF0000000000"
define i64 @orr_64_orr_8() nounwind {
; CHECK-LABEL: orr_64_orr_8:
; CHECK:       // %bb.0:
; CHECK-NEXT:    mov x0, #-6148914691236517206
; CHECK-NEXT:    movk x0, #65450, lsl #32
; CHECK-NEXT:    movk x0, #45055, lsl #48
; CHECK-NEXT:    ret
  ret i64 -5764607889538110806
}
