mirror of
https://github.com/tinygrad/tinygrad.git
synced 2026-06-14 17:05:35 +08:00
21 lines
739 B
Python
21 lines
739 B
Python
#!/usr/bin/env python3
|
|
import unittest
|
|
import tinygrad.runtime.autogen.amd.cdna.ins as cdna
|
|
from test.amd.hw.test_cdna_vop3 import run_cdna
|
|
|
|
class TestCDNASDWA(unittest.TestCase):
|
|
def test_v_add_co_u32_e32_writes_vcc(self):
|
|
out = run_cdna([
|
|
cdna.s_mov_b32(cdna.s[0], 0xffffffff),
|
|
cdna.v_mov_b32_e32(cdna.v[0], cdna.s[0]),
|
|
cdna.v_mov_b32_e32(cdna.v[13], 1),
|
|
cdna.v_add_co_u32_e32(cdna.v[0], cdna.SDWA, cdna.v[13], vsrc0=cdna.v[0], dst_sel=6, src0_sel=6),
|
|
cdna.v_mov_b32_e32(cdna.v[2], cdna.VCC_LO),
|
|
cdna.v_lshlrev_b32_e32(cdna.v[2], 31, cdna.v[2]),
|
|
cdna.v_or_b32_e32(cdna.v[2], cdna.v[2], cdna.v[0]),
|
|
])
|
|
self.assertEqual(out, 0x80000000)
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|