Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

World's Thickest Book

Name: Anonymous 2013-01-30 23:10

Name: Cudder !MhMRSATORI!fR8duoqGZdD/iE5 2013-02-03 5:20

>>26
I'm pretty sure Intel were designing 64-bit x86, AMD just got to the market first.

They still have the ugly one-operand divide instruction that can't take immediates
As if MIPS' completely separate result registers and arcane timing requirements are any better? And ARM didn't even have a divide instruction until very recently...

parity bit which is hardly ever used because it's untestable by portable languages
So what? If the language doesn't let you use the full functionality of the CPU then it's the language's fault.

stack-based x87 that makes things harder for compilers
Again, it's the compiler writers that need to get smarter. And if anything, stack-based ISAs are far easier to generate code for than register-based.

a Z80-compatible flags register
So what?

no absolute CALL
Because relative calls have advantages over absolutes and can't be easily simulated by absolutes (relocation etc.), but the opposite is not true.

booting in real mode
So what? You get backwards compatibility for free, and can switch into protected mode if needed; it's only 4 instructions or so, and you get to decide what the GDT should be. Intel did try making a CPU that booted in protected mode, the 80376, and it failed miserably: you still needed to setup the protected mode stuff, and lost the ability to run existing code, so there was absolutely no advantage.

which has less address space than the cache of some new CPUs
Ever tried DOS benchmarks on a late-model i7? No L3 cache misses at all, so it's bloody fast. Fun.

parity [...] BSR and BSF
You don't know what parity is, do you? POPCNT is halfway there, but you need a few more instructions. (Aside: When I last tried, common compilers still don't know how to use the sign flag correctly; try if((a + b) < 0), the expected result should be add followed by js/jns).

Everyone uses SSE/AVX
No, they shouldn't be except for the special purposes those instructions were designed for, i.e. applications that require lots of parallel operations on data. Video and image processing, mostly.

microcode execution engine which is very RISC like
It's not. This is marketing myth.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List