brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.0 KiB · 41c3258 Raw
99 lines · plain
1; REQUIRES: avr2; RUN: llvm-mc -filetype=obj -triple=avr -mcpu=atmega328p %s -o %t0.o3; RUN: ld.lld %t0.o --defsym=a=0x12345678 --defsym=b=30 --defsym=c=0x15554 -o %t04; RUN: llvm-objdump -d --print-imm-hex --mcpu=atmega328p %t0 | \5; RUN:     FileCheck --check-prefixes=CHECK,AVR %s6; RUN: llvm-objdump -s --mcpu=atmega328p %t0 | \7; RUN:     FileCheck --check-prefixes=HEX,AVRHEX %s8; RUN: llvm-mc -filetype=obj -triple=avr -mcpu=attiny10 %s --defsym=TINY=1 -o %t1.o9; RUN: ld.lld %t1.o --defsym=a=0x12345678 --defsym=b=30 --defsym=c=0x15554 -o %t110; RUN: llvm-objdump -d --print-imm-hex --mcpu=attiny10 %t1 | FileCheck %s11; RUN: llvm-objdump -s --mcpu=attiny10 %t1 | \12; RUN:     FileCheck --check-prefixes=HEX,TINYHEX %s13 14.section .LDI,"ax",@progbits15; CHECK-LABEL: section .LDI:16; CHECK:       ldi     r20, 0x7817; CHECK-NEXT:  ldi     r20, 0x5618; CHECK-NEXT:  ldi     r20, 0x3419; CHECK-NEXT:  ldi     r20, 0x1220; CHECK-NEXT:  ldi     r20, 0x3c21; CHECK-NEXT:  ldi     r20, 0x2b22; CHECK-NEXT:  ldi     r20, 0x1a23; CHECK-NEXT:  ldi     r20, 0xaa24; CHECK-NEXT:  ldi     r20, 0xaa25; CHECK-NEXT:  ldi     r20, 0xff26 27ldi r20, lo8(a)     ; R_AVR_LO8_LDI28ldi r20, hi8(a)     ; R_AVR_HI8_LDI29ldi r20, hh8(a)     ; R_AVR_HH8_LDI30ldi r20, hhi8(a)    ; R_AVR_MS8_LDI31 32ldi r20, pm_lo8(a)  ; R_AVR_LO8_LDI_PM33ldi r20, pm_hi8(a)  ; R_AVR_HI8_LDI_PM34ldi r20, pm_hh8(a)  ; R_AVR_HH8_LDI_PM35 36ldi r20, lo8_gs(c)  ; R_AVR_LO8_LDI_GS37ldi r20, hi8_gs(c)  ; R_AVR_HI8_LDI_GS38 39ldi r20, b+22540 41.section .LDI_NEG,"ax",@progbits42; CHECK-LABEL: section .LDI_NEG:43; CHECK:       ldi     r20, 0x8844; CHECK-NEXT:  ldi     r20, 0xa945; CHECK-NEXT:  ldi     r20, 0xcb46; CHECK-NEXT:  ldi     r20, 0xed47; CHECK-NEXT:  ldi     r20, 0xc448; CHECK-NEXT:  ldi     r20, 0xd449; CHECK-NEXT:  ldi     r20, 0xe550ldi r20, lo8(-(a))     ; R_AVR_LO8_LDI_NEG51ldi r20, hi8(-(a))     ; R_AVR_HI8_LDI_NEG52ldi r20, hh8(-(a))     ; R_AVR_HH8_LDI_NEG53ldi r20, hhi8(-(a))    ; R_AVR_MS8_LDI_NEG54 55ldi r20, pm_lo8(-(a))  ; R_AVR_LO8_LDI_PM_NEG56ldi r20, pm_hi8(-(a))  ; R_AVR_HI8_LDI_PM_NEG57ldi r20, pm_hh8(-(a))  ; R_AVR_HH8_LDI_PM_NEG58 59.ifndef TINY60.section .SIX,"ax",@progbits61; AVR-LABEL:    section .SIX:62; AVR:          std   Y+30, r963; AVR-NEXT:     ldd   r9, Y+3064; AVR-NEXT:     adiw  r24, 0x1e65; AVRHEX-LABEL: section .SIX:66; AVRHEX-NEXT:  9e8e9e8c 4e9667std Y+b, r9   ; R_AVR_668ldd r9, Y+b   ; R_AVR_669adiw r24, b   ; R_AVR_6_ADIW70.endif71 72.section .PORT,"ax",@progbits73; CHECK-LABEL: section .PORT:74; CHECK:       in     r20, 0x1e75; CHECK-NEXT:  sbic   0x1e, 0x176in    r20, b  ; R_AVR_PORT677sbic  b, 1    ; R_AVR_PORT578 79.section .LDSSTS,"ax",@progbits80; CHECK-LABEL: section .LDSSTS:81; CHECK:       lds r20, 0x1e82; CHECK-NEXT:  sts 0x1e, r2183; HEX-LABEL:   section .LDSSTS:84; AVRHEX:      {{.*}} 40911e00 50931e0085; TINYHEX:     {{.*}} 4ea15ea986lds r20, b87sts b, r2188 89.section .DATA,"ax",@progbits90; HEX-LABEL: section .DATA:91; HEX-NEXT:  {{.*}} 1e1e000f 00785634 1278563492.byte b        ; R_AVR_893.short b       ; R_AVR_1694.short gs(b)   ; R_AVR_16_PM95.long a        ; R_AVR_3296.byte lo8(a)   ; R_AVR_8_LO897.byte hi8(a)   ; R_AVR_8_HI898.byte hlo8(a)  ; R_AVR_8_HLO899