aboutsummaryrefslogtreecommitdiff
path: root/linux-x64.tex
blob: 8133e1bf46639ceae61bbabefdfe5499049102e6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
\documentclass{article}

\usepackage[a6paper,margin=2cm,top=5mm,bottom=5mm]{geometry}
\usepackage{xcolor}
\usepackage[hidelinks]{hyperref}

\begin{document}

\pagestyle{empty}

\setlength\fboxrule{.5pt}
\setlength\fboxsep{0pt}
\renewcommand{\arraystretch}{1.2}
\setlength{\tabcolsep}{.5em}
\parindent0pt

\begin{center}
	\textbf{Clean RTS cheat sheet, x64 linux}
\end{center}

{\hfill
\fcolorbox{black}{white}{%
	\begin{tabular}{ll}
		A0 & rcx \\
		A1 & rdx \\
		A2 & r8 \\
		\hline
		B0 & rax \\
		B1 & rbx \\
		B2 & r10 \\
		B3 & r11 \\
		B4 & r12 \\
		B5 & r13 \\
		B6 & r14 \\
		\hline
		asp & rsi \\
		bsp & rsp \\
		hp & rdi \\
		free & r15 \\
		\hline
		scratch & rbp \\
		scratch & r9 \\
	\end{tabular}%
}
\hfill
\fcolorbox{black}{white}{%
	\begin{tabular}{ll}
		rax & B0 \\
		rbx & B1 \\
		rcx & A0 \\
		rdx & A1 \\
		\hline
		rbp & scratch \\
		rdi & hp \\
		rsi & asp \\
		rsp & bsp \\
		\hline
		r8  & A2 \\
		r9  & scratch \\
		r10 & B2 \\
		r11 & B3 \\
		r12 & B4 \\
		r13 & B5 \\
		r14 & B6 \\
		r15 & free \\
	\end{tabular}%
}
\hfill}

\bigskip
\centering
\fcolorbox{black}{white}{%
	\setlength{\tabcolsep}{.2em}%
	\begin{tabular}{lcccccc}
		\multicolumn{7}{c}{\textbf{Function Calls}}\\\hline
		Arguments:    & rdi & rsi & rdx & rcx & r8 & r9\\
									& hp  & asp & A1  & A0  & A2 & scr\\
		\hline
		Result:       & rax & rdx \\
									& B0  & A1 \\
		\hline
		Callee-saved: & rbx & rbp & r12 & r13 & r14 & r15 \\
									& B1  & scr & B4  & B5  & B6  & free \\
	\end{tabular}%
}

\bigskip
\tiny
\url{https://gitlab.science.ru.nl/cstaps/clean-rts-cheat-sheet}

\end{document}