Fixing XO instruction decoding.

This commit is contained in:
Ben Vanik 2013-01-28 15:31:46 -08:00
parent 9b0cb94e43
commit 0fde6135a0
5 changed files with 21 additions and 3 deletions

View File

@ -147,7 +147,7 @@ typedef struct {
// kXEPPCInstrFormatXO
struct {
uint32_t Rc : 1;
uint32_t : 8;
uint32_t : 9;
uint32_t OE : 1;
uint32_t RB : 5;
uint32_t RA : 5;

View File

@ -22,8 +22,8 @@ namespace {
KernelState::KernelState(xe_pal_ref pal, xe_memory_ref memory,
shared_ptr<ExportResolver> export_resolver) {
pal = xe_pal_retain(pal);
memory = xe_memory_retain(memory);
this->pal = xe_pal_retain(pal);
this->memory = xe_memory_retain(memory);
export_resolver_ = export_resolver;
}

BIN
test/codegen/add.bin Executable file

Binary file not shown.

9
test/codegen/add.dis Normal file
View File

@ -0,0 +1,9 @@
add.o: file format elf64-powerpc
Disassembly of section .text:
0000000082010000 <.text>:
82010000: 7d 65 ca 14 add r11,r5,r25
82010004: 4e 80 00 20 blr

9
test/codegen/add.s Normal file
View File

@ -0,0 +1,9 @@
# REGISTER_IN r5 0x00100000
# REGISTER_IN r25 0x0000FFFF
add r11, r5, r25
blr
# REGISTER_OUT r5 0x00100000
# REGISTER_OUT r25 0x0000FFFF
# REGISTER_OUT r11 0x0010FFFF