fork download
  1. long
  2. system_call(long number,
  3. long _1, long _2, long _3, long _4, long _5, long _6)
  4. {
  5. long value;
  6.  
  7. register long r10 __asm__ ("r10") = _4;
  8. register long r8 __asm__ ("r8") = _5;
  9. register long r9 __asm__ ("r9") = _6;
  10.  
  11. __asm__ volatile ( "syscall"
  12. : "=a" (value)
  13. : "a" (number), "D" (_1), "S" (_2), "d" (_3), "r" (r10), "r" (r8), "r" (r9)
  14. : "rcx", "r11", "cc", "memory");
  15.  
  16. return value;
  17. }
  18.  
  19. int main(void) {
  20. static const char message[] = "It works!" "\n";
  21.  
  22. /* system_call(write, standard_output, ...); */
  23. system_call(1, 1, message, sizeof message, 0, 0, 0);
  24.  
  25. return 0;
  26. }
Success #stdin #stdout 0s 9296KB
stdin
Standard input is empty
stdout
It works!