assembly 443

  1. Why doesn't GCC optimize a*a*a*a*a*a to (a*a*a)*(a*a*a)?
  2. Is < faster than <=?
  3. Replacing a 32-bit loop count variable with 64-bit introduces crazy performance deviations
  4. Why is this C++ code faster than my hand-written assembly for testing the Collatz conjecture?
  5. How do I achieve the theoretical maximum of 4 FLOPs per cycle?
  6. What's the purpose of the LEA instruction?
  7. When is assembly faster than C?
  8. Why does GCC generate 15-20% faster code if I optimize for size instead of speed?
  9. How do you get assembler output from C/C++ source in gcc?
  10. Why does Java switch on contiguous ints appear to run faster with added cases?
  11. Why aren't programs written in Assembly more often?
  12. Why would introducing useless MOV instructions speed up a tight loop in x86_64 assembly?
  13. Is 'switch' faster than 'if'?
  14. Using GCC to produce readable assembly?
  15. Protecting executable from reverse engineering?
  16. What does multicore assembly language look like?
  17. What is exactly the base pointer and stack pointer? To what do they point?
  18. What is a retpoline and how does it work?


  19. Is it possible to “decompile” a Windows .exe? Or at least view the Assembly?
  20. Why does GCC generate such radically different assembly for nearly the same C code?
  21. Assembly code vs Machine code vs Object code?
  22. Why does GCC use multiplication by a strange number in implementing integer division?
  23. Is inline assembly language slower than native C++ code?
  24. Help me understand this JavaScript exploit
  25. How are everyday machines programmed?
  26. Show current assembly instruction in GDB
  27. Can num++ be atomic for 'int num'?
  28. How do you use gcc to generate assembly code in Intel syntax?
  29. Quickly find whether a value is present in a C array?
  30. How can I see the assembly code for a C++ program?
  31. How can I build a small operating system on an old desktop computer?
  32. `testl` eax against eax?
  33. What are the calling conventions for UNIX & Linux system calls on i386 and x86-64
  34. Why is SSE scalar sqrt(x) slower than rsqrt(x) * x?
  35. Learning assembly
  36. Purpose of ESI & EDI registers?
  37. What is the purpose of XORing a register with itself?
  38. Why is x86 ugly? Why is it considered inferior when compared to others?
  39. What is the difference between MOV and LEA?
  40. How exactly does the callstack work?
  41. What are CFI directives in Gnu Assembler (GAS) used for?
  42. What is the meaning of “non temporal” memory accesses in x86
  43. What's a good C decompiler?
  44. How to view the assembly behind the code using Visual C++?
  45. What does `dword ptr` mean?
  46. What is the best way to set a register to zero in x86 assembly: xor, mov or and?
  47. Which is faster : if (bool) or if(int)?
  48. The point of test %eax %eax
  49. C code loop performance
  50. Why do you program in assembly?