From fca59bea770346cf1c1f9b0e00cb48a61b44a8f3 Mon Sep 17 00:00:00 2001
From: Harald Welte <laforge@gnumonks.org>
Date: Sun, 25 Oct 2015 21:00:20 +0100
Subject: import of old now defunct presentation slides svn repo

---
 .../OLS2005/EXAMPLE/complexCode/example-ll.tex     | 24 ++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex

(limited to '2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex')

diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex
new file mode 100644
index 0000000..681b759
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex
@@ -0,0 +1,24 @@
+\begin{verbatim}
+%struct.QuadTree = type { double, [4 x %QT*] }
+%QT = type %struct.QuadTree
+
+void %Sum3rdChildren(%QT* %T, double* %Result) {
+entry: %V = alloca double            ;; %V is type 'double*'
+       %tmp.0 = seteq %QT* %T, null  ;; type 'bool'
+       br bool %tmp.0, label %endif, label %else
+
+else:  ;;tmp.1 = &T[0].Children[3]  'Children' = Field #1
+       %tmp.1 = getelementptr %QT* %T, long 0, ubyte 1, long 3
+       %Child3 = load %QT** %tmp.1
+       call void %Sum3rdChildren(%QT* %Child3, double* %V)
+       %tmp.2 = load double* %V
+       %tmp.3 = getelementptr %QT* %T, long 0, ubyte 0
+       %tmp.4 = load double* %tmp.3
+       %tmp.5 = add double %tmp.2, %tmp.4
+       br label %endif
+
+endif: %Ret = phi double [ %tmp.5, %else ], [ 0.0, %entry ]
+       store double %Ret, double* %Result
+       ret void  ;; Return with no value
+}
+\end{verbatim}
-- 
cgit v1.2.3

