Advertisement
Guest User

Untitled

a guest
Jul 31st, 2020
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.57 KB | None | 0 0
  1. #include <stdio.h>
  2. #define SIZE 5
  3.  
  4. void swap_arr(long int [], int);
  5. void print_arr(long int [], int);
  6.  
  7. int main() {
  8.  
  9.   long int arr[SIZE] = {3, 14, 15, 9, 26};
  10.  
  11.   swap_arr(arr, SIZE);
  12.   print_arr(arr, SIZE);
  13.   return 0;
  14. }
  15.  
  16. void swap_arr(long int myarr[], int num) {
  17.  
  18.   for(int i=0; i<num; i++) {
  19.     __asm__ __volatile__("push %0"::"r"(myarr[i]));
  20.   }
  21.  
  22.   for(int i=0; i<num; i++) {
  23.     __asm__ __volatile__("pop %0"::"m"(myarr[i]));
  24.   }
  25. }
  26.  
  27. void print_arr(long int myarr[], int num) {
  28.   for (int i=0; i<num; i++) {
  29.     printf("%ld\n", myarr[i]);
  30.   }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement