Lines Matching refs:SI

30 (define-pmacro (SI-ext x) "How to sign-extend a dword to dword (a nop)" x)
31 (define-pmacro (HI-ext x) "How to sign-extend a word to dword" (ext SI x))
32 (define-pmacro (QI-ext x) "How to sign-extend a byte to dword" (ext SI x))
33 (define-pmacro (SI-zext x) "How to zero-extend a dword to dword (a nop)" x)
34 (define-pmacro (HI-zext x) "How to zero-extend a word to dword" (zext SI x))
35 (define-pmacro (QI-zext x) "How to zero-extend a byte to dword" (zext SI x))
199 ((simplecris-const-timing-SI)
327 ((crisv32-timing-c-SI) ((crisv32 (unit u-const32) (unit u-exec))))
328 ((crisv32-timing-c-sr-SI) ((crisv32 (unit u-const32) (unit u-exec-to-sr))))
359 ((cris-timing-const-SI) (.splice
360 (.unsplice (simplecris-const-timing-SI))
361 (.unsplice (crisv32-timing-c-SI))))
362 ; Like cris-timing-const-SI, but destination special register.
363 ((cris-timing-const-sr-SI) (.splice
364 (.unsplice (simplecris-const-timing-SI))
365 (.unsplice (crisv32-timing-c-sr-SI))))
369 (.unsplice (crisv32-timing-c-sr-SI)))))
377 ((HI 5) (SI 9) (SI 10) (SI 11) (SI 12) (SI 13))
383 (QI 0) (QI 1) (HI 4) (SI 8))
401 (.splice (.unsplice (cris-implemented-writable-specregs-v0)) (SI 14))
409 (.splice (.unsplice (cris-implemented-readable-specregs-v0)) (SI 14))
414 (.splice (.unsplice (simplecris-common-writable-specregs)) (SI 14))
422 (.splice (.unsplice (simplecris-common-readable-specregs)) (SI 14))
428 (SI 7) (SI 14) (SI 15))
437 (SI 7) (SI 14) (SI 15))
442 ((SI 2) (QI 3)
443 (SI 5) (SI 6) (SI 7) (SI 9)
444 (SI 10) (SI 11) (SI 12) (SI 13) (SI 14) (SI 15))
449 (QI 0) (QI 1) (HI 4) (SI 8))
456 (.map (.pmacro (x) (SI (.cadr2 x)))
543 ((SI tmpcond) (BI condres))
815 (cris-d-hwregf-p h-gr SI 16)
821 (type register SI (16))
825 (if SI (eq index 15)
826 (error SI "General register read of PC is not implemented.")
827 (reg SI h-gr-real-pc index)))
834 (set (reg SI h-gr-real-pc index) val)))
840 (type register SI (16))
852 (type register SI (16))
861 (type register SI (16))
869 (type register SI (16))
878 (cris-d-hwregf-p h-sr SI 16)
886 (type register SI (16))
891 SI
899 (or SI
900 (and SI (raw-reg SI h-sr-x (regno ccr)) #xffffff00)
902 (zext SI (reg BI h-cbit))
904 (sll (zext SI (reg BI h-vbit)) 1)
906 (sll (zext SI (reg BI h-zbit)) 2)
908 (sll (zext SI (reg BI h-nbit)) 3)
910 (sll (zext SI (reg BI h-xbit)) 4)
912 (sll (zext SI (reg BI h-ibit)) 5)
914 (sll (zext SI (reg BI h-ubit)) 6)
916 (sll (zext SI (reg BI h-pbit)) 7)
918 (else (raw-reg SI h-sr-x index))))
928 (set (reg BI h-cbit) (if BI (ne SI (and val (sll 1 0)) 0) 1 0))
929 (set (reg BI h-vbit) (if BI (ne SI (and val (sll 1 1)) 0) 1 0))
930 (set (reg BI h-zbit) (if BI (ne SI (and val (sll 1 2)) 0) 1 0))
931 (set (reg BI h-nbit) (if BI (ne SI (and val (sll 1 3)) 0) 1 0))
932 (set (reg BI h-xbit) (if BI (ne SI (and val (sll 1 4)) 0) 1 0))
933 (set (reg BI h-ibit) (if BI (ne SI (and val (sll 1 5)) 0) 1 0))
934 (set (reg BI h-ubit) (if BI (ne SI (and val (sll 1 6)) 0) 1 0))
935 (set (reg BI h-pbit) (if BI (ne SI (and val (sll 1 7)) 0) 1 0))
936 (set-quiet (raw-reg SI h-sr-x (regno ccr)) val)
937 (set-quiet (raw-reg SI h-sr-x (regno dccr)) val)))
938 (else (set-quiet (raw-reg SI h-sr-x index) val)))))
951 (type register SI (16))
957 SI
963 (or SI
964 (and SI (raw-reg SI h-sr-x (regno ccs)) #x3ffffc00)
966 (zext SI (reg BI h-cbit))
968 (sll (zext SI (reg BI h-vbit)) 1)
970 (sll (zext SI (reg BI h-zbit)) 2)
972 (sll (zext SI (reg BI h-nbit)) 3)
974 (sll (zext SI (reg BI h-xbit)) 4)
976 (sll (zext SI (reg BI h-ibit)) 5)
978 (sll (zext SI (reg BI h-ubit)) 6)
980 (sll (zext SI (reg BI h-pbit)) 7)
982 (sll (zext SI (reg BI h-rbit)) 8)
984 (sll (zext SI (reg BI h-sbit)) 9)
986 (sll (zext SI (reg BI h-mbit)) 30)
988 (sll (zext SI (reg BI h-qbit)) 31)
993 (raw-reg SI h-gr-x (regno sp))
994 (raw-reg SI h-sr-x (regno usp))))
995 (else (raw-reg SI h-sr-x index))))
1007 (set (reg BI h-cbit) (if BI (ne SI (and val (sll 1 0)) 0) 1 0))
1008 (set (reg BI h-vbit) (if BI (ne SI (and val (sll 1 1)) 0) 1 0))
1009 (set (reg BI h-zbit) (if BI (ne SI (and val (sll 1 2)) 0) 1 0))
1010 (set (reg BI h-nbit) (if BI (ne SI (and val (sll 1 3)) 0) 1 0))
1011 (set (reg BI h-xbit) (if BI (ne SI (and val (sll 1 4)) 0) 1 0))
1012 (set (reg BI h-ibit) (if BI (ne SI (and val (sll 1 5)) 0) 1 0))
1013 (set (reg BI h-sbit) (if BI (ne SI (and val (sll 1 9)) 0) 1 0))
1014 (set (reg BI h-mbit) (if BI (ne SI (and val (sll 1 30)) 0) 1 0))
1015 (set (reg BI h-pbit) (if BI (ne SI (and val (sll 1 7)) 0) 1 0))
1016 (set (reg BI h-rbit) (if BI (ne SI (and val (sll 1 8)) 0) 1 0))
1017 (set (reg BI h-qbit) (if BI (ne SI (and val (sll 1 31)) 0) 1 0))
1023 (set (reg BI h-ubit) (if BI (ne SI (and val (sll 1 6)) 0) 1 0))
1024 (set-quiet (raw-reg SI h-sr-x index) val)))
1029 (if (reg BI h-ubit) (set (raw-reg SI h-gr-x (regno sp)) val))
1030 (set (raw-reg SI h-sr-x (regno usp)) val)))
1043 (else (set-quiet (raw-reg SI h-sr-x index) val))))
1050 (type register SI (16))
1052 (get (index) (c-call SI "@cpu@_read_supr" index))
1121 (register SI)
1137 (set (reg SI h-kernel-sp) (raw-reg h-gr-x (regno sp)))
1269 "Prefix-address register" (MACH-PRE-V32) (register SI))
1275 (type register SI)
1330 ((SI tmpval))
1378 ((SI absval))
1379 (set absval (srl (sub (sub SI (ifield f-disp9) pc)
1380 (if SI current-mach-is-v32 0 2)) 1))
1385 ((SI abslo) (SI absval))
1388 (or (if SI (ne (ifield f-disp9-hi) 0)
1389 (inv SI #xff)
1393 (add SI (add SI pc absval) (if SI current-mach-is-v32 0 2))))
1405 ((value pc) (srl SI (sub SI value pc) 1))
1407 ((value pc) (add SI pc (sll SI value 1)))
1442 ; Sign-extension should be implicit through use of SI (as opposed to USI)
1449 16 16 15 16 SI
1450 ((value pc) (sub SI value (add SI pc (if SI current-mach-is-v32 0 4))))
1451 ((value pc) (add SI (ext SI (trunc HI value)) (add SI pc (if SI current-mach-is-v32 0 4))))
1464 ((value pc) (sub SI value pc))
1465 ((value pc) (add SI pc value))
1759 (fsem SI)
1778 (fsem SI)))
1797 ((dni-c-SI-attr name comment attr syntax fmt fsem)
1798 (dni name comment attr syntax fmt fsem (cris-timing-const-SI))))
1806 ((dni-c-SI name comment syntax fmt fsem)
1807 (dni-c-SI-attr name comment () syntax fmt fsem)))
1833 (set-quiet nbit-move (lt SI value 0))
1834 (set-quiet zbit-move (andif BI (eq SI value 0) (if BI xbit zbit 1)))
1869 (ne DI R (zext DI (trunc SI R))))
1873 (ne DI R (ext DI (trunc SI R))))
1941 (if SI (andif prefix-set (not inc))
1949 (define-pmacro (QI-part val) (and SI val #xff))
1950 (define-pmacro (non-QI-part val) (and SI val #xffffff00))
1951 (define-pmacro (HI-part val) (and SI val #xffff))
1952 (define-pmacro (non-HI-part val) (and SI val #xffff0000))
1953 (define-pmacro (SI-part val) val)
1954 (define-pmacro (non-SI-part val) 0)
1959 ((SI oldregval))
1962 (or SI ((.sym BWD -part) newval) ((.sym non- BWD -part) oldregval))))
1967 (define-pmacro (set-subreg-gr-SI SI gregno newval)
1997 ((SI pcval))
1998 (set pcval (add SI pc 2))
2000 (setf-move SI pcval))
2009 ((SI newval))
2036 ((BW tmpops) (SI newval))
2038 (set newval (ext SI tmpops))
2040 (setf-move SI newval)))
2064 ((BW tmpops) (SI newval))
2066 (set newval (zext SI tmpops))
2068 (setf-move SI newval)))
2096 (dni-c-SI
2101 ((SI newval))
2104 (setf-move SI newval))
2114 ((SI newval))
2116 (set newval (ext SI (trunc QI sconst8)))
2118 (setf-move SI newval))
2126 ((SI newval))
2128 (set newval (ext SI (trunc HI sconst16)))
2130 (setf-move SI newval))
2139 ((SI newval))
2141 (set newval (zext SI (trunc QI uconst8)))
2143 (setf-move SI newval))
2151 ((SI newval))
2153 (set newval (zext SI (trunc HI uconst16)))
2155 (setf-move SI newval))
2163 (cris-arit add SI Rd j)
2171 (cris-arit sub SI Rd j)
2201 (define-pmacro SI-size 4)
2208 ((SI addr) (size tmp-mem) (BI postinc))
2215 (if SI (eq prefix-set 0)
2241 ((SI addr) (BI postinc))
2248 (if SI (eq prefix-set 0)
2307 (fsem SI)
2406 (dni-c-SI
2411 sub SI (.pmacro (sz regno val) (nop)) 0
2421 sub SI (.pmacro (sz regno val) (nop)) 0
2434 sub SI (.pmacro (sz regno val) (nop)) 0
2444 sub SI (.pmacro (sz regno val) (nop)) 0
2445 Rd (ext SI (trunc QI sconst8)) cbit cbit)
2452 sub SI (.pmacro (sz regno val) (nop)) 0
2453 Rd (ext SI (trunc HI sconst16)) cbit cbit)
2465 sub SI (.pmacro (sz regno val) (nop)) 0
2475 sub SI (.pmacro (sz regno val) (nop)) 0
2476 Rd (zext SI (trunc QI uconst8)) cbit cbit)
2483 sub SI (.pmacro (sz regno val) (nop)) 0
2484 Rd (zext SI (trunc HI uconst16)) cbit cbit)
2496 ((SI tmp))
2500 (if SI (andif prefix-set (not inc)) (regno Rs) (regno Rd))
2514 ((SI tmp))
2515 (set tmp (ext SI (cris-get-mem BW Rs)))
2519 (setf-move SI tmp)))
2531 ((SI tmp))
2532 (set tmp (zext SI (cris-get-mem BW Rs)))
2536 (setf-move SI tmp)))
2553 ((SI tmp) (SI rno))
2601 ((SI grno) (SI prno) (SI newval))
2632 ((SI retaddr))
2656 ((SI rno) (SI newval))
2679 (define-pmacro SI-operand const32)
2743 ((SI rno))
2800 ; Without the SI attribute, UINT is generated, which isn't supported by
2802 (if (ge SI (regno Rs-dfield) regn)
2804 ((SI tmp))
2806 (set (mem SI addr) tmp)
2817 ((SI addr) (BI postinc))
2825 (sequence ((SI dummy)) (set dummy Rs-dfield))
2830 (if SI (eq prefix-set 0)
2841 (if SI (eq prefix-set 0) addr prefixreg)))
2853 ((SI addr) (BI postinc))
2860 (sequence ((SI dummy)) (set dummy Rs-dfield))
2883 ; Without the SI attribute, UINT is generated, which isn't supported by
2885 (if (ge SI (regno Rd) regn)
2887 ((SI tmp))
2888 (set tmp (mem SI addr))
2900 ((SI addr) (BI postinc))
2909 (if SI (eq prefix-set 0)
2914 (sequence ((SI dummy)) (set dummy Rd))
2925 (set Rs (if SI (eq prefix-set 0) addr prefixreg)))
2944 ((SI addr) (BI postinc))
2953 (if SI (eq prefix-set 0)
2962 (set pc (mem SI addr))
2969 ((SI tmp))
2970 (set tmp (mem SI addr))
2978 (set Rs (if SI (eq prefix-set 0) addr prefixreg)))
2989 ((SI addr) (BI postinc))
2999 (sequence ((SI dummy)) (set dummy Rd))
3047 (dni-c-SI
3051 (cris-arit add SI Rd const32)
3062 ((SI newpc) (SI oldpc) (SI offs))
3064 (set oldpc (add SI pc 6))
3065 (set newpc (add SI oldpc offs))
3067 (setf-arit SI add oldpc offs newpc cbit))
3076 (.pmacro (BW) (cris-arit add SI Rd ((.sym BW -ext) (trunc BW Rs))))
3085 (.pmacro (BW) (cris-arit-3op add SI Rd ((.sym BW -ext) (cris-get-mem BW Rs)) Rs))
3093 (cris-arit add SI Rd (ext SI (trunc QI sconst8)))
3099 (cris-arit add SI Rd (ext SI (trunc HI sconst16)))
3113 ((SI newpc) (SI oldpc) (HI offs))
3120 (set oldpc (add SI pc 2))
3121 (set newpc (add SI oldpc offs))
3123 (setf-arit SI add oldpc (ext SI offs) newpc cbit))
3132 (.pmacro (BW) (cris-arit add SI Rd ((.sym BW -zext) (trunc BW Rs))))
3142 (cris-arit-3op add SI Rd ((.sym BW -zext) (cris-get-mem BW Rs)) Rs))
3150 (cris-arit add SI Rd (zext SI (trunc QI sconst8)))
3156 (cris-arit add SI Rd (zext SI (trunc HI sconst16)))
3191 (dni-c-SI
3195 (cris-arit sub SI Rd const32)
3203 (.pmacro (BW) (cris-arit sub SI Rd ((.sym BW -ext) (trunc BW Rs))))
3213 (cris-arit-3op sub SI Rd ((.sym BW -ext) (cris-get-mem BW Rs)) Rs))
3221 (cris-arit sub SI Rd (ext SI (trunc QI sconst8)))
3227 (cris-arit sub SI Rd (ext SI (trunc HI sconst16)))
3235 (.pmacro (BW) (cris-arit sub SI Rd ((.sym BW -zext) (trunc BW Rs))))
3245 (cris-arit-3op sub SI Rd ((.sym BW -zext) (cris-get-mem BW Rs)) Rs))
3253 (cris-arit sub SI Rd (zext SI (trunc QI sconst8)))
3259 (cris-arit sub SI Rd (zext SI (trunc HI sconst16)))
3273 (cris-arit add SI Rd Rs))
3286 (cris-arit add SI Rd (cris-get-mem SI Rs)))
3290 (dni-c-SI-attr
3298 (cris-arit add SI Rd const32))
3302 (dni-c-SI-attr
3334 (set Rd-sfield (add SI Rd-sfield (mul Rs-dfield (.sym BWD -size))))
3391 (set Rd (trunc SI tmpr))
3392 (set mof (trunc SI (srl tmpr 32)))
3411 (set Rd (trunc SI tmpr))
3412 (set mof (trunc SI (srl tmpr 32)))
3428 (cris-arit5 add SI Rd-sfield Rd-sfield Ps rbit rbit))
3438 ((SI tmpd) (SI tmps))
3440 (set tmpd (add (sll Rd 1) (if SI nbit tmps 0)))
3442 (setf-move SI tmpd))
3451 ((SI tmp) (SI tmps) (SI tmpd))
3454 (set tmpd (if SI (geu tmp tmps) (sub tmp tmps) tmp))
3456 (setf-move SI tmpd))
3465 ((SI tmpd))
3468 (setf-move SI tmpd))
3498 (if SI (andif prefix-set (not inc)) (regno Rs) (regno Rd))
3526 (dni-c-SI
3531 ((SI tmpd))
3532 (set tmpd (and SI Rd const32))
3533 (set-subreg-gr SI (regno Rd) tmpd)
3534 (setf-move SI tmpd))
3543 ((SI tmpd))
3544 (set tmpd (and SI Rd i))
3545 (set-subreg-gr SI (regno Rd) tmpd)
3546 (setf-move SI tmpd))
3576 (if SI (andif prefix-set (not inc)) (regno Rs) (regno Rd))
3604 (dni-c-SI
3609 ((SI tmpd))
3610 (set tmpd (or SI Rd const32))
3611 (set-subreg-gr SI (regno Rd) tmpd)
3612 (setf-move SI tmpd))
3621 ((SI tmpd))
3622 (set tmpd (or SI Rd i))
3623 (set-subreg-gr SI (regno Rd) tmpd)
3624 (setf-move SI tmpd))
3633 ((SI tmpd))
3634 (set tmpd (xor SI Rd Rs))
3636 (setf-move SI tmpd))
3642 SI
3643 ((SI tmpr))
3658 SI
3659 ((SI tmpb))
3668 SI
3669 ((SI tmpb))
3677 (error SI "SWAP without swap modifier isn't implemented")
3699 SI
3700 ((SI tmpcode) (SI tmpval) (SI tmpres))
3723 ((SI tmp) (SI tmpd))
3727 (setf-move SI tmpd))
3737 ((SI tmps) (SI tmpd))
3741 (setf-move SI tmpd))
3752 ((BWD tmpd) (SI cnt1) (SI cnt2))
3754 (set cnt2 (if SI (ne (and cnt1 32) 0) 31 (and cnt1 31)))
3755 (set tmpd (sra SI (ext SI (trunc BWD Rd)) cnt2))
3766 ((SI tmpd))
3769 (setf-move SI tmpd))
3780 ((SI tmpd) (SI cnt))
3784 (if SI (ne (and cnt 32) 0)
3786 (srl SI (zext SI (trunc BWD Rd)) (and cnt 31))))
3797 ((SI tmpd))
3800 (setf-move SI tmpd))
3811 ((SI tmpd) (SI cnt))
3815 (if SI (ne (and cnt 32) 0)
3817 (sll SI (zext SI (trunc BWD Rd)) (and cnt 31))))
3828 ((SI tmpd))
3831 (setf-move SI tmpd))
3840 ((SI tmpd) (SI cnt))
3842 (setf-move SI tmpd))
3851 ((SI tmpd))
3853 (setf-move SI tmpd))
3868 ((SI tmp))
3894 ((SI tmp))
3921 (if SI (and rbit (not p1)) 0 #x80))))
3942 ((SI oldccs) (SI savemask))
4072 (set Pd (add SI pc 4))
4085 (set Pd (add SI pc 2))
4102 (set Pd (add SI pc 8))
4115 (set Pd (add SI pc 2))
4116 (set pc (cris-get-mem SI Rs))
4119 (dni-c-SI-attr
4126 (set Pd (add SI pc 6))
4158 (set Pd (add SI pc 8))
4175 (set Pd (add SI pc 8))
4192 (set Pd (add SI pc 12))
4209 (set Pd (add SI pc 12))
4231 ((SI tmpopd) (SI tmpops) (SI newval))
4234 (set newval (if SI (ltu tmpops tmpopd) tmpops tmpopd))
4236 (setf-move SI newval)))
4249 ((SI tmpopd) (SI tmpops) (SI newval))
4252 (set newval (if SI (ltu tmpops tmpopd) tmpops tmpopd))
4256 (setf-move SI newval)))
4265 ((SI tmpopd) (SI tmpops) (SI newval))
4266 (set tmpops (zext SI (trunc QI uconst8)))
4268 (set newval (if SI (ltu tmpops tmpopd) tmpops tmpopd))
4270 (setf-move SI newval))
4277 ((SI tmpopd) (SI tmpops) (SI newval))
4278 (set tmpops (zext SI uconst16))
4280 (set newval (if SI (ltu tmpops tmpopd) tmpops tmpopd))
4282 (setf-move SI newval))
4284 (dni-c-SI
4289 ((SI tmpopd) (SI tmpops) (SI newval))
4292 (set newval (if SI (ltu tmpops tmpopd) tmpops tmpopd))
4294 (setf-move SI newval))
4305 (set Rd-sfield (zext SI truthval))
4316 ((SI tmpd) (SI tmp))
4332 (setf-move SI tmpd))
4342 (set prefixreg (add SI Rs-dfield o))
4355 (set prefixreg (add SI (add SI pc 2) o))
4372 (dni-c-SI-attr
4378 ((SI newpc) (SI oldpc) (SI offs))
4380 (set oldpc (add SI pc 6))
4381 (set newpc (add SI oldpc offs))
4415 ((SI dummy))
4416 (set dummy (cris-get-mem SI sp))
4433 (set prefixreg (add SI Rd ((.sym BWD -ext) tmps)))
4444 (set prefixreg (add SI Rd (ext SI (trunc QI sconst8))))
4453 (set prefixreg (add SI Rd (ext SI (trunc HI sconst16))))
4456 (dni-c-SI
4462 (set prefixreg (add SI Rd const32))
4474 ((SI tmps))
4475 (set tmps (cris-get-mem SI Rs))
4481 (dni-c-SI-attr
4502 (set prefixreg (add SI Rd-sfield (mul Rs-dfield (.sym BWD -size))))
4515 (set prefixreg (add SI (add SI pc 4) (mul Rs-dfield (.sym BWD -size))))