brintos

brintos / llvm-project-archived public Read only

0
0
Text · 28.7 KiB · ae5b52d Raw
1553 lines · plain
1# REQUIRES: asserts2# RUN: llc -mtriple=riscv64-linux-gnu -x=mir < %s \3# RUN:   -debug-only=machine-scheduler -start-before=machine-scheduler 2>&1 \4# RUN:   -mattr=+lui-addi-fusion,+auipc-addi-fusion,+zexth-fusion,+zextw-fusion,+shifted-zextw-fusion,+ld-add-fusion \5# RUN:   -mattr=+add-load-fusion,+auipc-load-fusion,+lui-load-fusion,+addi-load-fusion \6# RUN:   -mattr=+zba,+shxadd-load-fusion \7# RUN:   | FileCheck %s8# RUN: llc -mtriple=riscv64-linux-gnu -x=mir < %s \9# RUN:   -debug-only=machine-scheduler -start-before=machine-scheduler 2>&1 \10# RUN:   -mattr=+zba,+bfext-fusion | FileCheck --check-prefixes=CHECK-BFEXT %s11 12# CHECK: lui_addi:%bb.013# CHECK: Macro fuse: {{.*}}LUI - ADDI14---15name: lui_addi16tracksRegLiveness: true17body:             |18  bb.0.entry:19    liveins: $x1020    %1:gpr = COPY $x1021    %2:gpr = LUI 122    %3:gpr = XORI %1, 223    %4:gpr = ADDI %2, 324    $x10 = COPY %325    $x11 = COPY %426    PseudoRET27...28 29# CHECK: auipc_addi30# CHECK: Macro fuse: {{.*}}AUIPC - ADDI31---32name: auipc_addi33tracksRegLiveness: true34body:             |35  bb.0.entry:36    liveins: $x1037    %1:gpr = COPY $x1038    %2:gpr = AUIPC 139    %3:gpr = XORI %1, 240    %4:gpr = ADDI %2, 341    $x10 = COPY %342    $x11 = COPY %443    PseudoRET44...45 46# CHECK: slli_srli_shifted_zext47# CHECK: Macro fuse: {{.*}}SLLI - SRLI48---49name: slli_srli_shifted_zext50tracksRegLiveness: true51body:             |52  bb.0.entry:53    liveins: $x1054    %1:gpr = COPY $x1055    %2:gpr = SLLI %1, 3256    %3:gpr = XORI %1, 357    %4:gpr = SRLI %2, 458    $x10 = COPY %359    $x11 = COPY %460    PseudoRET61...62 63# CHECK: slli_srli_zexth64# CHECK: Macro fuse: {{.*}}SLLI - SRLI65---66name: slli_srli_zexth67tracksRegLiveness: true68body:             |69  bb.0.entry:70    liveins: $x1071    %1:gpr = COPY $x1072    %2:gpr = SLLI %1, 4873    %3:gpr = XORI %1, 374    %4:gpr = SRLI %2, 4875    $x10 = COPY %376    $x11 = COPY %477    PseudoRET78...79 80# CHECK: slli_srli_zextw81# CHECK: Macro fuse: {{.*}}SLLI - SRLI82---83name: slli_srli_zextw84tracksRegLiveness: true85body:             |86  bb.0.entry:87    liveins: $x1088    %1:gpr = COPY $x1089    %2:gpr = SLLI %1, 3290    %3:gpr = XORI %1, 391    %4:gpr = SRLI %2, 3292    $x10 = COPY %393    $x11 = COPY %494    PseudoRET95...96 97# CHECK: slli_srli_no_fusion_098# CHECK-NOT: Macro fuse: {{.*}}SLLI - SRLI99---100name: slli_srli_no_fusion_0101tracksRegLiveness: true102body:             |103  bb.0.entry:104    liveins: $x10105    %1:gpr = COPY $x10106    %2:gpr = SLLI %1, 32107    %3:gpr = XORI %1, 3108    %4:gpr = SRLI %2, 33109    $x10 = COPY %3110    $x11 = COPY %4111    PseudoRET112...113 114# CHECK: slli_srli_no_fusion_1115# CHECK-NOT: Macro fuse: {{.*}}SLLI - SRLI116---117name: slli_srli_no_fusion_1118tracksRegLiveness: true119body:             |120  bb.0.entry:121    liveins: $x10122    %1:gpr = COPY $x10123    %2:gpr = SLLI %1, 48124    %3:gpr = XORI %1, 3125    %4:gpr = SRLI %2, 4126    $x10 = COPY %3127    $x11 = COPY %4128    PseudoRET129...130 131# CHECK: slli_srli_no_fusion_2132# CHECK-NOT: Macro fuse: {{.*}}SLLI - SRLI133---134name: slli_srli_no_fusion_2135tracksRegLiveness: true136body:             |137  bb.0.entry:138    liveins: $x10139    %1:gpr = COPY $x10140    %2:gpr = SLLI %1, 31141    %3:gpr = XORI %1, 3142    %4:gpr = SRLI %2, 4143    $x10 = COPY %3144    $x11 = COPY %4145    PseudoRET146...147 148# CHECK: slli_srli_no_fusion_3149# CHECK-NOT: Macro fuse: {{.*}}SLLI - SRLI150---151name: slli_srli_no_fusion_3152tracksRegLiveness: true153body:             |154  bb.0.entry:155    liveins: $x10156    %1:gpr = COPY $x10157    %2:gpr = SLLI %1, 31158    %3:gpr = XORI %1, 3159    %4:gpr = SRLI %2, 48160    $x10 = COPY %3161    $x11 = COPY %4162    PseudoRET163...164 165# CHECK: ld_add166# CHECK: Macro fuse: {{.*}}ADD - LD167---168name: ld_add169tracksRegLiveness: true170body:             |171  bb.0.entry:172    liveins: $x10, $x11173    %1:gpr = COPY $x10174    %2:gpr = COPY $x11175    %3:gpr = ADD %1, %2176    %4:gpr = XORI %2, 3177    %5:gpr = LD %3, 0178    $x10 = COPY %4179    $x11 = COPY %5180    PseudoRET181...182 183# CHECK: add_lb184# CHECK: Macro fuse: {{.*}}ADD - LB185---186name: add_lb187tracksRegLiveness: true188body:             |189  bb.0.entry:190    liveins: $x10, $x11191    %1:gpr = COPY $x10192    %2:gpr = COPY $x11193    %3:gpr = ADD %1, %2194    %4:gpr = XORI %2, 3195    %5:gpr = LB %3, 0196    $x10 = COPY %4197    $x11 = COPY %5198    PseudoRET199...200 201# CHECK: add_lh202# CHECK: Macro fuse: {{.*}}ADD - LH203---204name: add_lh205tracksRegLiveness: true206body:             |207  bb.0.entry:208    liveins: $x10, $x11209    %1:gpr = COPY $x10210    %2:gpr = COPY $x11211    %3:gpr = ADD %1, %2212    %4:gpr = XORI %2, 3213    %5:gpr = LH %3, 0214    $x10 = COPY %4215    $x11 = COPY %5216    PseudoRET217...218 219# CHECK: add_lw220# CHECK: Macro fuse: {{.*}}ADD - LW221---222name: add_lw223tracksRegLiveness: true224body:             |225  bb.0.entry:226    liveins: $x10, $x11227    %1:gpr = COPY $x10228    %2:gpr = COPY $x11229    %3:gpr = ADD %1, %2230    %4:gpr = XORI %2, 3231    %5:gpr = LW %3, 0232    $x10 = COPY %4233    $x11 = COPY %5234    PseudoRET235...236 237# CHECK: add_lbu238# CHECK: Macro fuse: {{.*}}ADD - LBU239---240name: add_lbu241tracksRegLiveness: true242body:             |243  bb.0.entry:244    liveins: $x10, $x11245    %1:gpr = COPY $x10246    %2:gpr = COPY $x11247    %3:gpr = ADD %1, %2248    %4:gpr = XORI %2, 3249    %5:gpr = LBU %3, 0250    $x10 = COPY %4251    $x11 = COPY %5252    PseudoRET253...254 255# CHECK: add_lhu256# CHECK: Macro fuse: {{.*}}ADD - LHU257---258name: add_lhu259tracksRegLiveness: true260body:             |261  bb.0.entry:262    liveins: $x10, $x11263    %1:gpr = COPY $x10264    %2:gpr = COPY $x11265    %3:gpr = ADD %1, %2266    %4:gpr = XORI %2, 3267    %5:gpr = LHU %3, 0268    $x10 = COPY %4269    $x11 = COPY %5270    PseudoRET271...272 273# CHECK: add_lwu274# CHECK: Macro fuse: {{.*}}ADD - LWU275---276name: add_lwu277tracksRegLiveness: true278body:             |279  bb.0.entry:280    liveins: $x10, $x11281    %1:gpr = COPY $x10282    %2:gpr = COPY $x11283    %3:gpr = ADD %1, %2284    %4:gpr = XORI %2, 3285    %5:gpr = LWU %3, 0286    $x10 = COPY %4287    $x11 = COPY %5288    PseudoRET289...290 291# CHECK: auipc_lb292# CHECK: Macro fuse: {{.*}}AUIPC - LB293---294name: auipc_lb295tracksRegLiveness: true296body:             |297  bb.0.entry:298    liveins: $x10299    %1:gpr = COPY $x10300    %2:gpr = AUIPC 1301    %3:gpr = XORI %1, 2302    %4:gpr = LB %2, 4303    $x10 = COPY %3304    $x11 = COPY %4305    PseudoRET306...307 308# CHECK: auipc_lh309# CHECK: Macro fuse: {{.*}}AUIPC - LH310---311name: auipc_lh312tracksRegLiveness: true313body:             |314  bb.0.entry:315    liveins: $x10316    %1:gpr = COPY $x10317    %2:gpr = AUIPC 1318    %3:gpr = XORI %1, 2319    %4:gpr = LH %2, 4320    $x10 = COPY %3321    $x11 = COPY %4322    PseudoRET323...324 325# CHECK: auipc_lw326# CHECK: Macro fuse: {{.*}}AUIPC - LW327---328name: auipc_lw329tracksRegLiveness: true330body:             |331  bb.0.entry:332    liveins: $x10333    %1:gpr = COPY $x10334    %2:gpr = AUIPC 1335    %3:gpr = XORI %1, 2336    %4:gpr = LW %2, 4337    $x10 = COPY %3338    $x11 = COPY %4339    PseudoRET340...341 342# CHECK: auipc_ld343# CHECK: Macro fuse: {{.*}}AUIPC - LD344---345name: auipc_ld346tracksRegLiveness: true347body:             |348  bb.0.entry:349    liveins: $x10350    %1:gpr = COPY $x10351    %2:gpr = AUIPC 1352    %3:gpr = XORI %1, 2353    %4:gpr = LD %2, 4354    $x10 = COPY %3355    $x11 = COPY %4356    PseudoRET357...358 359# CHECK: auipc_lbu360# CHECK: Macro fuse: {{.*}}AUIPC - LBU361---362name: auipc_lbu363tracksRegLiveness: true364body:             |365  bb.0.entry:366    liveins: $x10367    %1:gpr = COPY $x10368    %2:gpr = AUIPC 1369    %3:gpr = XORI %1, 2370    %4:gpr = LBU %2, 4371    $x10 = COPY %3372    $x11 = COPY %4373    PseudoRET374...375 376# CHECK: auipc_lhu377# CHECK: Macro fuse: {{.*}}AUIPC - LHU378---379name: auipc_lhu380tracksRegLiveness: true381body:             |382  bb.0.entry:383    liveins: $x10384    %1:gpr = COPY $x10385    %2:gpr = AUIPC 1386    %3:gpr = XORI %1, 2387    %4:gpr = LHU %2, 4388    $x10 = COPY %3389    $x11 = COPY %4390    PseudoRET391...392 393# CHECK: auipc_lwu394# CHECK: Macro fuse: {{.*}}AUIPC - LWU395---396name: auipc_lwu397tracksRegLiveness: true398body:             |399  bb.0.entry:400    liveins: $x10401    %1:gpr = COPY $x10402    %2:gpr = AUIPC 1403    %3:gpr = XORI %1, 2404    %4:gpr = LWU %2, 4405    $x10 = COPY %3406    $x11 = COPY %4407    PseudoRET408...409 410# CHECK: lui_lb411# CHECK: Macro fuse: {{.*}}LUI - LB412---413name: lui_lb414tracksRegLiveness: true415body:             |416  bb.0.entry:417    liveins: $x10418    %1:gpr = COPY $x10419    %2:gpr = LUI 1420    %3:gpr = XORI %1, 2421    %4:gpr = LB %2, 4422    $x10 = COPY %3423    $x11 = COPY %4424    PseudoRET425...426 427# CHECK: lui_lh428# CHECK: Macro fuse: {{.*}}LUI - LH429---430name: lui_lh431tracksRegLiveness: true432body:             |433  bb.0.entry:434    liveins: $x10435    %1:gpr = COPY $x10436    %2:gpr = LUI 1437    %3:gpr = XORI %1, 2438    %4:gpr = LH %2, 4439    $x10 = COPY %3440    $x11 = COPY %4441    PseudoRET442...443 444# CHECK: lui_lw445# CHECK: Macro fuse: {{.*}}LUI - LW446---447name: lui_lw448tracksRegLiveness: true449body:             |450  bb.0.entry:451    liveins: $x10452    %1:gpr = COPY $x10453    %2:gpr = LUI 1454    %3:gpr = XORI %1, 2455    %4:gpr = LW %2, 4456    $x10 = COPY %3457    $x11 = COPY %4458    PseudoRET459...460 461# CHECK: lui_ld462# CHECK: Macro fuse: {{.*}}LUI - LD463---464name: lui_ld465tracksRegLiveness: true466body:             |467  bb.0.entry:468    liveins: $x10469    %1:gpr = COPY $x10470    %2:gpr = LUI 1471    %3:gpr = XORI %1, 2472    %4:gpr = LD %2, 4473    $x10 = COPY %3474    $x11 = COPY %4475    PseudoRET476...477 478# CHECK: lui_lbu479# CHECK: Macro fuse: {{.*}}LUI - LBU480---481name: lui_lbu482tracksRegLiveness: true483body:             |484  bb.0.entry:485    liveins: $x10486    %1:gpr = COPY $x10487    %2:gpr = LUI 1488    %3:gpr = XORI %1, 2489    %4:gpr = LBU %2, 4490    $x10 = COPY %3491    $x11 = COPY %4492    PseudoRET493...494 495# CHECK: lui_lhu496# CHECK: Macro fuse: {{.*}}LUI - LHU497---498name: lui_lhu499tracksRegLiveness: true500body:             |501  bb.0.entry:502    liveins: $x10503    %1:gpr = COPY $x10504    %2:gpr = LUI 1505    %3:gpr = XORI %1, 2506    %4:gpr = LHU %2, 4507    $x10 = COPY %3508    $x11 = COPY %4509    PseudoRET510...511 512# CHECK: lui_lwu513# CHECK: Macro fuse: {{.*}}LUI - LWU514---515name: lui_lwu516tracksRegLiveness: true517body:             |518  bb.0.entry:519    liveins: $x10520    %1:gpr = COPY $x10521    %2:gpr = LUI 1522    %3:gpr = XORI %1, 2523    %4:gpr = LWU %2, 4524    $x10 = COPY %3525    $x11 = COPY %4526    PseudoRET527...528 529# CHECK-BFEXT: bitfield_extract530# CHECK-BFEXT: Macro fuse: {{.*}}SLLI - SRLI531---532name: bitfield_extract533tracksRegLiveness: true534body:             |535  bb.0.entry:536    liveins: $x10537    %1:gpr = COPY $x10538    %2:gpr = SLLI %1, 31539    %3:gpr = XORI %1, 3540    %4:gpr = SRLI %2, 48541    $x10 = COPY %3542    $x11 = COPY %4543    PseudoRET544...545 546# CHECK: addi_lb547# CHECK: Macro fuse: {{.*}}ADDI - LB548---549name: addi_lb550tracksRegLiveness: true551body:             |552  bb.0.entry:553    liveins: $x10, $x11554    %1:gpr = COPY $x10555    %2:gpr = COPY $x11556    %3:gpr = ADDI %1, 8557    %4:gpr = XORI %2, 3558    %5:gpr = LB %3, 0559    $x10 = COPY %4560    $x11 = COPY %5561    PseudoRET562...563 564# CHECK: addi_lh565# CHECK: Macro fuse: {{.*}}ADDI - LH566---567name: addi_lh568tracksRegLiveness: true569body:             |570  bb.0.entry:571    liveins: $x10, $x11572    %1:gpr = COPY $x10573    %2:gpr = COPY $x11574    %3:gpr = ADDI %1, 8575    %4:gpr = XORI %2, 3576    %5:gpr = LH %3, 0577    $x10 = COPY %4578    $x11 = COPY %5579    PseudoRET580...581 582# CHECK: addi_lw583# CHECK: Macro fuse: {{.*}}ADDI - LW584---585name: addi_lw586tracksRegLiveness: true587body:             |588  bb.0.entry:589    liveins: $x10, $x11590    %1:gpr = COPY $x10591    %2:gpr = COPY $x11592    %3:gpr = ADDI %1, 8593    %4:gpr = XORI %2, 3594    %5:gpr = LW %3, 0595    $x10 = COPY %4596    $x11 = COPY %5597    PseudoRET598...599 600# CHECK: addi_ld601# CHECK: Macro fuse: {{.*}}ADDI - LD602---603name: addi_ld604tracksRegLiveness: true605body:             |606  bb.0.entry:607    liveins: $x10, $x11608    %1:gpr = COPY $x10609    %2:gpr = COPY $x11610    %3:gpr = ADDI %1, 8611    %4:gpr = XORI %2, 3612    %5:gpr = LD %3, 0613    $x10 = COPY %4614    $x11 = COPY %5615    PseudoRET616...617 618# CHECK: addi_lbu619# CHECK: Macro fuse: {{.*}}ADDI - LBU620---621name: addi_lbu622tracksRegLiveness: true623body:             |624  bb.0.entry:625    liveins: $x10, $x11626    %1:gpr = COPY $x10627    %2:gpr = COPY $x11628    %3:gpr = ADDI %1, 8629    %4:gpr = XORI %2, 3630    %5:gpr = LBU %3, 0631    $x10 = COPY %4632    $x11 = COPY %5633    PseudoRET634...635 636# CHECK: addi_lhu637# CHECK: Macro fuse: {{.*}}ADDI - LHU638---639name: addi_lhu640tracksRegLiveness: true641body:             |642  bb.0.entry:643    liveins: $x10, $x11644    %1:gpr = COPY $x10645    %2:gpr = COPY $x11646    %3:gpr = ADDI %1, 8647    %4:gpr = XORI %2, 3648    %5:gpr = LHU %3, 0649    $x10 = COPY %4650    $x11 = COPY %5651    PseudoRET652...653 654# CHECK: addi_lwu655# CHECK: Macro fuse: {{.*}}ADDI - LWU656---657name: addi_lwu658tracksRegLiveness: true659body:             |660  bb.0.entry:661    liveins: $x10, $x11662    %1:gpr = COPY $x10663    %2:gpr = COPY $x11664    %3:gpr = ADDI %1, 8665    %4:gpr = XORI %2, 3666    %5:gpr = LWU %3, 0667    $x10 = COPY %4668    $x11 = COPY %5669    PseudoRET670...671 672# CHECK: adduw_lb673# CHECK: Macro fuse: {{.*}}ADD_UW - LB674---675name: adduw_lb676tracksRegLiveness: true677body:             |678  bb.0.entry:679    liveins: $x10, $x11680    %1:gpr = COPY $x10681    %2:gpr = COPY $x11682    %3:gpr = ADD_UW %1, %2683    %4:gpr = XORI %2, 3684    %5:gpr = LB %3, 0685    $x10 = COPY %4686    $x11 = COPY %5687    PseudoRET688...689 690# CHECK: adduw_lh691# CHECK: Macro fuse: {{.*}}ADD_UW - LH692---693name: adduw_lh694tracksRegLiveness: true695body:             |696  bb.0.entry:697    liveins: $x10, $x11698    %1:gpr = COPY $x10699    %2:gpr = COPY $x11700    %3:gpr = ADD_UW %1, %2701    %4:gpr = XORI %2, 3702    %5:gpr = LH %3, 0703    $x10 = COPY %4704    $x11 = COPY %5705    PseudoRET706...707 708# CHECK: adduw_lw709# CHECK: Macro fuse: {{.*}}ADD_UW - LW710---711name: adduw_lw712tracksRegLiveness: true713body:             |714  bb.0.entry:715    liveins: $x10, $x11716    %1:gpr = COPY $x10717    %2:gpr = COPY $x11718    %3:gpr = ADD_UW %1, %2719    %4:gpr = XORI %2, 3720    %5:gpr = LW %3, 0721    $x10 = COPY %4722    $x11 = COPY %5723    PseudoRET724...725 726# CHECK: adduw_ld727# CHECK: Macro fuse: {{.*}}ADD_UW - LD728---729name: adduw_ld730tracksRegLiveness: true731body:             |732  bb.0.entry:733    liveins: $x10, $x11734    %1:gpr = COPY $x10735    %2:gpr = COPY $x11736    %3:gpr = ADD_UW %1, %2737    %4:gpr = XORI %2, 3738    %5:gpr = LD %3, 0739    $x10 = COPY %4740    $x11 = COPY %5741    PseudoRET742...743 744# CHECK: adduw_lbu745# CHECK: Macro fuse: {{.*}}ADD_UW - LBU746---747name: adduw_lbu748tracksRegLiveness: true749body:             |750  bb.0.entry:751    liveins: $x10, $x11752    %1:gpr = COPY $x10753    %2:gpr = COPY $x11754    %3:gpr = ADD_UW %1, %2755    %4:gpr = XORI %2, 3756    %5:gpr = LBU %3, 0757    $x10 = COPY %4758    $x11 = COPY %5759    PseudoRET760...761 762# CHECK: adduw_lhu763# CHECK: Macro fuse: {{.*}}ADD_UW - LHU764---765name: adduw_lhu766tracksRegLiveness: true767body:             |768  bb.0.entry:769    liveins: $x10, $x11770    %1:gpr = COPY $x10771    %2:gpr = COPY $x11772    %3:gpr = ADD_UW %1, %2773    %4:gpr = XORI %2, 3774    %5:gpr = LHU %3, 0775    $x10 = COPY %4776    $x11 = COPY %5777    PseudoRET778...779 780# CHECK: adduw_lwu781# CHECK: Macro fuse: {{.*}}ADD_UW - LWU782---783name: adduw_lwu784tracksRegLiveness: true785body:             |786  bb.0.entry:787    liveins: $x10, $x11788    %1:gpr = COPY $x10789    %2:gpr = COPY $x11790    %3:gpr = ADD_UW %1, %2791    %4:gpr = XORI %2, 3792    %5:gpr = LWU %3, 0793    $x10 = COPY %4794    $x11 = COPY %5795    PseudoRET796...797 798# CHECK: sh1add_lb799# CHECK: Macro fuse: {{.*}}SH1ADD - LB800---801name: sh1add_lb802tracksRegLiveness: true803body:             |804  bb.0.entry:805    liveins: $x10, $x11806    %1:gpr = COPY $x10807    %2:gpr = COPY $x11808    %3:gpr = SH1ADD %1, %2809    %4:gpr = XORI %2, 3810    %5:gpr = LB %3, 8811    $x10 = COPY %4812    $x11 = COPY %5813    PseudoRET814...815 816# CHECK: sh2add_lb817# CHECK: Macro fuse: {{.*}}SH2ADD - LB818---819name: sh2add_lb820tracksRegLiveness: true821body:             |822  bb.0.entry:823    liveins: $x10, $x11824    %1:gpr = COPY $x10825    %2:gpr = COPY $x11826    %3:gpr = SH2ADD %1, %2827    %4:gpr = XORI %2, 3828    %5:gpr = LB %3, 8829    $x10 = COPY %4830    $x11 = COPY %5831    PseudoRET832...833 834# CHECK: sh3add_lb835# CHECK: Macro fuse: {{.*}}SH3ADD - LB836---837name: sh3add_lb838tracksRegLiveness: true839body:             |840  bb.0.entry:841    liveins: $x10, $x11842    %1:gpr = COPY $x10843    %2:gpr = COPY $x11844    %3:gpr = SH3ADD %1, %2845    %4:gpr = XORI %2, 3846    %5:gpr = LB %3, 8847    $x10 = COPY %4848    $x11 = COPY %5849    PseudoRET850...851 852# CHECK: sh1add_lh853# CHECK: Macro fuse: {{.*}}SH1ADD - LH854---855name: sh1add_lh856tracksRegLiveness: true857body:             |858  bb.0.entry:859    liveins: $x10, $x11860    %1:gpr = COPY $x10861    %2:gpr = COPY $x11862    %3:gpr = SH1ADD %1, %2863    %4:gpr = XORI %2, 3864    %5:gpr = LH %3, 8865    $x10 = COPY %4866    $x11 = COPY %5867    PseudoRET868...869 870# CHECK: sh2add_lh871# CHECK: Macro fuse: {{.*}}SH2ADD - LH872---873name: sh2add_lh874tracksRegLiveness: true875body:             |876  bb.0.entry:877    liveins: $x10, $x11878    %1:gpr = COPY $x10879    %2:gpr = COPY $x11880    %3:gpr = SH2ADD %1, %2881    %4:gpr = XORI %2, 3882    %5:gpr = LH %3, 8883    $x10 = COPY %4884    $x11 = COPY %5885    PseudoRET886...887 888# CHECK: sh3add_lh889# CHECK: Macro fuse: {{.*}}SH3ADD - LH890---891name: sh3add_lh892tracksRegLiveness: true893body:             |894  bb.0.entry:895    liveins: $x10, $x11896    %1:gpr = COPY $x10897    %2:gpr = COPY $x11898    %3:gpr = SH3ADD %1, %2899    %4:gpr = XORI %2, 3900    %5:gpr = LH %3, 8901    $x10 = COPY %4902    $x11 = COPY %5903    PseudoRET904...905 906# CHECK: sh1add_lw907# CHECK: Macro fuse: {{.*}}SH1ADD - LW908---909name: sh1add_lw910tracksRegLiveness: true911body:             |912  bb.0.entry:913    liveins: $x10, $x11914    %1:gpr = COPY $x10915    %2:gpr = COPY $x11916    %3:gpr = SH1ADD %1, %2917    %4:gpr = XORI %2, 3918    %5:gpr = LW %3, 8919    $x10 = COPY %4920    $x11 = COPY %5921    PseudoRET922...923 924# CHECK: sh2add_lw925# CHECK: Macro fuse: {{.*}}SH2ADD - LW926---927name: sh2add_lw928tracksRegLiveness: true929body:             |930  bb.0.entry:931    liveins: $x10, $x11932    %1:gpr = COPY $x10933    %2:gpr = COPY $x11934    %3:gpr = SH2ADD %1, %2935    %4:gpr = XORI %2, 3936    %5:gpr = LW %3, 8937    $x10 = COPY %4938    $x11 = COPY %5939    PseudoRET940...941 942# CHECK: sh3add_lw943# CHECK: Macro fuse: {{.*}}SH3ADD - LW944---945name: sh3add_lw946tracksRegLiveness: true947body:             |948  bb.0.entry:949    liveins: $x10, $x11950    %1:gpr = COPY $x10951    %2:gpr = COPY $x11952    %3:gpr = SH3ADD %1, %2953    %4:gpr = XORI %2, 3954    %5:gpr = LW %3, 8955    $x10 = COPY %4956    $x11 = COPY %5957    PseudoRET958...959 960# CHECK: sh1add_ld961# CHECK: Macro fuse: {{.*}}SH1ADD - LD962---963name: sh1add_ld964tracksRegLiveness: true965body:             |966  bb.0.entry:967    liveins: $x10, $x11968    %1:gpr = COPY $x10969    %2:gpr = COPY $x11970    %3:gpr = SH1ADD %1, %2971    %4:gpr = XORI %2, 3972    %5:gpr = LD %3, 8973    $x10 = COPY %4974    $x11 = COPY %5975    PseudoRET976...977 978# CHECK: sh2add_ld979# CHECK: Macro fuse: {{.*}}SH2ADD - LD980---981name: sh2add_ld982tracksRegLiveness: true983body:             |984  bb.0.entry:985    liveins: $x10, $x11986    %1:gpr = COPY $x10987    %2:gpr = COPY $x11988    %3:gpr = SH2ADD %1, %2989    %4:gpr = XORI %2, 3990    %5:gpr = LD %3, 8991    $x10 = COPY %4992    $x11 = COPY %5993    PseudoRET994...995 996# CHECK: sh3add_ld997# CHECK: Macro fuse: {{.*}}SH3ADD - LD998---999name: sh3add_ld1000tracksRegLiveness: true1001body:             |1002  bb.0.entry:1003    liveins: $x10, $x111004    %1:gpr = COPY $x101005    %2:gpr = COPY $x111006    %3:gpr = SH3ADD %1, %21007    %4:gpr = XORI %2, 31008    %5:gpr = LD %3, 81009    $x10 = COPY %41010    $x11 = COPY %51011    PseudoRET1012...1013 1014# CHECK: sh1add_lbu1015# CHECK: Macro fuse: {{.*}}SH1ADD - LBU1016---1017name: sh1add_lbu1018tracksRegLiveness: true1019body:             |1020  bb.0.entry:1021    liveins: $x10, $x111022    %1:gpr = COPY $x101023    %2:gpr = COPY $x111024    %3:gpr = SH1ADD %1, %21025    %4:gpr = XORI %2, 31026    %5:gpr = LBU %3, 81027    $x10 = COPY %41028    $x11 = COPY %51029    PseudoRET1030...1031 1032# CHECK: sh2add_lbu1033# CHECK: Macro fuse: {{.*}}SH2ADD - LBU1034---1035name: sh2add_lbu1036tracksRegLiveness: true1037body:             |1038  bb.0.entry:1039    liveins: $x10, $x111040    %1:gpr = COPY $x101041    %2:gpr = COPY $x111042    %3:gpr = SH2ADD %1, %21043    %4:gpr = XORI %2, 31044    %5:gpr = LBU %3, 81045    $x10 = COPY %41046    $x11 = COPY %51047    PseudoRET1048...1049 1050# CHECK: sh3add_lbu1051# CHECK: Macro fuse: {{.*}}SH3ADD - LBU1052---1053name: sh3add_lbu1054tracksRegLiveness: true1055body:             |1056  bb.0.entry:1057    liveins: $x10, $x111058    %1:gpr = COPY $x101059    %2:gpr = COPY $x111060    %3:gpr = SH3ADD %1, %21061    %4:gpr = XORI %2, 31062    %5:gpr = LBU %3, 81063    $x10 = COPY %41064    $x11 = COPY %51065    PseudoRET1066...1067 1068# CHECK: sh1add_lhu1069# CHECK: Macro fuse: {{.*}}SH1ADD - LHU1070---1071name: sh1add_lhu1072tracksRegLiveness: true1073body:             |1074  bb.0.entry:1075    liveins: $x10, $x111076    %1:gpr = COPY $x101077    %2:gpr = COPY $x111078    %3:gpr = SH1ADD %1, %21079    %4:gpr = XORI %2, 31080    %5:gpr = LHU %3, 81081    $x10 = COPY %41082    $x11 = COPY %51083    PseudoRET1084...1085 1086# CHECK: sh2add_lhu1087# CHECK: Macro fuse: {{.*}}SH2ADD - LHU1088---1089name: sh2add_lhu1090tracksRegLiveness: true1091body:             |1092  bb.0.entry:1093    liveins: $x10, $x111094    %1:gpr = COPY $x101095    %2:gpr = COPY $x111096    %3:gpr = SH2ADD %1, %21097    %4:gpr = XORI %2, 31098    %5:gpr = LHU %3, 81099    $x10 = COPY %41100    $x11 = COPY %51101    PseudoRET1102...1103 1104# CHECK: sh3add_lhu1105# CHECK: Macro fuse: {{.*}}SH3ADD - LHU1106---1107name: sh3add_lhu1108tracksRegLiveness: true1109body:             |1110  bb.0.entry:1111    liveins: $x10, $x111112    %1:gpr = COPY $x101113    %2:gpr = COPY $x111114    %3:gpr = SH3ADD %1, %21115    %4:gpr = XORI %2, 31116    %5:gpr = LHU %3, 81117    $x10 = COPY %41118    $x11 = COPY %51119    PseudoRET1120...1121 1122# CHECK: sh1add_lwu1123# CHECK: Macro fuse: {{.*}}SH1ADD - LWU1124---1125name: sh1add_lwu1126tracksRegLiveness: true1127body:             |1128  bb.0.entry:1129    liveins: $x10, $x111130    %1:gpr = COPY $x101131    %2:gpr = COPY $x111132    %3:gpr = SH1ADD %1, %21133    %4:gpr = XORI %2, 31134    %5:gpr = LWU %3, 81135    $x10 = COPY %41136    $x11 = COPY %51137    PseudoRET1138...1139 1140# CHECK: sh2add_lwu1141# CHECK: Macro fuse: {{.*}}SH2ADD - LWU1142---1143name: sh2add_lwu1144tracksRegLiveness: true1145body:             |1146  bb.0.entry:1147    liveins: $x10, $x111148    %1:gpr = COPY $x101149    %2:gpr = COPY $x111150    %3:gpr = SH2ADD %1, %21151    %4:gpr = XORI %2, 31152    %5:gpr = LWU %3, 81153    $x10 = COPY %41154    $x11 = COPY %51155    PseudoRET1156...1157 1158# CHECK: sh3add_lwu1159# CHECK: Macro fuse: {{.*}}SH3ADD - LWU1160---1161name: sh3add_lwu1162tracksRegLiveness: true1163body:             |1164  bb.0.entry:1165    liveins: $x10, $x111166    %1:gpr = COPY $x101167    %2:gpr = COPY $x111168    %3:gpr = SH3ADD %1, %21169    %4:gpr = XORI %2, 31170    %5:gpr = LWU %3, 81171    $x10 = COPY %41172    $x11 = COPY %51173    PseudoRET1174...1175 1176# CHECK: sh1adduw_lb1177# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LB1178---1179name: sh1adduw_lb1180tracksRegLiveness: true1181body:             |1182  bb.0.entry:1183    liveins: $x10, $x111184    %1:gpr = COPY $x101185    %2:gpr = COPY $x111186    %3:gpr = SH1ADD_UW %1, %21187    %4:gpr = XORI %2, 31188    %5:gpr = LB %3, 81189    $x10 = COPY %41190    $x11 = COPY %51191    PseudoRET1192...1193 1194# CHECK: sh2adduw_lb1195# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LB1196---1197name: sh2adduw_lb1198tracksRegLiveness: true1199body:             |1200  bb.0.entry:1201    liveins: $x10, $x111202    %1:gpr = COPY $x101203    %2:gpr = COPY $x111204    %3:gpr = SH2ADD_UW %1, %21205    %4:gpr = XORI %2, 31206    %5:gpr = LB %3, 81207    $x10 = COPY %41208    $x11 = COPY %51209    PseudoRET1210...1211 1212# CHECK: sh3adduw_lb1213# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LB1214---1215name: sh3adduw_lb1216tracksRegLiveness: true1217body:             |1218  bb.0.entry:1219    liveins: $x10, $x111220    %1:gpr = COPY $x101221    %2:gpr = COPY $x111222    %3:gpr = SH3ADD_UW %1, %21223    %4:gpr = XORI %2, 31224    %5:gpr = LB %3, 81225    $x10 = COPY %41226    $x11 = COPY %51227    PseudoRET1228...1229 1230# CHECK: sh1adduw_lh1231# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LH1232---1233name: sh1adduw_lh1234tracksRegLiveness: true1235body:             |1236  bb.0.entry:1237    liveins: $x10, $x111238    %1:gpr = COPY $x101239    %2:gpr = COPY $x111240    %3:gpr = SH1ADD_UW %1, %21241    %4:gpr = XORI %2, 31242    %5:gpr = LH %3, 81243    $x10 = COPY %41244    $x11 = COPY %51245    PseudoRET1246...1247 1248# CHECK: sh2adduw_lh1249# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LH1250---1251name: sh2adduw_lh1252tracksRegLiveness: true1253body:             |1254  bb.0.entry:1255    liveins: $x10, $x111256    %1:gpr = COPY $x101257    %2:gpr = COPY $x111258    %3:gpr = SH2ADD_UW %1, %21259    %4:gpr = XORI %2, 31260    %5:gpr = LH %3, 81261    $x10 = COPY %41262    $x11 = COPY %51263    PseudoRET1264...1265 1266# CHECK: sh3adduw_lh1267# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LH1268---1269name: sh3adduw_lh1270tracksRegLiveness: true1271body:             |1272  bb.0.entry:1273    liveins: $x10, $x111274    %1:gpr = COPY $x101275    %2:gpr = COPY $x111276    %3:gpr = SH3ADD_UW %1, %21277    %4:gpr = XORI %2, 31278    %5:gpr = LH %3, 81279    $x10 = COPY %41280    $x11 = COPY %51281    PseudoRET1282...1283 1284# CHECK: sh1adduw_lw1285# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LW1286---1287name: sh1adduw_lw1288tracksRegLiveness: true1289body:             |1290  bb.0.entry:1291    liveins: $x10, $x111292    %1:gpr = COPY $x101293    %2:gpr = COPY $x111294    %3:gpr = SH1ADD_UW %1, %21295    %4:gpr = XORI %2, 31296    %5:gpr = LW %3, 81297    $x10 = COPY %41298    $x11 = COPY %51299    PseudoRET1300...1301 1302# CHECK: sh2adduw_lw1303# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LW1304---1305name: sh2adduw_lw1306tracksRegLiveness: true1307body:             |1308  bb.0.entry:1309    liveins: $x10, $x111310    %1:gpr = COPY $x101311    %2:gpr = COPY $x111312    %3:gpr = SH2ADD_UW %1, %21313    %4:gpr = XORI %2, 31314    %5:gpr = LW %3, 81315    $x10 = COPY %41316    $x11 = COPY %51317    PseudoRET1318...1319 1320# CHECK: sh3adduw_lw1321# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LW1322---1323name: sh3adduw_lw1324tracksRegLiveness: true1325body:             |1326  bb.0.entry:1327    liveins: $x10, $x111328    %1:gpr = COPY $x101329    %2:gpr = COPY $x111330    %3:gpr = SH3ADD_UW %1, %21331    %4:gpr = XORI %2, 31332    %5:gpr = LW %3, 81333    $x10 = COPY %41334    $x11 = COPY %51335    PseudoRET1336...1337 1338# CHECK: sh1adduw_ld1339# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LD1340---1341name: sh1adduw_ld1342tracksRegLiveness: true1343body:             |1344  bb.0.entry:1345    liveins: $x10, $x111346    %1:gpr = COPY $x101347    %2:gpr = COPY $x111348    %3:gpr = SH1ADD_UW %1, %21349    %4:gpr = XORI %2, 31350    %5:gpr = LD %3, 81351    $x10 = COPY %41352    $x11 = COPY %51353    PseudoRET1354...1355 1356# CHECK: sh2adduw_ld1357# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LD1358---1359name: sh2adduw_ld1360tracksRegLiveness: true1361body:             |1362  bb.0.entry:1363    liveins: $x10, $x111364    %1:gpr = COPY $x101365    %2:gpr = COPY $x111366    %3:gpr = SH2ADD_UW %1, %21367    %4:gpr = XORI %2, 31368    %5:gpr = LD %3, 81369    $x10 = COPY %41370    $x11 = COPY %51371    PseudoRET1372...1373 1374# CHECK: sh3adduw_ld1375# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LD1376---1377name: sh3adduw_ld1378tracksRegLiveness: true1379body:             |1380  bb.0.entry:1381    liveins: $x10, $x111382    %1:gpr = COPY $x101383    %2:gpr = COPY $x111384    %3:gpr = SH3ADD_UW %1, %21385    %4:gpr = XORI %2, 31386    %5:gpr = LD %3, 81387    $x10 = COPY %41388    $x11 = COPY %51389    PseudoRET1390...1391 1392# CHECK: sh1adduw_lbu1393# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LBU1394---1395name: sh1adduw_lbu1396tracksRegLiveness: true1397body:             |1398  bb.0.entry:1399    liveins: $x10, $x111400    %1:gpr = COPY $x101401    %2:gpr = COPY $x111402    %3:gpr = SH1ADD_UW %1, %21403    %4:gpr = XORI %2, 31404    %5:gpr = LBU %3, 81405    $x10 = COPY %41406    $x11 = COPY %51407    PseudoRET1408...1409 1410# CHECK: sh2adduw_lbu1411# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LBU1412---1413name: sh2adduw_lbu1414tracksRegLiveness: true1415body:             |1416  bb.0.entry:1417    liveins: $x10, $x111418    %1:gpr = COPY $x101419    %2:gpr = COPY $x111420    %3:gpr = SH2ADD_UW %1, %21421    %4:gpr = XORI %2, 31422    %5:gpr = LBU %3, 81423    $x10 = COPY %41424    $x11 = COPY %51425    PseudoRET1426...1427 1428# CHECK: sh3adduw_lbu1429# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LBU1430---1431name: sh3adduw_lbu1432tracksRegLiveness: true1433body:             |1434  bb.0.entry:1435    liveins: $x10, $x111436    %1:gpr = COPY $x101437    %2:gpr = COPY $x111438    %3:gpr = SH3ADD_UW %1, %21439    %4:gpr = XORI %2, 31440    %5:gpr = LBU %3, 81441    $x10 = COPY %41442    $x11 = COPY %51443    PseudoRET1444...1445 1446# CHECK: sh1adduw_lhu1447# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LHU1448---1449name: sh1adduw_lhu1450tracksRegLiveness: true1451body:             |1452  bb.0.entry:1453    liveins: $x10, $x111454    %1:gpr = COPY $x101455    %2:gpr = COPY $x111456    %3:gpr = SH1ADD_UW %1, %21457    %4:gpr = XORI %2, 31458    %5:gpr = LHU %3, 81459    $x10 = COPY %41460    $x11 = COPY %51461    PseudoRET1462...1463 1464# CHECK: sh2adduw_lhu1465# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LHU1466---1467name: sh2adduw_lhu1468tracksRegLiveness: true1469body:             |1470  bb.0.entry:1471    liveins: $x10, $x111472    %1:gpr = COPY $x101473    %2:gpr = COPY $x111474    %3:gpr = SH2ADD_UW %1, %21475    %4:gpr = XORI %2, 31476    %5:gpr = LHU %3, 81477    $x10 = COPY %41478    $x11 = COPY %51479    PseudoRET1480...1481 1482# CHECK: sh3adduw_lhu1483# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LHU1484---1485name: sh3adduw_lhu1486tracksRegLiveness: true1487body:             |1488  bb.0.entry:1489    liveins: $x10, $x111490    %1:gpr = COPY $x101491    %2:gpr = COPY $x111492    %3:gpr = SH3ADD_UW %1, %21493    %4:gpr = XORI %2, 31494    %5:gpr = LHU %3, 81495    $x10 = COPY %41496    $x11 = COPY %51497    PseudoRET1498...1499 1500# CHECK: sh1adduw_lwu1501# CHECK: Macro fuse: {{.*}}SH1ADD_UW - LWU1502---1503name: sh1adduw_lwu1504tracksRegLiveness: true1505body:             |1506  bb.0.entry:1507    liveins: $x10, $x111508    %1:gpr = COPY $x101509    %2:gpr = COPY $x111510    %3:gpr = SH1ADD_UW %1, %21511    %4:gpr = XORI %2, 31512    %5:gpr = LWU %3, 81513    $x10 = COPY %41514    $x11 = COPY %51515    PseudoRET1516...1517 1518# CHECK: sh2adduw_lwu1519# CHECK: Macro fuse: {{.*}}SH2ADD_UW - LWU1520---1521name: sh2adduw_lwu1522tracksRegLiveness: true1523body:             |1524  bb.0.entry:1525    liveins: $x10, $x111526    %1:gpr = COPY $x101527    %2:gpr = COPY $x111528    %3:gpr = SH2ADD_UW %1, %21529    %4:gpr = XORI %2, 31530    %5:gpr = LWU %3, 81531    $x10 = COPY %41532    $x11 = COPY %51533    PseudoRET1534...1535 1536# CHECK: sh3adduw_lwu1537# CHECK: Macro fuse: {{.*}}SH3ADD_UW - LWU1538---1539name: sh3adduw_lwu1540tracksRegLiveness: true1541body:             |1542  bb.0.entry:1543    liveins: $x10, $x111544    %1:gpr = COPY $x101545    %2:gpr = COPY $x111546    %3:gpr = SH3ADD_UW %1, %21547    %4:gpr = XORI %2, 31548    %5:gpr = LWU %3, 81549    $x10 = COPY %41550    $x11 = COPY %51551    PseudoRET1552...1553