brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.7 KiB · 81b3e71 Raw
64 lines · plain
1; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=+altivec \2; RUN:     -vec-extabi -mtriple powerpc-ibm-aix-xcoff < %s | \3; RUN:   FileCheck %s --check-prefix=32BIT4 5; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=+altivec -vec-extabi \6; RUN:     -stop-after=machine-cp -mtriple powerpc-ibm-aix-xcoff < %s | \7; RUN:   FileCheck %s --check-prefix=MIR328 9; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=+altivec \10; RUN:     -vec-extabi -mtriple powerpc64-ibm-aix-xcoff < %s | \11; RUN:   FileCheck %s --check-prefix=64BIT12 13; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=+altivec -vec-extabi \14; RUN:     -stop-after=machine-cp -mtriple powerpc64-ibm-aix-xcoff < %s | \15; RUN:   FileCheck %s --check-prefix=MIR6416 17%struct.Test = type { double, double, double, double }18 19define double @test(i32 signext %r3, i32 signext %r4, double %fpr1, double %fpr2, <2 x double> %v2, <2 x double> %v3, <2 x double> %v4, <2 x double> %v5, <2 x double> %v6, <2 x double> %v7, <2 x double> %v8, <2 x double> %v9, <2 x double> %v10, <2 x double> %v11, <2 x double> %v12, <2 x double> %v13, <2 x double> %vSpill, double %fpr3, double %fpr4, double %fpr5, double %fpr6, double %fpr7, double %fpr8, double %fpr9, double %fpr10, double %fpr11, double %fpr12, double %fpr13, i32 signext %gprSpill, ptr nocapture readonly byval(%struct.Test) align 4 %t) {20entry:21  %vecext = extractelement <2 x double> %vSpill, i32 022  %0 = load double, ptr %t, align 423  %add = fadd double %vecext, %024  ret double %add25}26 27; 32BIT-LABEL: .test:28; 32BIT-DAG:     lfd {{[0-9]+}}, 48(1)29; 32BIT-DAG:     lfd {{[0-9]+}}, 156(1)30 31; MIR32: name:            test32; MIR32: fixedStack:33; MIR32:   - { id: 0, type: default, offset: 156, size: 32, alignment: 4, stack-id: default,34; MIR32:       isImmutable: false, isAliased: true, callee-saved-register: '', callee-saved-restored: true,35; MIR32:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }36; MIR32:   - { id: 1, type: default, offset: 152, size: 4, alignment: 8, stack-id: default,37; MIR32:       isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true,38; MIR32:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }39; MIR32:   - { id: 2, type: default, offset: 48, size: 16, alignment: 16, stack-id: default,40; MIR32:       isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true,41; MIR32:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }42 43; MIR32:  renamable $f{{[0-9]+}} = LFD 0, %fixed-stack.244; MIR32:  renamable $f{{[0-9]+}} = LFD 0, %fixed-stack.045 46; 64BIT-LABEL: .test:47; 64BIT-DAG:     lfd {{[0-9]+}}, 80(1)48; 64BIT-DAG:     lfd {{[0-9]+}}, 192(1)49 50; MIR64: name:            test51; MIR64: fixedStack:52; MIR64:   - { id: 0, type: default, offset: 192, size: 32, alignment: 16, stack-id: default,53; MIR64:       isImmutable: false, isAliased: true, callee-saved-register: '', callee-saved-restored: true,54; MIR64:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }55; MIR64:   - { id: 1, type: default, offset: 188, size: 4, alignment: 4, stack-id: default,56; MIR64:       isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true,57; MIR64:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }58; MIR64:   - { id: 2, type: default, offset: 80, size: 16, alignment: 16, stack-id: default,59; MIR64:       isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true,60; MIR64:       debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }61 62; MIR64:  renamable $f{{[0-9]+}} = LFD 0, %fixed-stack.263; MIR64:  renamable $f{{[0-9]+}} = LFD 0, %fixed-stack.064