annotate CbC-REPOSITORY @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents cc07adb17855
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
29
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 * CbC/GCCのリポジトリ管理方法
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 Continuation based C のGCC実装用には二つのリポジトリを仕様する
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 o CbC/GCC
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 実際にCbCを実装したGCCの本体
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 o CbC/GCC_original
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 オリジナルのGCC。本家のgcc-core-4.x.yをそのままリポジトリ化。
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 GCC_origのほうはGCCがリリースされる度にバージョンアップさせ、コミットする。
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 さらにその変更をCbC用のGCCリポジトリにpushする
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 本家
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 release GCC_orig GCC
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 | | |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 | 4.4.0 4.4.0-cbc
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 4.4.1 up | |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 | --> 4.4.1 push |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 | | --> 4.4.1-cbc
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 | | |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 4.4.2 up | |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 | --> 4.4.2 push |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 | | --> 4.4.2-cbc
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 | | |
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 * 本家GCCのニューリリース時の対応
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 GCC_originalをアップデート
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 $ cd $HOME
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 $ wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.4.1/gcc-core-4.x.y.tar.gz
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 $ tar xvf gcc-core-4.x.y.tar.gz
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 $ cd gcc-4.x.y
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 $ cd ${HG_REPO}/CbC/GCC_original
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 $ rm -rf *
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 $ mv ${HOME}/gcc-4.4.1/* ./
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 $ hg commit
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 GCC_originalが最新のGCCになったら、その変更をGCCにpushする
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 GCC_originalからGCCへのpush
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 $ cd ${HOME}
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 $ mkdir workspace;cd workspace # 作業ディレクトリ作成
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 $ hg clone ${HG}/one/CbC/GCC # CbC用のGCCをクローン
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 $ cd GCC
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 $ hg incoming ${HG}/one/CbC/GCC_original # チェック
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 $ hg pull ${HG}/one/CbC/GCC_original # pull
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 この時点で、場合によっては衝突が起こる。ほとんどはgcc/calls.cの中だと
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 思われる。また、expand_call関数が大幅に変更されたならgcc/cbc-goto.hも
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 同じように書き換える必要があるかもしれない。
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 がんばって動くまで修正したら
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 $ hg commit
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 $ hg push ${HG}/one/CbC/GCC # push
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 これで最新版に更新される
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56
cc07adb17855 deleting old commented out code.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57