| # Source file used to test the ld macro. |
| |
| .set mips1 |
| |
| .data |
| data_label: |
| .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 |
| ld $4,0 |
| ld $4,1 |
| ld $4,0x8000 |
| ld $4,-0x8000 |
| ld $4,0x10000 |
| ld $4,0x1a5a5 |
| ld $4,0($5) |
| ld $4,1($5) |
| ld $4,0x8000($5) |
| ld $4,-0x8000($5) |
| ld $4,0x10000($5) |
| ld $4,0x1a5a5($5) |
| ld $4,data_label |
| ld $4,big_external_data_label |
| ld $4,small_external_data_label |
| ld $4,big_external_common |
| ld $4,small_external_common |
| ld $4,big_local_common |
| ld $4,small_local_common |
| ld $4,data_label+1 |
| ld $4,big_external_data_label+1 |
| ld $4,small_external_data_label+1 |
| ld $4,big_external_common+1 |
| ld $4,small_external_common+1 |
| ld $4,big_local_common+1 |
| ld $4,small_local_common+1 |
| ld $4,data_label+0x8000 |
| ld $4,big_external_data_label+0x8000 |
| ld $4,small_external_data_label+0x8000 |
| ld $4,big_external_common+0x8000 |
| ld $4,small_external_common+0x8000 |
| ld $4,big_local_common+0x8000 |
| ld $4,small_local_common+0x8000 |
| ld $4,data_label-0x8000 |
| ld $4,big_external_data_label-0x8000 |
| ld $4,small_external_data_label-0x8000 |
| ld $4,big_external_common-0x8000 |
| ld $4,small_external_common-0x8000 |
| ld $4,big_local_common-0x8000 |
| ld $4,small_local_common-0x8000 |
| ld $4,data_label+0x10000 |
| ld $4,big_external_data_label+0x10000 |
| ld $4,small_external_data_label+0x10000 |
| ld $4,big_external_common+0x10000 |
| ld $4,small_external_common+0x10000 |
| ld $4,big_local_common+0x10000 |
| ld $4,small_local_common+0x10000 |
| ld $4,data_label+0x1a5a5 |
| ld $4,big_external_data_label+0x1a5a5 |
| ld $4,small_external_data_label+0x1a5a5 |
| ld $4,big_external_common+0x1a5a5 |
| ld $4,small_external_common+0x1a5a5 |
| ld $4,big_local_common+0x1a5a5 |
| ld $4,small_local_common+0x1a5a5 |
| ld $4,data_label($5) |
| ld $4,big_external_data_label($5) |
| ld $4,small_external_data_label($5) |
| ld $4,big_external_common($5) |
| ld $4,small_external_common($5) |
| ld $4,big_local_common($5) |
| ld $4,small_local_common($5) |
| ld $4,data_label+1($5) |
| ld $4,big_external_data_label+1($5) |
| ld $4,small_external_data_label+1($5) |
| ld $4,big_external_common+1($5) |
| ld $4,small_external_common+1($5) |
| ld $4,big_local_common+1($5) |
| ld $4,small_local_common+1($5) |
| ld $4,data_label+0x8000($5) |
| ld $4,big_external_data_label+0x8000($5) |
| ld $4,small_external_data_label+0x8000($5) |
| ld $4,big_external_common+0x8000($5) |
| ld $4,small_external_common+0x8000($5) |
| ld $4,big_local_common+0x8000($5) |
| ld $4,small_local_common+0x8000($5) |
| ld $4,data_label-0x8000($5) |
| ld $4,big_external_data_label-0x8000($5) |
| ld $4,small_external_data_label-0x8000($5) |
| ld $4,big_external_common-0x8000($5) |
| ld $4,small_external_common-0x8000($5) |
| ld $4,big_local_common-0x8000($5) |
| ld $4,small_local_common-0x8000($5) |
| ld $4,data_label+0x10000($5) |
| ld $4,big_external_data_label+0x10000($5) |
| ld $4,small_external_data_label+0x10000($5) |
| ld $4,big_external_common+0x10000($5) |
| ld $4,small_external_common+0x10000($5) |
| ld $4,big_local_common+0x10000($5) |
| ld $4,small_local_common+0x10000($5) |
| ld $4,data_label+0x1a5a5($5) |
| ld $4,big_external_data_label+0x1a5a5($5) |
| ld $4,small_external_data_label+0x1a5a5($5) |
| ld $4,big_external_common+0x1a5a5($5) |
| ld $4,small_external_common+0x1a5a5($5) |
| ld $4,big_local_common+0x1a5a5($5) |
| ld $4,small_local_common+0x1a5a5($5) |
| |
| # l.d and s.d are sort of like ld. |
| l.d $f4,0 |
| l.d $f4,1 |
| l.d $f4,0x8000 |
| l.d $f4,-0x8000 |
| l.d $f4,0($5) |
| l.d $f4,1($5) |
| l.d $f4,0x8000($5) |
| l.d $f4,-0x8000($5) |
| l.d $f4,small_external_common+0x1a5a5($5) |
| # Little endian will insert a nop here. |
| # We put it in explicitly so that big and little endian are similar. |
| nop |
| s.d $f4,0 |
| s.d $f4,1 |
| s.d $f4,0x8000 |
| s.d $f4,-0x8000 |
| s.d $f4,0($5) |
| s.d $f4,1($5) |
| s.d $f4,0x8000($5) |
| s.d $f4,-0x8000($5) |
| s.d $f4,big_external_common+0x1a5a5($5) |
| |
| # sd is handled like ld. Sanity check it. |
| sd $4,0 |
| |
| # Sanity check the -mips3 versions |
| .set mips3 |
| ld $4,big_local_common+0x1a5a5($5) |
| sd $4,small_local_common+0x1a5a5($5) |
| |
| # Round to a 16 byte boundary, for ease in testing multiple targets. |
| nop |