Home | History | Annotate | Download | only in tic6x
      1 # Test relocation overflow and insufficiently divisible values.  Note
      2 # that divisibility checks for constant values are only applicable to
      3 # load and store offsets, not ADDA, because constant values are
      4 # encoded literally for ADDA, and divisbility checks for offsets from
      5 # symbols are only applicable with REL relocations.
      6 .data
      7 t0:
      8 	.short b65535-b0
      9 	.short b65536-b0
     10 	.short b0-b32768
     11 	.short b32767-b65536
     12 	.byte b255-b0
     13 	.byte b256-b0
     14 	.byte b0-b128
     15 	.byte b127-b256
     16 .text
     17 .nocmp
     18 .globl f
     19 f:
     20 	addab .D1X b14,b32767-b0,a5
     21 	addab .D1X b14,b32768-b0,a5
     22 	addab .D1X b14,b127-b128,a5
     23 	addah .D1X b14,b32767-b0,a5
     24 	addah .D1X b14,b32768-b0,a5
     25 	addah .D1X b14,b127-b128,a5
     26 	addaw .D1X b14,b32767-b0,a5
     27 	addaw .D1X b14,b32768-b0,a5
     28 	addaw .D1X b14,b127-b128,a5
     29 	addk .S1 b32767-b0,a9
     30 	addk .S1 b0-b32768,a9
     31 	addk .S1 b32768-b0,a9
     32 	addk .S1 b32767-b65536,a9
     33 	mvk .S1 b32767-b0,a9
     34 	mvk .S1 b0-b32768,a9
     35 	mvk .S1 b32768-b0,a9
     36 	mvk .S1 b32767-b65536,a9
     37 	ldb .D2T2 *+b14(b32767-b0),b1
     38 	ldb .D2T2 *+b14(b32768-b0),b1
     39 	ldb .D2T2 *+b14(b32767-b32768),b1
     40 	ldbu .D2T2 *+b14(b32767-b0),b1
     41 	ldbu .D2T2 *+b14(b32768-b0),b1
     42 	ldbu .D2T2 *+b14(b32767-b32768),b1
     43 	ldh .D2T2 *+b14(h32767-h0),b1
     44 	ldh .D2T2 *+b14(h32768-h0),b1
     45 	ldh .D2T2 *+b14(h32767-h32768),b1
     46 	ldh .D2T2 *+b14(b32768-b32767),b1
     47 	ldhu .D2T2 *+b14(h32767-h0),b1
     48 	ldhu .D2T2 *+b14(h32768-h0),b1
     49 	ldhu .D2T2 *+b14(h32767-h32768),b1
     50 	ldhu .D2T2 *+b14(b32768-b32767),b1
     51 	ldw .D2T2 *+b14(w32767-w0),b1
     52 	ldw .D2T2 *+b14(w32768-w0),b1
     53 	ldw .D2T2 *+b14(w32767-w32768),b1
     54 	ldw .D2T2 *+b14(h32768-h32767),b1
     55 	stb .D2T2 b1,*+b14(b32767-b0)
     56 	stb .D2T2 b1,*+b14(b32768-b0)
     57 	stb .D2T2 b1,*+b14(b32767-b32768)
     58 	sth .D2T2 b1,*+b14(h32767-h0)
     59 	sth .D2T2 b1,*+b14(h32768-h0)
     60 	sth .D2T2 b1,*+b14(h32767-h32768)
     61 	sth .D2T2 b1,*+b14(b32768-b32767)
     62 	stw .D2T2 b1,*+b14(w32767-w0)
     63 	stw .D2T2 b1,*+b14(w32768-w0)
     64 	stw .D2T2 b1,*+b14(w32767-w32768)
     65 	stw .D2T2 b1,*+b14(h32768-h32767)
     66 b0:
     67 	.space 127
     68 b127:
     69 	.space 1
     70 b128:
     71 	.space 127
     72 b255:
     73 	.space 1
     74 b256:
     75 	.space 32511
     76 b32767:
     77 	.space 1
     78 b32768:
     79 	.space 32767
     80 b65535:
     81 	.space 1
     82 b65536:
     83 	.word 0
     84 h0:
     85 	.space 65534
     86 h32767:
     87 	.space 2
     88 h32768:
     89 	.word 0
     90 w0:
     91 	.space 131068
     92 w32767:
     93 	.space 4
     94 w32768:
     95 	.word 0
     96