- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm using the MIC GNU toolchain (extracted from KNC_beta-2.1.3653-8-rhel-6.2.tgz) to port some system software to Intel MIC. The assembler appears to be a modified binutils-2.22.52.20120302 snapshot. I've noticed that assembling a "jecxz" results in not one 0x67 prefix as expected, but two 0x67 prefixes, which I believe is technically invalid (though the HW seems to swallow it).
> cat jecxz.s
.text
.globl foo
foo:
jecxz 1f
1: ret
> /usr/linux-k1om-4.7/bin/x86_64-k1om-linux-as -o jecxz.o jecxz.s
> /usr/linux-k1om-4.7/bin/x86_64-k1om-linux-objdump -d jecxz.o
jecxz.o: file format elf64-x86-64
Disassembly of section .text:
0000000000000000 <foo>:
0: 67 67 e3 00 addr64 jecxz 4 <foo+0x4>
4: c3 retq
A plain vanilla binutils-2.22 does not generate the extra 0x67 prefix when assembling with --march=k1om.
/Mikael
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Seems that the bug fix has propagated, our latest test (and with the latest MPSS http://software.intel.com/en-us/articles/intel-manycore-platform-software-stack-mpss) aren't showing this problem any longer
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page