4 ms·
AMD64 and EM64T are actually not identical. Though it doesn’t usually matter much in usermode, they are by specification not the same architecture. x86_64 is an
by jchw 6y ago
AMD64 and EM64T are actually not identical. Though it doesn’t usually matter much in usermode, they are by specification not the same architecture. x86_64 is an umbrella for the various almost identical 64 bit extensions to x86.
- anticensor 6y agoI have encountered that unfortunate fact when doing my term homework for a graduate level computer architecture course. Failure to detect or misdetection of on which kind of x86-64 you run will cause type confusion and finally crash your code.
- saagarjha 6y agoWould you mind sharing what you were doing where the difference mattered?
- anticensor 6y agoI did not perform an applied experiment, more a literature and benchmarks review; but Mayhem and Nubok[0] say this: > Near branches with the 0×66 (operand size) prefix behave differently. One type of CPU clears only the top 32 bits, while the other type clears the top 48 bits. This is more than enough to send your code into wrong address and possibly cause a crash. [0]: https://superuser.com/posts/383943/ https://superuser.com/posts/383943/