Date: Wed, 15 May 2013 23:16:27 +0200 From: Dániel Bali <balijanosdaniel@...il.com> To: john-dev@...ts.openwall.com Subject: Re: AMD GCN ISA development Hello! Which one? You fail at quoting e-mails. Please try to improve at that. > Apologies, I will quote my replies from now on! > Page 161 (aka 11-67) in > AMD_Southern_Islands_Instruction_Set_Architecture.pdf (revision 1.0, > August 2012) gives the opcode for V_ADD_I32 as 0x25, but the opcode > field starts 1 bit into the 32-bit value for the instruction, with the > most significant bit as always zero. This gives us 0x25 * 2 for the > most significant byte, and that's the 0x4A that you see. Oh, this is interesting! I didn't know that. I have to dig into that specification deeper. The value we'd see here for 42 > would have been 0x0AA (9-bit) per the documentation. 0x0BF is 191 > decimal, so the encoding above would seem to correspond to the integer > constant of 63. Maybe it's some copy-paste error on your part? > Indeed, it was a copy-paste error, I copied from the wrong isa dump. Sorry. I checked out the sections of the generated ELF binary and I understand what needs to be patched now. Basically there is an inner ELF in the .text section, which contains another .text section with the GCN microcode inside. I will work out a way to patch these generated binaries with any GCN ISA microcode. After that we would need a GCN assembler that we can use on Unix. I checked out the AMD Developer Central and there is some discussion here: http://devgurus.amd.com/message/1296944, I saw that Sayantan posted there today and realhet is active on the forums again. One of his replies ( http://devgurus.amd.com/message/1296944#1296944) states that "They have shortened the internal cal.elf file by taking out the binary CAL program from it. The new cal elf contains only 6 sections not 10. A frined also told that with the new kernel he was failed to run old precompiled binary kernels. Maybe the new driver fails to load a cal.elf with 10 sections." Is this a problem for us? The inner ELF binary that was generated on the HD 7970 contains 10 sections too. Will we have to write our own GCN assembler? It would be a fun project, but surely someone worked on something similar before? The discussion I linke started in January and I didn't find anything besides that, by the way. Could we ask realhet for (some part of) the source he made for HetPas? Thanks, Daniel Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.