brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.1 KiB · e2a3feb Raw
90 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr4 -mattr=-altivec < %s | \2; RUN:   FileCheck --check-prefix=CHECK32 %s3 4; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr4 -mattr=-altivec < %s | \5; RUN:   FileCheck --check-prefix=CHECK64 %s6 7; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr4 \8; RUN:     -mattr=-altivec -filetype=obj -o %t.o < %s9; RUN: llvm-readobj --symbols %t.o | FileCheck --check-prefixes=CHECKSYM,CHECKSYM32 %s10; RUN: llvm-objdump -r -d --symbol-description %t.o | FileCheck -D#NFA=2 --check-prefixes=CHECKRELOC,CHECKRELOC32 %s11 12; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr4 \13; RUN:     -mattr=-altivec -filetype=obj -o %t64.o < %s14; RUN: llvm-readobj --symbols %t64.o | FileCheck --check-prefixes=CHECKSYM,CHECKSYM64 %s15; RUN: llvm-objdump -r -d --symbol-description %t64.o | FileCheck -D#NFA=2 --check-prefixes=CHECKRELOC,CHECKRELOC64 %s16 17%struct.S = type { i32, i32 }18 19@s = external global %struct.S, align 420 21define void @bar() {22entry:23  %0 = load i32, ptr getelementptr inbounds (%struct.S, ptr @s, i32 0, i32 1), align 424  %1 = trunc i32 %0 to i825  %2 = load i32, ptr getelementptr inbounds (%struct.S, ptr @s, i32 0, i32 1), align 426  call void @llvm.memset.p0.i32(ptr align 4 @s, i8 %1, i32 %2, i1 false)27  ret void28}29 30declare void @llvm.memset.p0.i32(ptr nocapture writeonly, i8, i32, i1 immarg)31 32; CHECK-LABEL: .bar:33; CHECK-NEXT: # %bb.0:                                # %entry34; CHECK-NEXT:         mflr 035 36; CHECK32:              bl .___memset37; CHECK32:              .extern .___memset38; CHECK64:              bl .___memset6439; CHECK64:              .extern .___memset6440 41; CHECKSYM:        Symbol {42; CHECKSYM-NEXT:     Index: 043; CHECKSYM-NEXT:     Name: .file44; CHECKSYM-NEXT:     Value (SymbolTableIndex): 0x045; CHECKSYM-NEXT:     Section: N_DEBUG46; CHECKSYM-NEXT:     Source Language ID: TB_CPLUSPLUS (0x9)47; CHECKSYM-NEXT:     CPU Version ID: TCPU_COM (0x3)48; CHECKSYM-NEXT:     StorageClass: C_FILE (0x67)49; CHECKSYM-NEXT:     NumberOfAuxEntries: 250; CHECKSYM:   }51; CHECKSYM:   Symbol {52; CHECKSYM:     Index: 353; CHECKSYM32-NEXT:     Name: .___memset54; CHECKSYM64-NEXT:     Name: .___memset6455; CHECKSYM-NEXT:     Value (RelocatableAddress): 0x056; CHECKSYM-NEXT:     Section: N_UNDEF57; CHECKSYM-NEXT:     Type: 0x058; CHECKSYM-NEXT:     StorageClass: C_EXT (0x2)59; CHECKSYM-NEXT:     NumberOfAuxEntries: 160; CHECKSYM-NEXT:     CSECT Auxiliary Entry {61; CHECKSYM-NEXT:       Index: 462; CHECKSYM-NEXT:       SectionLen: 063; CHECKSYM-NEXT:       ParameterHashIndex: 0x064; CHECKSYM-NEXT:       TypeChkSectNum: 0x065; CHECKSYM-NEXT:       SymbolAlignmentLog2: 066; CHECKSYM-NEXT:       SymbolType: XTY_ER (0x0)67; CHECKSYM-NEXT:       StorageMappingClass: XMC_PR (0x0)68; CHECKSYM32-NEXT:     StabInfoIndex: 0x069; CHECKSYM32-NEXT:     StabSectNum: 0x070; CHECKSYM64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)71; CHECKSYM-NEXT:     }72; CHECKSYM-NEXT:   }73 74; CHECKRELOC32:      00000000 (idx: [[#NFA+7]]) .bar:75; CHECKRELOC64:      0000000000000000 (idx: [[#NFA+7]]) .bar:76; CHECKRELOC-NEXT:        0: 7c 08 02 a6                        mflr 077; CHECKRELOC32-NEXT:        4: 94 21 ff c0                      stwu 1, -64(1)78; CHECKRELOC32-NEXT:        8: 80 62 00 00                      lwz 3, 0(2)79; CHECKRELOC32-NEXT:    0000000a:  R_TOC        (idx: [[#NFA+13]]) s[TC]80; CHECKRELOC32-NEXT:        c: 90 01 00 48                      stw 0, 72(1)81; CHECKRELOC64-NEXT:        4: f8 21 ff 91                      stdu 1, -112(1)82; CHECKRELOC64-NEXT:        8: e8 62 00 00                      ld 3, 0(2)83; CHECKRELOC64-NEXT:    000000000000000a:  R_TOC	(idx: [[#NFA+13]]) s[TC]84; CHECKRELOC64-NEXT:        c: f8 01 00 80                      std 0, 128(1)85; CHECKRELOC-NEXT:       10: 80 83 00 04                        lwz 4, 4(3)86; CHECKRELOC-NEXT:       14: 7c 85 23 78                        mr 5, 487; CHECKRELOC-NEXT:       18: 4b ff ff e9                        bl 0x088; CHECKRELOC32-NEXT:    00000018:  R_RBR        (idx: [[#NFA+1]]) .___memset[PR]89; CHECKRELOC64-NEXT:    0000000000000018:  R_RBR	(idx: [[#NFA+1]]) .___memset64[PR]90