changeset 1:61e24cbc5f22

add sh
author Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Fri, 15 Jun 2018 17:49:37 +0900
parents db9deddc28c6
children b2c3cf0ee390
files gcc.sh lldb-cbc.sh lldb.sh slide.md test.c
diffstat 5 files changed, 23 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc.sh	Fri Jun 15 17:49:37 2018 +0900
@@ -0,0 +1,1 @@
+lldb -- gcc/cc1 test.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lldb-cbc.sh	Fri Jun 15 17:49:37 2018 +0900
@@ -0,0 +1,1 @@
+lldb -- bin/clang -cc1 -triple x86_64-apple-macosx10.13.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -main-file-name test.c -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu penryn -dwarf-column-info -debugger-tuning=lldb -target-linker-version 351.8 -v -resource-dir /Users/anatofuz/workspace/cr/build_llvm/lib/clang/7.0.0 -fdebug-compilation-dir /Users/anatofuz/workspace/cr/build_llvm -ferror-limit 19 -fmessage-length 120 -stack-protector 1 -fblocks -fencode-extended-block-signature -fobjc-runtime=macosx-10.13.0 -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -x c ../CbC_gcc/CbC-examples/fact-a.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lldb.sh	Fri Jun 15 17:49:37 2018 +0900
@@ -0,0 +1,1 @@
+lldb -- bin/clang -cc1 -triple x86_64-apple-macosx10.13.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -main-file-name test.c -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu penryn -dwarf-column-info -debugger-tuning=lldb -target-linker-version 351.8 -v -resource-dir /Users/anatofuz/workspace/cr/build_llvm/lib/clang/7.0.0 -fdebug-compilation-dir /Users/anatofuz/workspace/cr/build_llvm -ferror-limit 19 -fmessage-length 120 -stack-protector 1 -fblocks -fencode-extended-block-signature -fobjc-runtime=macosx-10.13.0 -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -x c test.c
--- a/slide.md	Fri Jun 15 16:01:15 2018 +0900
+++ b/slide.md	Fri Jun 15 17:49:37 2018 +0900
@@ -8,8 +8,14 @@
 - 現在の主要なCコンパイラであるGCCとLLVM/Clangが実際にどのような処理をするかを追っていきます
 - コンパイラのトレースにはLLVMをバックエンドとして利用しているlldbを用います
 
+## このセッションの目的
+- 現在当研究室ではContinuation Based Cという言語を開発しています
+- この言語はgcc/clangで実装されており,代々開発が引き継がれています
+- 今回はこの発表を通して実際の開発の流れを体験していきます
+- このセッションを聞くと実際にgcc/clangで開発を出来るかもしれない…!?
+
 !SLIDE
-# アジェンダ
+## アジェンダ
 - GCCとLLVM
 - コンパイルの流れについて
 - デバッグ方法
@@ -324,3 +330,8 @@
 - llvmでは`EmitCall`という関数が主に生成を担っている
 - この中の`Builder.CreateCall`が関数呼び出しを変換している
     - この部分はgccの`expand_call`と対応している
+
+
+## gccのパス
+
+- `
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test.c	Fri Jun 15 17:49:37 2018 +0900
@@ -0,0 +1,8 @@
+extern int printf(const char *,...);
+
+int main(int ac,char* av[]){
+    int a = 4;
+    printf("Hello %d\n",a+ac);
+    return 0;
+}
+