diff options
| author | Sonicadvance1 <sonicadvance1@gmail.com> | 2010-04-01 05:10:39 +0000 |
|---|---|---|
| committer | Sonicadvance1 <sonicadvance1@gmail.com> | 2010-04-01 05:10:39 +0000 |
| commit | 47f61920049a19c9caecd2bb327cbb50ae0b36d8 (patch) | |
| tree | ddf9ac082406cd70810e1d956b2155ea23e3b8ed /Source/TestSuite/ASM/source/asm_integer.cpp | |
| parent | c3df2e93d788d6a7bbc2e3c1913983059c7a5fa6 (diff) | |
add two paths to addx in JIT that Crazy Taxi kept hitting, add 'add' and 'add.' tests to the ASM test, although I haven't tested it yet
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5261 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/TestSuite/ASM/source/asm_integer.cpp')
| -rw-r--r-- | Source/TestSuite/ASM/source/asm_integer.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Source/TestSuite/ASM/source/asm_integer.cpp b/Source/TestSuite/ASM/source/asm_integer.cpp index 2f7891c40b..ed81832a5b 100644 --- a/Source/TestSuite/ASM/source/asm_integer.cpp +++ b/Source/TestSuite/ASM/source/asm_integer.cpp @@ -1,5 +1,24 @@ #include "asm_tables.h" #include "Defines.h" + +void add(u32 *a, u32 *b, u32 *c, u32 *d) +{ + asm( + "add %0,%1,%2" + : "=r"(*a) + : "r"(*b), "r"(*c) + ); +} +void addRC(u32 *a, u32 *b, u32 *c, u32 *d) +{ + asm( + "add. %0,%1,%2" + : "=r"(*a) + : "r"(*b), "r"(*c) + : "cc" + ); +} + void subfc(u32 *a, u32 *b, u32 *c, u32 *d) { asm( |
