diff --git a/skeleton/Skeleton.cpp b/skeleton/Skeleton.cpp
index 0abdf217bc13af4396249e5cf58d66d958fe7b2d..6ca543117a64a0b71d57e53e794b2623bf1ddaf3 100644
--- a/skeleton/Skeleton.cpp
+++ b/skeleton/Skeleton.cpp
@@ -3,28 +3,44 @@
 #include "llvm/Support/raw_ostream.h"
 #include "llvm/IR/LegacyPassManager.h"
 #include "llvm/Transforms/IPO/PassManagerBuilder.h"
+#include "llvm/Analysis/Trace.h"
+#include "llvm/IR/BasicBlock.h"
+
 using namespace llvm;
 
-namespace {
-  struct SkeletonPass : public FunctionPass {
-    static char ID;
-    SkeletonPass() : FunctionPass(ID) {}
+namespace
+{
+struct SkeletonPass : public FunctionPass
+{
+  static char ID;
+  SkeletonPass() : FunctionPass(ID) {}
+
+  virtual bool runOnFunction(Function &F)
+  {
+    errs() << "Function " << F.getName() << "!\n";
 
-    virtual bool runOnFunction(Function &F) {
-      errs() << "I saw a function called " << F.getName() << "!\n";
-      return false;
+    for (Function::BasicBlockListType::iterator i = F.begin(), ie = F.end(); i != ie; ++i)
+    {
+      for (llvm::BasicBlock::InstListType::iterator j = i->begin(), je = i->end(); j != je; ++j)
+      {
+        Instruction *ii = &*j;
+        errs() << *ii << "\n";
+      }
     }
-  };
-}
+    return false;
+  }
+};
+} // namespace
 
 char SkeletonPass::ID = 0;
 
 // Automatically enable the pass.
 // http://adriansampson.net/blog/clangpass.html
 static void registerSkeletonPass(const PassManagerBuilder &,
-                         legacy::PassManagerBase &PM) {
+                                 legacy::PassManagerBase &PM)
+{
   PM.add(new SkeletonPass());
 }
 static RegisterStandardPasses
-  RegisterMyPass(PassManagerBuilder::EP_EarlyAsPossible,
-                 registerSkeletonPass);
+    RegisterMyPass(PassManagerBuilder::EP_EarlyAsPossible,
+                   registerSkeletonPass);