| # Source file used to test li/addi on MIPS16 |
| |
| .set mips16 |
| |
| .data |
| data_label: |
| .word 0 |
| data_label2: |
| .word 0 |
| |
| .extern big_external_data_label,1000 |
| .extern small_external_data_label,1 |
| .comm big_external_common,1000 |
| .comm small_external_common,1 |
| .lcomm big_local_common,1000 |
| .lcomm small_local_common,1 |
| |
| .text |
| stuff: |
| li $4,%hi(0) |
| sll $4,16 |
| addiu $4,%lo(0) |
| li $4,%hi(data_label) |
| sll $4,16 |
| addiu $4,%lo(data_label) |
| li $4,%hi(data_label2) |
| sll $4,16 |
| addiu $4,%lo(data_label2) |
| li $4,%hi(big_external_data_label) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label) |
| li $4,%hi(small_external_data_label) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label) |
| li $4,%hi(big_external_common) |
| sll $4,16 |
| addiu $4,%lo(big_external_common) |
| li $4,%hi(small_external_common) |
| sll $4,16 |
| addiu $4,%lo(small_external_common) |
| li $4,%hi(big_local_common) |
| sll $4,16 |
| addiu $4,%lo(big_local_common) |
| li $4,%hi(small_local_common) |
| sll $4,16 |
| addiu $4,%lo(small_local_common) |
| li $4,%hi(1) |
| sll $4,16 |
| addiu $4,%lo(1) |
| li $4,%hi(data_label+1) |
| sll $4,16 |
| addiu $4,%lo(data_label+1) |
| li $4,%hi(data_label2+1) |
| sll $4,16 |
| addiu $4,%lo(data_label2+1) |
| li $4,%hi(big_external_data_label+1) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label+1) |
| li $4,%hi(small_external_data_label+1) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label+1) |
| li $4,%hi(big_external_common+1) |
| sll $4,16 |
| addiu $4,%lo(big_external_common+1) |
| li $4,%hi(small_external_common+1) |
| sll $4,16 |
| addiu $4,%lo(small_external_common+1) |
| li $4,%hi(big_local_common+1) |
| sll $4,16 |
| addiu $4,%lo(big_local_common+1) |
| li $4,%hi(small_local_common+1) |
| sll $4,16 |
| addiu $4,%lo(small_local_common+1) |
| li $4,%hi(0x8000) |
| sll $4,16 |
| addiu $4,%lo(0x8000) |
| li $4,%hi(data_label+0x8000) |
| sll $4,16 |
| addiu $4,%lo(data_label+0x8000) |
| li $4,%hi(data_label2+0x8000) |
| sll $4,16 |
| addiu $4,%lo(data_label2+0x8000) |
| li $4,%hi(big_external_data_label+0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label+0x8000) |
| li $4,%hi(small_external_data_label+0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label+0x8000) |
| li $4,%hi(big_external_common+0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_external_common+0x8000) |
| li $4,%hi(small_external_common+0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_external_common+0x8000) |
| li $4,%hi(big_local_common+0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_local_common+0x8000) |
| li $4,%hi(small_local_common+0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_local_common+0x8000) |
| li $4,%hi(-0x8000) |
| sll $4,16 |
| addiu $4,%lo(-0x8000) |
| li $4,%hi(data_label-0x8000) |
| sll $4,16 |
| addiu $4,%lo(data_label-0x8000) |
| li $4,%hi(data_label2-0x8000) |
| sll $4,16 |
| addiu $4,%lo(data_label2-0x8000) |
| li $4,%hi(big_external_data_label-0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label-0x8000) |
| li $4,%hi(small_external_data_label-0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label-0x8000) |
| li $4,%hi(big_external_common-0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_external_common-0x8000) |
| li $4,%hi(small_external_common-0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_external_common-0x8000) |
| li $4,%hi(big_local_common-0x8000) |
| sll $4,16 |
| addiu $4,%lo(big_local_common-0x8000) |
| li $4,%hi(small_local_common-0x8000) |
| sll $4,16 |
| addiu $4,%lo(small_local_common-0x8000) |
| li $4,%hi(0x10000) |
| sll $4,16 |
| addiu $4,%lo(0x10000) |
| li $4,%hi(data_label+0x10000) |
| sll $4,16 |
| addiu $4,%lo(data_label+0x10000) |
| li $4,%hi(data_label2+0x10000) |
| sll $4,16 |
| addiu $4,%lo(data_label2+0x10000) |
| li $4,%hi(big_external_data_label+0x10000) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label+0x10000) |
| li $4,%hi(small_external_data_label+0x10000) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label+0x10000) |
| li $4,%hi(big_external_common+0x10000) |
| sll $4,16 |
| addiu $4,%lo(big_external_common+0x10000) |
| li $4,%hi(small_external_common+0x10000) |
| sll $4,16 |
| addiu $4,%lo(small_external_common+0x10000) |
| li $4,%hi(big_local_common+0x10000) |
| sll $4,16 |
| addiu $4,%lo(big_local_common+0x10000) |
| li $4,%hi(small_local_common+0x10000) |
| sll $4,16 |
| addiu $4,%lo(small_local_common+0x10000) |
| li $4,%hi(0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(0x1a5a5) |
| li $4,%hi(data_label+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(data_label+0x1a5a5) |
| li $4,%hi(data_label2+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(data_label2+0x1a5a5) |
| li $4,%hi(big_external_data_label+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(big_external_data_label+0x1a5a5) |
| li $4,%hi(small_external_data_label+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(small_external_data_label+0x1a5a5) |
| li $4,%hi(big_external_common+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(big_external_common+0x1a5a5) |
| li $4,%hi(small_external_common+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(small_external_common+0x1a5a5) |
| li $4,%hi(big_local_common+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(big_local_common+0x1a5a5) |
| li $4,%hi(small_local_common+0x1a5a5) |
| sll $4,16 |
| addiu $4,%lo(small_local_common+0x1a5a5) |
| li $5,%hi(0) |
| sll $5,16 |
| lw $4,%hi(0)($5) |
| li $5,%hi(data_label) |
| sll $5,16 |
| lw $4,%hi(data_label)($5) |
| li $5,%hi(data_label2) |
| sll $5,16 |
| lw $4,%hi(data_label2)($5) |
| li $5,%hi(big_external_data_label) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label)($5) |
| li $5,%hi(small_external_data_label) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label)($5) |
| li $5,%hi(big_external_common) |
| sll $5,16 |
| lw $4,%lo(big_external_common)($5) |
| li $5,%hi(small_external_common) |
| sll $5,16 |
| lw $4,%lo(small_external_common)($5) |
| li $5,%hi(big_local_common) |
| sll $5,16 |
| lw $4,%lo(big_local_common)($5) |
| li $5,%hi(small_local_common) |
| sll $5,16 |
| lw $4,%lo(small_local_common)($5) |
| li $5,%hi(1) |
| sll $5,16 |
| lw $4,%lo(1)($5) |
| li $5,%hi(data_label+1) |
| sll $5,16 |
| lw $4,%lo(data_label+1)($5) |
| li $5,%hi(data_label2+1) |
| sll $5,16 |
| lw $4,%lo(data_label2+1)($5) |
| li $5,%hi(big_external_data_label+1) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label+1)($5) |
| li $5,%hi(small_external_data_label+1) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label+1)($5) |
| li $5,%hi(big_external_common+1) |
| sll $5,16 |
| lw $4,%lo(big_external_common+1)($5) |
| li $5,%hi(small_external_common+1) |
| sll $5,16 |
| lw $4,%lo(small_external_common+1)($5) |
| li $5,%hi(big_local_common+1) |
| sll $5,16 |
| lw $4,%lo(big_local_common+1)($5) |
| li $5,%hi(small_local_common+1) |
| sll $5,16 |
| lw $4,%lo(small_local_common+1)($5) |
| li $5,%hi(0x8000) |
| sll $5,16 |
| lw $4,%lo(0x8000)($5) |
| li $5,%hi(data_label+0x8000) |
| sll $5,16 |
| lw $4,%lo(data_label+0x8000)($5) |
| li $5,%hi(data_label2+0x8000) |
| sll $5,16 |
| lw $4,%lo(data_label2+0x8000)($5) |
| li $5,%hi(big_external_data_label+0x8000) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label+0x8000)($5) |
| li $5,%hi(small_external_data_label+0x8000) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label+0x8000)($5) |
| li $5,%hi(big_external_common+0x8000) |
| sll $5,16 |
| lw $4,%lo(big_external_common+0x8000)($5) |
| li $5,%hi(small_external_common+0x8000) |
| sll $5,16 |
| lw $4,%lo(small_external_common+0x8000)($5) |
| li $5,%hi(big_local_common+0x8000) |
| sll $5,16 |
| lw $4,%lo(big_local_common+0x8000)($5) |
| li $5,%hi(small_local_common+0x8000) |
| sll $5,16 |
| lw $4,%lo(small_local_common+0x8000)($5) |
| li $5,%hi(-0x8000) |
| sll $5,16 |
| lw $4,%lo(-0x8000)($5) |
| li $5,%hi(data_label-0x8000) |
| sll $5,16 |
| lw $4,%lo(data_label-0x8000)($5) |
| li $5,%hi(data_label2-0x8000) |
| sll $5,16 |
| lw $4,%lo(data_label2-0x8000)($5) |
| li $5,%hi(big_external_data_label-0x8000) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label-0x8000)($5) |
| li $5,%hi(small_external_data_label-0x8000) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label-0x8000)($5) |
| li $5,%hi(big_external_common-0x8000) |
| sll $5,16 |
| lw $4,%lo(big_external_common-0x8000)($5) |
| li $5,%hi(small_external_common-0x8000) |
| sll $5,16 |
| lw $4,%lo(small_external_common-0x8000)($5) |
| li $5,%hi(big_local_common-0x8000) |
| sll $5,16 |
| lw $4,%lo(big_local_common-0x8000)($5) |
| li $5,%hi(small_local_common-0x8000) |
| sll $5,16 |
| lw $4,%lo(small_local_common-0x8000)($5) |
| li $5,%hi(0x10000) |
| sll $5,16 |
| lw $4,%lo(0x10000)($5) |
| li $5,%hi(data_label+0x10000) |
| sll $5,16 |
| lw $4,%lo(data_label+0x10000)($5) |
| li $5,%hi(data_label2+0x10000) |
| sll $5,16 |
| lw $4,%lo(data_label2+0x10000)($5) |
| li $5,%hi(big_external_data_label+0x10000) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label+0x10000)($5) |
| li $5,%hi(small_external_data_label+0x10000) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label+0x10000)($5) |
| li $5,%hi(big_external_common+0x10000) |
| sll $5,16 |
| lw $4,%lo(big_external_common+0x10000)($5) |
| li $5,%hi(small_external_common+0x10000) |
| sll $5,16 |
| lw $4,%lo(small_external_common+0x10000)($5) |
| li $5,%hi(big_local_common+0x10000) |
| sll $5,16 |
| lw $4,%lo(big_local_common+0x10000)($5) |
| li $5,%hi(small_local_common+0x10000) |
| sll $5,16 |
| lw $4,%lo(small_local_common+0x10000)($5) |
| li $5,%hi(0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(0x1a5a5)($5) |
| li $5,%hi(data_label+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(data_label+0x1a5a5)($5) |
| li $5,%hi(data_label2+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(data_label2+0x1a5a5)($5) |
| li $5,%hi(big_external_data_label+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(big_external_data_label+0x1a5a5)($5) |
| li $5,%hi(small_external_data_label+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(small_external_data_label+0x1a5a5)($5) |
| li $5,%hi(big_external_common+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(big_external_common+0x1a5a5)($5) |
| li $5,%hi(small_external_common+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(small_external_common+0x1a5a5)($5) |
| li $5,%hi(big_local_common+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(big_local_common+0x1a5a5)($5) |
| li $5,%hi(small_local_common+0x1a5a5) |
| sll $5,16 |
| lw $4,%lo(small_local_common+0x1a5a5)($5) |
| |
| # align section end to 16-byte boundary for easier testing on multiple targets |
| .p2align 4 |