File tree Expand file tree Collapse file tree 2 files changed +49
-0
lines changed Expand file tree Collapse file tree 2 files changed +49
-0
lines changed Original file line number Diff line number Diff line change 1
1
_out /
2
2
_tmp /
3
3
* .tmp
4
+ tmp. *
4
5
5
6
# Compiled Object files
6
7
* .slo
Original file line number Diff line number Diff line change
1
+ /* https://stackoverflow.com/questions/18024672/what-registers-are-preserved-through-a-linux-x86-64-function-call/55207335#55207335 */
2
+
3
+ #include <inttypes.h>
4
+
5
+ uint64_t inc (uint64_t i ) {
6
+ __asm__ __volatile__(
7
+ ""
8
+ : "+m" (i )
9
+ :
10
+ : "rax" ,
11
+ "rbx" ,
12
+ "rcx" ,
13
+ "rdx" ,
14
+ "rsp" ,
15
+ "rsi" ,
16
+ "rdi" ,
17
+ "r8" ,
18
+ "r9" ,
19
+ "r10" ,
20
+ "r11" ,
21
+ "r12" ,
22
+ "r13" ,
23
+ "r14" ,
24
+ "r15" ,
25
+ "ymm0" ,
26
+ "ymm1" ,
27
+ "ymm2" ,
28
+ "ymm3" ,
29
+ "ymm4" ,
30
+ "ymm5" ,
31
+ "ymm6" ,
32
+ "ymm7" ,
33
+ "ymm8" ,
34
+ "ymm9" ,
35
+ "ymm10" ,
36
+ "ymm11" ,
37
+ "ymm12" ,
38
+ "ymm13" ,
39
+ "ymm14" ,
40
+ "ymm15"
41
+ );
42
+ return i + 1 ;
43
+ }
44
+
45
+ int main (int argc , char * * argv ) {
46
+ (void )argv ;
47
+ return inc (argc );
48
+ }
You can’t perform that action at this time.
0 commit comments