From jay.krell at cornell.edu Tue Sep 1 07:54:56 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 31 Aug 2015 22:54:56 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals Message-ID: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848 From jay.krell at cornell.edu Tue Sep 1 09:15:32 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:15:32 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:18:02 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:18:02 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, <4E019C37-773B-42AE-AC49-F53C52249195@purdue.edu>, <2E8C2B23-F814-46FF-A59A-C92F486EC273@purdue.edu>, Message-ID: I use git pull to update my local repository to be "like" github.I use git commit to commit my local edits to my local repository.It use git push to push my local repository changes to the master.I don't know what rebasing is or how/why to use it. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 17:10:51 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com; m3devel at elegosoft.com To: hosking at purdue.edu It appears to be this merge action which is causing the problem.I don?t have time to explore right now. If anyone else can it would be most appreciated. On 1 Sep 2015, at 5:08 pm, Antony Hosking wrote:Whatever you are doing I now don?t know how to recover from.It appears that somehow you are rebasing the history on the master branch, but I don?t quite know how. On 1 Sep 2015, at 5:00 pm, Antony Hosking wrote:In your work flow are you using "git push" to push your local commits? Or are you doing something else? On 1 Sep 2015, at 4:58 pm, Antony Hosking wrote:Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:26:29 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:26:29 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, Message-ID: rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:43:12 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:43:12 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , Message-ID: RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:47:44 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:47:44 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , , , , Message-ID: I don't know if I'm doing anything right or wrong,but I think there are problems in the initial cvs import.The change you point to is over-attributes, as the change that added many files I think. Can you point to problems with my git commits? - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:43:12 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elego.de Tue Sep 1 10:44:28 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 10:44:28 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: <20150901104428.4d1361dec72f856cc6b4734b@elego.de> On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From wagner at elego.de Tue Sep 1 13:35:47 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 13:35:47 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> Message-ID: <20150901133547.7880c7edbe1d456789d7599e@elego.de> On Tue, 1 Sep 2015 21:11:42 +1000 Antony Hosking wrote: > Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changes and upstream changes. Then it is problematic to just call 'git merge' or 'git pull'. What should be done instead is to commit the local changes and then use 'git pull --rebase'. At least this was what solved it for me most of the time. Olaf > > On 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > > > On Tue, 1 Sep 2015 07:15:32 +0000 > > Jay K wrote: > > > >> Just git push, git pull, git commit. > >> - Jay > >> > >> > >> > >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > >> From: hosking at purdue.edu > >> Date: Tue, 1 Sep 2015 16:58:47 +1000 > >> CC: m3commit at elegosoft.com > >> To: jay.krell at cornell.edu > >> > >> Jay, it appears that your commits are still messing up the history. > >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > > > Usually history is never really _lost_ in git, just hidden ;-) > > A possible explanation is that the first and second parent get > > switched due to merges. This link gives a good explanation of > > what is often the reason: > > > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > > > You should bear in mind that git is really more like a tree > > management software than a traditional version control system. > > You can do almost anything with it, especially shoot your own foot. > > > > Olaf > > -- > > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From jay.krell at cornell.edu Tue Sep 1 18:25:05 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 16:25:05 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , <20150901104428.4d1361dec72f856cc6b4734b@elego.de>, <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu>, <20150901133547.7880c7edbe1d456789d7599e@elego.de>, <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. Ugh. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 21:56:30 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com To: wagner at elego.de I think I?ve managed to rebase things. Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. Tony On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elegosoft.com Tue Sep 1 18:42:23 2015 From: wagner at elegosoft.com (Olaf Wagner) Date: Tue, 1 Sep 2015 18:42:23 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> On Tue, 1 Sep 2015 16:25:05 +0000 Jay K wrote: > $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > Ugh. Just commit them before you pull. Olaf > - Jay > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 21:56:30 +1000 > CC: jay.krell at cornell.edu; m3commit at elegosoft.com > To: wagner at elego.de > > I think I?ve managed to rebase things. > Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. > Tony > On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. > One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 07:15:32 +0000 > Jay K wrote: > > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > Usually history is never really _lost_ in git, just hidden ;-) > A possible explanation is that the first and second parent get > switched due to merges. This link gives a good explanation of > what is often the reason: > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > You should bear in mind that git is really more like a tree > management software than a traditional version control system. > You can do almost anything with it, especially shoot your own foot. > > Olaf > -- > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 From jay.krell at cornell.edu Wed Sep 2 03:50:53 2015 From: jay.krell at cornell.edu (Jay) Date: Tue, 1 Sep 2015 18:50:53 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <5517D5A0-00E0-4BEC-96A6-8625BAE8F839@gmail.com> I often sit on unrelated uncommitted changes. I know it is somewhat risky & somewhat historical, since local branches commit is now available & cheap. But if I commit...I have to go back & remember what is unfinished? Maybe I just use one branch & anything in it different than main is unfinished? I try not to commit unless in somewhat decent shape. Not just to save so I can pull/merge. I guess I'll have to learn the new ways. - Jay On Sep 1, 2015, at 4:35 PM, Antony Hosking wrote: > Yes, commit locally but don?t push just yet. > Then pull ?rebase. > >> On 2 Sep 2015, at 2:42 am, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 16:25:05 +0000 >> Jay K wrote: >> >>> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >>> Ugh. >> >> Just commit them before you pull. >> >> Olaf >> >>> - Jay >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 21:56:30 +1000 >>> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >>> To: wagner at elego.de >>> >>> I think I?ve managed to rebase things. >>> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >>> Tony >>> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >>> I?m not sure what the remedy is but will explore. >>> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >>> >>> On Tue, 1 Sep 2015 07:15:32 +0000 >>> Jay K wrote: >>> >>> Just git push, git pull, git commit. >>> - Jay >>> >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 16:58:47 +1000 >>> CC: m3commit at elegosoft.com >>> To: jay.krell at cornell.edu >>> >>> Jay, it appears that your commits are still messing up the history. >>> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >>> >>> Usually history is never really _lost_ in git, just hidden ;-) >>> A possible explanation is that the first and second parent get >>> switched due to merges. This link gives a good explanation of >>> what is often the reason: >>> >>> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >>> >>> You should bear in mind that git is really more like a tree >>> management software than a traditional version control system. >>> You can do almost anything with it, especially shoot your own foot. >>> >>> Olaf >>> -- >>> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >>> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >>> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >>> >>> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney_bates at lcwb.coop Wed Sep 2 17:01:06 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Wed, 02 Sep 2015 10:01:06 -0500 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <55E70F32.6060109@lcwb.coop> On 09/01/2015 11:42 AM, Olaf Wagner wrote: > On Tue, 1 Sep 2015 16:25:05 +0000 > Jay K wrote: > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >> Ugh. > > Just commit them before you pull. > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper subset of edited files. The others may be independent/unrelated changes that belong in a separate commit, or not yet ready for prime time, or even things I need for local experiments that I will never commit, e.g. my local pkginfo.txt is more often than not altered. Stashing has baffled me, and either that or just moving files temporarily is a lot of work, plus tedious and error-prone. > Olaf > >> - Jay >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 21:56:30 +1000 >> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >> To: wagner at elego.de >> >> I think I?ve managed to rebase things. >> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >> Tony >> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >> I?m not sure what the remedy is but will explore. >> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 07:15:32 +0000 >> Jay K wrote: >> >> Just git push, git pull, git commit. >> - Jay >> >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 16:58:47 +1000 >> CC: m3commit at elegosoft.com >> To: jay.krell at cornell.edu >> >> Jay, it appears that your commits are still messing up the history. >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >> >> Usually history is never really _lost_ in git, just hidden ;-) >> A possible explanation is that the first and second parent get >> switched due to merges. This link gives a good explanation of >> what is often the reason: >> >> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >> >> You should bear in mind that git is really more like a tree >> management software than a traditional version control system. >> You can do almost anything with it, especially shoot your own foot. >> >> Olaf >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> > -- Rodney Bates rodney.m.bates at acm.org From wagner at elego.de Wed Sep 2 17:23:18 2015 From: wagner at elego.de (Olaf Wagner) Date: Wed, 2 Sep 2015 17:23:18 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <55E70F32.6060109@lcwb.coop> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> <55E70F32.6060109@lcwb.coop> Message-ID: <20150902172318.b13a272ebefc91016b8df05e@elego.de> On Wed, 02 Sep 2015 10:01:06 -0500 "Rodney M. Bates" wrote: > On 09/01/2015 11:42 AM, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 16:25:05 +0000 > > Jay K wrote: > > > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > >> Ugh. > > > > Just commit them before you pull. > > > > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper > subset of edited files. The others may be independent/unrelated changes that belong > in a separate commit, or not yet ready for prime time, or even things I need for > local experiments that I will never commit, e.g. my local pkginfo.txt is more often > than not altered. Stashing has baffled me, and either that or just moving files > temporarily is a lot of work, plus tedious and error-prone. Hm, I think stashing is exactly how git supports this use case. This is the example from the git help which should cover your scenario Testing partial commits You can use git stash save --keep-index when you want to make two or more commits out of the changes in the work tree, and you want to test each change before committing: # ... hack hack hack ... $ git add --patch foo # add just first part to the index $ git stash save --keep-index # save all other changes to the stash $ edit/build/test first part $ git commit -m 'First part' # commit fully tested change $ git stash pop # prepare to work on all other changes # ... repeat above five steps until one commit remains ... $ edit/build/test remaining parts $ git commit foo -m 'Remaining parts' If you don't want to choose between different changes to one file, but only commit some files, this reduces to git add git stash save --keep-index git commit -m '...' git pull --rebase git push git stash pop AFAIK this should do what you want. You could also commit all your current work to another branch, and then just cherry-pick several changes from that after pull --rebase. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From rodney.m.bates at acm.org Thu Sep 3 21:17:47 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:17:47 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. Message-ID: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e7a87c74bd1b88d284408b760b22409459640d46 https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/m3middle/src/M3CG_Ops.i3 Log Message: ----------- Comment no nested calls occur in cm3 IR. Comment the fact that nested calls in source code are unnested in cm3 intermediate representation. This is an essential invariant to both producers and consumers of this IR. Changes to be committed: modified: src/M3CG_Ops.i3 Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Revert an incorrect fix due to misdiagnosis. The actual problem here was not a lack of a set_source_file, it was reading binary cm3 IR with the ascii reader. Changes to be committed: modified: M3CG_LLVM.m3 Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 Lots of changes happened to this file in package llvm, while the version in package llvm3.6.1 has been undergoing integration with the greatly altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 found in package llvm3.6.1. Also some random manual review and fixes. Compiles and runs to completion, with superficially believable output, on one small test case involving separate temporaries in and out of a FINALLY procedure. Works with cm3 command, when its executable m3llvm has been shipped. The test compile fails to link, not finding alloca. m3llvm needs to detect calls on alloca and translate internally into llvm alloca instructions, rather than letting them through to be linked in. Changes to be committed: modified: M3CG_LLVM.m3 Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 From rodney.m.bates at acm.org Thu Sep 3 21:23:32 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:23:32 -0700 Subject: [M3commit] [modula3/cm3] 9b0c53: Remove irrelevant file LLVM.i3 from package llvm3.... Message-ID: <55e89e34f8c2_3363fe576db72c0103297@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 9b0c53b799f597a410d49be2ec16df3b5856a75f https://github.com/modula3/cm3/commit/9b0c53b799f597a410d49be2ec16df3b5856a75f Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: R m3-sys/llvm3.6.1/src/LLVM.i3 Log Message: ----------- Remove irrelevant file LLVM.i3 from package llvm3.6.1 Changes to be committed: deleted: LLVM.i3 From rodney.m.bates at acm.org Thu Sep 3 23:38:30 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 14:38:30 -0700 Subject: [M3commit] [modula3/cm3] ca93d3: Translate library alloca call into llvm alloca ins... Message-ID: <55e8bdd69c24a_71ee3fe0430232b868649@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca93d3de38705880b20382546e2eca94264f687d https://github.com/modula3/cm3/commit/ca93d3de38705880b20382546e2eca94264f687d Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Translate library alloca call into llvm alloca instruction. Changes to be committed: modified: M3CG_LLVM.m3 From jay.krell at cornell.edu Fri Sep 4 00:38:39 2015 From: jay.krell at cornell.edu (Jay) Date: Thu, 3 Sep 2015 15:38:39 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). - Jay On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > Branch: refs/heads/master > Home: https://github.com/modula3/cm3 > Commit: e7a87c74bd1b88d284408b760b22409459640d46 > https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/m3middle/src/M3CG_Ops.i3 > > Log Message: > ----------- > Comment no nested calls occur in cm3 IR. > > Comment the fact that nested calls in source code are unnested in > cm3 intermediate representation. This is an essential invariant > to both producers and consumers of this IR. > > Changes to be committed: > > modified: src/M3CG_Ops.i3 > > > Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Revert an incorrect fix due to misdiagnosis. > > The actual problem here was not a lack of a set_source_file, > it was reading binary cm3 IR with the ascii reader. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > > Lots of changes happened to this file in package llvm, while the version > in package llvm3.6.1 has been undergoing integration with the greatly > altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > found in package llvm3.6.1. Also some random manual review and fixes. > > Compiles and runs to completion, with superficially believable output, > on one small test case involving separate temporaries in and out of > a FINALLY procedure. > > Works with cm3 command, when its executable m3llvm has been shipped. > > The test compile fails to link, not finding alloca. m3llvm needs to > detect calls on alloca and translate internally into llvm alloca > instructions, rather than letting them through to be linked in. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > _______________________________________________ > M3commit mailing list > M3commit at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit From rodney_bates at lcwb.coop Fri Sep 4 23:48:42 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Fri, 04 Sep 2015 16:48:42 -0500 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: <55EA11BA.7010704@lcwb.coop> Hmm. As near as I remember, I assumed the front end was unnesting calls just because it did it on one example (using m3cc). Looking at the code, I see command line options -nested_calls and -no_nested_calls (the default). However, the only use of this I can find affects whether an independent check by a M3CG_Check.T instance verifies that there is no nesting. So it looks like it's actually unconditional after all. I'll leave the comments as they are unless this changes. I would expect a back end not to have to cope with them, unless it was generating final code for a bytecode or stack-like machine that could directly handle them nested. On 09/03/2015 05:38 PM, Jay wrote: > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > - Jay > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > >> Branch: refs/heads/master >> Home: https://github.com/modula3/cm3 >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/m3middle/src/M3CG_Ops.i3 >> >> Log Message: >> ----------- >> Comment no nested calls occur in cm3 IR. >> >> Comment the fact that nested calls in source code are unnested in >> cm3 intermediate representation. This is an essential invariant >> to both producers and consumers of this IR. >> >> Changes to be committed: >> >> modified: src/M3CG_Ops.i3 >> >> >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Revert an incorrect fix due to misdiagnosis. >> >> The actual problem here was not a lack of a set_source_file, >> it was reading binary cm3 IR with the ascii reader. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 >> >> Lots of changes happened to this file in package llvm, while the version >> in package llvm3.6.1 has been undergoing integration with the greatly >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 >> found in package llvm3.6.1. Also some random manual review and fixes. >> >> Compiles and runs to completion, with superficially believable output, >> on one small test case involving separate temporaries in and out of >> a FINALLY procedure. >> >> Works with cm3 command, when its executable m3llvm has been shipped. >> >> The test compile fails to link, not finding alloca. m3llvm needs to >> detect calls on alloca and translate internally into llvm alloca >> instructions, rather than letting them through to be linked in. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 >> _______________________________________________ >> M3commit mailing list >> M3commit at elegosoft.com >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > -- Rodney Bates rodney.m.bates at acm.org From jay.krell at cornell.edu Sat Sep 5 03:51:16 2015 From: jay.krell at cornell.edu (Jay K) Date: Sat, 5 Sep 2015 01:51:16 +0000 Subject: [M3commit] [M3devel] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55EA11BA.7010704@lcwb.coop> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <55EA11BA.7010704@lcwb.coop> Message-ID: -unfold_nested_procs is what I'm referring to. Sorry, I comprehend better now -- "procs" vs. "calls". nested call: foo(bar()) unnested call: temp = bar() foo(temp) nested proc: void foo(){ void bar() { }} unnested proc: void foo(){ } void bar(){} And then everything I said. :)I want fewer variables and more constants. :)I want one (or fewer) persisted form of the IR and an ability for a backend to easily transform.I need to push the M3CG_MultiPass stuff around more I think.Then again, the IR doesn't tend to live long and there isn't likely a cause for it to, so variation is ok.The only time it lives long is when iterating tightly on a backend.It could be useful for bootstrapping perhaps, but I think we have a better option already -- C/C++. - Jay > Date: Fri, 4 Sep 2015 16:48:42 -0500 > From: rodney_bates at lcwb.coop > To: jay.krell at cornell.edu > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > Subject: Re: [M3devel] [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. > > Hmm. As near as I remember, I assumed the front end was unnesting calls just because it > did it on one example (using m3cc). Looking at the code, I see command line options > -nested_calls and -no_nested_calls (the default). However, the only use of this I can > find affects whether an independent check by a M3CG_Check.T instance verifies that > there is no nesting. So it looks like it's actually unconditional after all. I'll > leave the comments as they are unless this changes. > > I would expect a back end not to have to cope with them, unless it was generating > final code for a bytecode or stack-like machine that could directly handle them nested. > > On 09/03/2015 05:38 PM, Jay wrote: > > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > > > - Jay > > > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > > > >> Branch: refs/heads/master > >> Home: https://github.com/modula3/cm3 > >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 > >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/m3middle/src/M3CG_Ops.i3 > >> > >> Log Message: > >> ----------- > >> Comment no nested calls occur in cm3 IR. > >> > >> Comment the fact that nested calls in source code are unnested in > >> cm3 intermediate representation. This is an essential invariant > >> to both producers and consumers of this IR. > >> > >> Changes to be committed: > >> > >> modified: src/M3CG_Ops.i3 > >> > >> > >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Revert an incorrect fix due to misdiagnosis. > >> > >> The actual problem here was not a lack of a set_source_file, > >> it was reading binary cm3 IR with the ascii reader. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > >> > >> Lots of changes happened to this file in package llvm, while the version > >> in package llvm3.6.1 has been undergoing integration with the greatly > >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > >> found in package llvm3.6.1. Also some random manual review and fixes. > >> > >> Compiles and runs to completion, with superficially believable output, > >> on one small test case involving separate temporaries in and out of > >> a FINALLY procedure. > >> > >> Works with cm3 command, when its executable m3llvm has been shipped. > >> > >> The test compile fails to link, not finding alloca. m3llvm needs to > >> detect calls on alloca and translate internally into llvm alloca > >> instructions, rather than letting them through to be linked in. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > >> _______________________________________________ > >> M3commit mailing list > >> M3commit at elegosoft.com > >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > > > > -- > Rodney Bates > rodney.m.bates at acm.org > _______________________________________________ > M3devel mailing list > M3devel at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sun Sep 6 21:31:39 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 06 Sep 2015 12:31:39 -0700 Subject: [M3commit] [modula3/cm3] 900ad2: More/better command options for m3llvm: -g, -d. Message-ID: <55ec949b18adf_79743feac2bc92a017074@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 900ad26d46a60426bc9d0012067e3e26cb61aee2 https://github.com/modula3/cm3/commit/900ad26d46a60426bc9d0012067e3e26cb61aee2 Author: Rodney Bates Date: 2015-09-06 (Sun, 06 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Unix.common M m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 M m3-sys/llvm3.6.1/src/Main.m3 Log Message: ----------- More/better command options for m3llvm: -g, -d. The -d was intended to control trace output of m3llvm, for helping debug itself. Add a -g to control emission of debugger info into the code begin translated, and set it as with similar options for other backend modes. Also, fix cm3 subcommand emission for m3llvm and llc. Changes to be committed: modified: m3-sys/cminstall/src/config-no-install/Unix.common modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 modified: m3-sys/llvm3.6.1/src/Main.m3 From rodney.m.bates at acm.org Thu Sep 10 20:06:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 11:06:38 -0700 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Message-ID: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. From rodney.m.bates at acm.org Fri Sep 11 02:41:26 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 17:41:26 -0700 Subject: [M3commit] [modula3/cm3] f457f7: Fix test p014. Message-ID: <55f2233620fb0_21073fe7717bb2c0310a4@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: f457f72f6e18979ef520048ddaeca324319fc665 https://github.com/modula3/cm3/commit/f457f72f6e18979ef520048ddaeca324319fc665 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix test p014. Local variables declared inside a procedure body can indeed be up_level, as a comment wondered. From jay.krell at cornell.edu Fri Sep 11 07:19:09 2015 From: jay.krell at cornell.edu (Jay K) Date: Fri, 11 Sep 2015 05:19:09 +0000 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... In-Reply-To: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> References: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Message-ID: This sounds like what I was talking about. :) I don't like how this works, but isn't your fault, and I haven't fixed it either in all these years. I think at the very least, the Target.Init can set the value. Or should return it to its caller. It shouldn't be in the config file, with an ability to get it wrong. - Jay Date: Thu, 10 Sep 2015 11:06:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sat Sep 12 00:02:15 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Fri, 11 Sep 2015 15:02:15 -0700 Subject: [M3commit] [modula3/cm3] ca298f: Fix one failure in p035. Message-ID: <55f34f6721149_242c3fa7c3a8d2c0722d7@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca298f83b558046afc0431ed768616ea97bf3119 https://github.com/modula3/cm3/commit/ca298f83b558046afc0431ed768616ea97bf3119 Author: Rodney Bates Date: 2015-09-11 (Fri, 11 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix one failure in p035. Every nested procedure needs a static link, even if there are no up-level referenced variables in its proper static ancestery, in order to be able to create an environment for another call. In any case, we will need this in order for a debugger to work. Also add comments so I can understand how up-level addressing works. p035 now suffers an unrelated failure, later. From rodney.m.bates at acm.org Sat Sep 12 18:09:25 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 12 Sep 2015 09:09:25 -0700 Subject: [M3commit] [modula3/cm3] fd3179: Only one statement on a line, please. Message-ID: <55f44e351a98f_672d3faa41b0b2bc764b8@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 https://github.com/modula3/cm3/commit/fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 Author: Rodney Bates Date: 2015-09-12 (Sat, 12 Sep 2015) Changed paths: M m3-sys/m3tests/src/p0/p035/Main.m3 Log Message: ----------- Only one statement on a line, please. Multiple statements with the same line number makes it all the more difficult to figure out where in the input a problem occurred. From rodney.m.bates at acm.org Sun Sep 13 23:34:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 13 Sep 2015 14:34:38 -0700 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Message-ID: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. From jay.krell at cornell.edu Mon Sep 14 07:13:08 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 14 Sep 2015 05:13:08 +0000 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: I assume you mean p238. Yes that is a good test.I kinda think the tests need naming/prioritization but oh well. - Jay Date: Sun, 13 Sep 2015 14:34:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 14 08:10:55 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:10:55 -0700 Subject: [M3commit] [modula3/cm3] 8d22b1: loop over object file extensions Message-ID: <55f664ef5215_11f83fc9b72232b8364@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 https://github.com/modula3/cm3/commit/8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M scripts/python/pylib.py Log Message: ----------- loop over object file extensions Commit: fc20121c6dc0828428eda5d795b7cdd76c80a582 https://github.com/modula3/cm3/commit/fc20121c6dc0828428eda5d795b7cdd76c80a582 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/readme Log Message: ----------- fix small typos Commit: 5b4c7feade8c420c49613a6da35fe0eff1a01610 https://github.com/modula3/cm3/commit/5b4c7feade8c420c49613a6da35fe0eff1a01610 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/M3CG_LLVM.m3 Log Message: ----------- Some provision for 32bit hosts, if/when I can get LLVM to be 32bit hosted. Commit: 302e39b17f7c7a1722ce6610981b6915230e9ef1 https://github.com/modula3/cm3/commit/302e39b17f7c7a1722ce6610981b6915230e9ef1 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Darwin.common Log Message: ----------- only overwrite/default M3_BACKEND_MODE if not specified on command line -- and really want to change the default form '3' to 'C' Commit: c40dc306fa687da1cd603311870a1eb3aab2c213 https://github.com/modula3/cm3/commit/c40dc306fa687da1cd603311870a1eb3aab2c213 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Clarify that ALPHA_ excludes ALPHA32 to remove temptation to change it to "ALPHA". Commit: d4d7a8d86805bea6c78d1e829bce357ab4b80f47 https://github.com/modula3/cm3/commit/d4d7a8d86805bea6c78d1e829bce357ab4b80f47 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/ALPHA_LINUX M m3-sys/cminstall/src/config-no-install/ALPHA_OPENBSD M m3-sys/cminstall/src/config-no-install/AMD64_DARWIN M m3-sys/cminstall/src/config-no-install/AMD64_FREEBSD M m3-sys/cminstall/src/config-no-install/AMD64_LINUX M m3-sys/cminstall/src/config-no-install/AMD64_NETBSD M m3-sys/cminstall/src/config-no-install/AMD64_OPENBSD M m3-sys/cminstall/src/config-no-install/ARM_DARWIN M m3-sys/cminstall/src/config-no-install/ARM_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_FREEBSD.common M m3-sys/cminstall/src/config-no-install/I386_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_NETBSD M m3-sys/cminstall/src/config-no-install/I386_OPENBSD M m3-sys/cminstall/src/config-no-install/IA64_LINUX M m3-sys/cminstall/src/config-no-install/Interix.common M m3-sys/cminstall/src/config-no-install/MIPS64EL_OPENBSD M m3-sys/cminstall/src/config-no-install/MIPS64_OPENBSD M m3-sys/cminstall/src/config-no-install/NT.common M m3-sys/cminstall/src/config-no-install/PA32_HPUX M m3-sys/cminstall/src/config-no-install/PA64_HPUX M m3-sys/cminstall/src/config-no-install/PPC32_OPENBSD M m3-sys/cminstall/src/config-no-install/PPC_LINUX M m3-sys/cminstall/src/config-no-install/SPARC32_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_OPENBSD M m3-sys/cminstall/src/config-no-install/Solaris.common M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Switch from gcc to g++. Still to look into the other C/C++ compilers. (Visual C++ will also go by extension and there are the -Tp and -TP switches; gcc and clang both also have -x c++. That still leaves a few others, ultimately while I hope to use C++ exception handling for portability and efficiency, I expect setjmp/longjmp to remain an option, having experienced K&R compilers fairly recently.) Commit: 9a1fb325aab9ee445d4278b7e0ae8249df723759 https://github.com/modula3/cm3/commit/9a1fb325aab9ee445d4278b7e0ae8249df723759 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Provide this: jair:m3core jay$ cm3 -DM3_BACKEND_MODE=HELP --- building in AMD64_DARWIN --- ignoring ../src/m3overrides Fatal Error: unrecognized backend mode: HELP available values: IntegratedObject, IntegratedAssembly, ExternalObject, ExternalAssembly, C, IntLlvmObj, IntLlvmAsm, ExtLlvmObj, ExtLlvmAsm, StAloneLlvmObj, StAloneLlvmAsm Where "HELP" is any invalid valid. Commit: eeae8f11d2589f30e31df03a36785ad310fcee9a https://github.com/modula3/cm3/commit/eeae8f11d2589f30e31df03a36785ad310fcee9a Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Better behavior after errors for the files after the errors. Commit: afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 https://github.com/modula3/cm3/commit/afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/m3makefile Log Message: ----------- Crudely probe for file/directory existness so this might work for more people. Some other solution is needed longer term -- either bundle the source or require an environment variable, or maybe try pkgconfig or such. Commit: 2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe https://github.com/modula3/cm3/commit/2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- Probe file existance so this has some crude hope of working for others. Really need another mechanism here. Commit: 28cddc037ac286b06e111164f75638f183788508 https://github.com/modula3/cm3/commit/28cddc037ac286b06e111164f75638f183788508 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- comment only, that build_standalone is desired here but has problems Compare: https://github.com/modula3/cm3/compare/fffbd2adf139...28cddc037ac2 From jay.krell at cornell.edu Mon Sep 14 08:16:37 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:16:37 -0700 Subject: [M3commit] [modula3/cm3] fade65: restore Rodney's veresions to 3.6.1, I don't know ... Message-ID: <55f66645d034e_25de3f7ef32dd2bc211b3@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fade65a7757f2f8c0ba24d11791c322b3cae1249 https://github.com/modula3/cm3/commit/fade65a7757f2f8c0ba24d11791c322b3cae1249 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- restore Rodney's veresions to 3.6.1, I don't know how that happened, maybe git is bad at merging From jay.krell at cornell.edu Mon Sep 14 08:32:43 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:32:43 -0700 Subject: [M3commit] [modula3/cm3] e20893: upgrade Jay from 3.5.2 to 3.6.1 likee Rodney Message-ID: <55f66a0be3e60_16de3fd226a7d2c05361c@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e2089338048cfcd3fdc8b22d0945e421ff8f4e72 https://github.com/modula3/cm3/commit/e2089338048cfcd3fdc8b22d0945e421ff8f4e72 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- upgrade Jay from 3.5.2 to 3.6.1 likee Rodney From jay.krell at cornell.edu Mon Sep 14 08:44:03 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:44:03 -0700 Subject: [M3commit] [modula3/cm3] bb101f: Revert "Better behavior after errors for the files... Message-ID: <55f66cb37885a_77b43f9a5e6ef2c01013c8@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: bb101f0808428eff9bb099808fa42721728302d2 https://github.com/modula3/cm3/commit/bb101f0808428eff9bb099808fa42721728302d2 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Revert "Better behavior after errors for the files after the errors." This reverts commit eeae8f11d2589f30e31df03a36785ad310fcee9a. Revert change eeae8f11d2589f30e31df03a36785ad310fcee9a. It was ok, but it combined two ideas, but only really used one. I'll redo a subset of it. Commit: 12336014578ed488b45e2c4f9351a5f65a0bc878 https://github.com/modula3/cm3/commit/12336014578ed488b45e2c4f9351a5f65a0bc878 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Better behavior when there are errors -- errors in one file should not truncate the build pipeline for other files. Compare: https://github.com/modula3/cm3/compare/e2089338048c...12336014578e From rodney_bates at lcwb.coop Mon Sep 14 17:55:03 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 14 Sep 2015 10:55:03 -0500 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: <55F6EDD7.3050602@lcwb.coop> On 09/14/2015 12:13 AM, Jay K wrote: > I assume you mean p238. Yes that is a good test. Actually, I mean p035, "equality of procedures". I'm prioritizing by the order they get run. Anybody know if there is a way to edit the commit message? > I kinda think the tests need naming/prioritization but oh well. > > - Jay > > > > Date: Sun, 13 Sep 2015 14:34:38 -0700 > From: rodney.m.bates at acm.org > To: m3commit at elegosoft.com > Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 > > Branch: refs/heads/master > Home:https://github.com/modula3/cm3 > Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 > https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 > Author: Rodney Bates > Date: 2015-09-13 (Sun, 13 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Fix second failure in p038 > > load_static_link was loading the procedure value itself, instead > of its static link. p038 now gets further, but assert-fails > inside llvm when writing out the binary llvm IR. > > > > > _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -- Rodney Bates rodney.m.bates at acm.org From rodney.m.bates at acm.org Mon Sep 14 22:10:03 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Mon, 14 Sep 2015 13:10:03 -0700 Subject: [M3commit] [modula3/cm3] 5c3deb: Merge recent changes to M3CG_LLVM.m3 in package ll... Message-ID: <55f7299bb7ebe_58603fbc1b7452b86205e@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c3deb7c831d56c3949d9158a285a19e7193bc72 https://github.com/modula3/cm3/commit/5c3deb7c831d56c3949d9158a285a19e7193bc72 Author: Rodney Bates Date: 2015-09-14 (Mon, 14 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Merge recent changes to M3CG_LLVM.m3 in package llvm into llvm3.6.1 From rodney.m.bates at acm.org Sat Sep 19 18:11:13 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 19 Sep 2015 09:11:13 -0700 Subject: [M3commit] [modula3/cm3] 5aaf69: Fix p035, p062, p088, p137, and p180. Regress p06... Message-ID: <55fd8921560eb_5ae53fb44399929c240d9@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5aaf69f2c64e7c1870c03109913954445f3e8110 https://github.com/modula3/cm3/commit/5aaf69f2c64e7c1870c03109913954445f3e8110 Author: Rodney Bates Date: 2015-09-19 (Sat, 19 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix p035, p062, p088, p137, and p180. Regress p064 and p116b. Changes to handling of up-level addressing, motivated by p035, but affecting the others. p116b developed a new compile failure, and p064 had changed RT output. The p116b problem is very likely the result of a known leftover loose end. I am calling the arrays of pointers used in uplevel addressing "displays". This are not the traditional display, which is an array of pointers to activation records, but rather an array of pointers to individual variables, possibly in multiple activation records. Reverse the order of variables in a display to outside-in. This allows a procedure to have a single display for all its calls on nested procedures. For callees no deeper than the caller, the same display is passed, but only a prefix of the display will be used by the callee. Keep the compile-time info about the display in the caller, rather than the callee. Postpone emitting code to build the display to end_procedure. There can be locals of blocks nested inside the procedure that are flattened into its activation record, but not seen until after calls referencing the display have been compiled. Previously, up-level references to these were missed. The display building code is emitted at end_procedure, but inserted in the entry block, so at runtime, it is executed before any calls. The leftover loose end is in call_direct. There was a preexisting special case intended detect and provide special handling for a try-finally compiler-generated procedure being called with no frontend-supplied static link. This was being spoofed by a programmer-coded procedure. This case is currently disabled, pending a reliable way of detecting its occurrence. From jay.krell at cornell.edu Sun Sep 20 18:43:24 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 09:43:24 -0700 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... Message-ID: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ced183d086a829001f44ea5f8f791df2e3952d4f https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Aligned_procedures always FALSE -- reduce target variation From jay.krell at cornell.edu Sun Sep 20 19:26:44 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 10:26:44 -0700 Subject: [M3commit] [modula3/cm3] 1b7dc3: Allow_packed_byte_aligned the same for all targets... Message-ID: <55feec542db10_c3d3febeb29d29c333b4@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 https://github.com/modula3/cm3/commit/1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Allow_packed_byte_aligned the same for all targets. Penalizes amd64/x86 slightly in rare paths. No change to any other target. From rodney.m.bates at acm.org Sun Sep 20 22:27:07 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 20 Sep 2015 13:27:07 -0700 Subject: [M3commit] [modula3/cm3] 49c70b: Better way of detecting try-finally call with no S... Message-ID: <55ff169b6248b_5b203f96cafe52b879033@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 49c70b4b428997e9864657c6afa2c4a3d150de9e https://github.com/modula3/cm3/commit/49c70b4b428997e9864657c6afa2c4a3d150de9e Author: Rodney Bates Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Better way of detecting try-finally call with no SL. From jay.krell at cornell.edu Mon Sep 21 04:21:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:21:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> Message-ID: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 04:57:21 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:57:21 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , Message-ID: I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 05:05:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 03:05:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , , , , Message-ID: ps: in the "read 4 byte proposal", there'd still be an entire integer there, we just wouldn't bother checking the entire thing. That way, we'd only require 4 alignment, which is how instructions/functions are always aligned on everything but arm32 and x86 and amd64. This seems fairly elegant, but maybe a new target would break it.i.e. it is clear that the ideal design has a fixed size instruction, of probably 4 bytes. Almost every architecture looks like that -- mips, alpha, powerpc, sparc, arm64, I think happier.But there is the unfortunate x86 design with anything from 1 to 15 byte instruction, and the unfortunate arm32 design with 2 or 4 byte instructions, 2 byte instructions being indicated by having an odd address. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Mon, 21 Sep 2015 02:57:21 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 18:40:19 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 21 Sep 2015 09:40:19 -0700 Subject: [M3commit] [modula3/cm3] 5c66fe: Revert "Allow_packed_byte_aligned the same for all... Message-ID: <560032f3cbc1d_50bb3f92b42a92bc6095b@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c66fe4b3a5678eb1c9be176cd1639de991c328c https://github.com/modula3/cm3/commit/5c66fe4b3a5678eb1c9be176cd1639de991c328c Author: jaykrell Date: 2015-09-21 (Mon, 21 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Revert "Allow_packed_byte_aligned the same for all targets." This reverts commit 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. Revert 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. x86/amd64 packed types can have arbitrary alignment. Note that the use-case of Carbon is lacking ppc support. From rodney.m.bates at acm.org Tue Sep 29 23:37:22 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Tue, 29 Sep 2015 14:37:22 -0700 Subject: [M3commit] [modula3/cm3] e4fc22: Rename indistinguishable identifier "l" (letter el... Message-ID: <560b0492c58f3_32653fa293c8f29c1659fc@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed https://github.com/modula3/cm3/commit/e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-sys/m3front/src/stmts/TryFinStmt.m3 Log Message: ----------- Rename indistinguishable identifier "l" (letter ell). In the font of my editor and terminal windows, "l", (letter ell) and "1" (digit one) are completely indistinguishable. Even when magnified by xmag, one font is still totally indistinguishable and the other just barely, with extremely close examination. Since there are occurrences of "l+1", it's pretty hard to read. So rename variable ell to "lab", systematically. Commit: 537ed0f8035be557d5775f8603ca1e62039143dc https://github.com/modula3/cm3/commit/537ed0f8035be557d5775f8603ca1e62039143dc Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3 Log Message: ----------- Correct a comment typo. Compare: https://github.com/modula3/cm3/compare/5c66fe4b3a56...537ed0f8035b From jay.krell at cornell.edu Tue Sep 1 07:54:56 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 31 Aug 2015 22:54:56 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals Message-ID: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848 From jay.krell at cornell.edu Tue Sep 1 09:15:32 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:15:32 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:18:02 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:18:02 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, <4E019C37-773B-42AE-AC49-F53C52249195@purdue.edu>, <2E8C2B23-F814-46FF-A59A-C92F486EC273@purdue.edu>, Message-ID: I use git pull to update my local repository to be "like" github.I use git commit to commit my local edits to my local repository.It use git push to push my local repository changes to the master.I don't know what rebasing is or how/why to use it. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 17:10:51 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com; m3devel at elegosoft.com To: hosking at purdue.edu It appears to be this merge action which is causing the problem.I don?t have time to explore right now. If anyone else can it would be most appreciated. On 1 Sep 2015, at 5:08 pm, Antony Hosking wrote:Whatever you are doing I now don?t know how to recover from.It appears that somehow you are rebasing the history on the master branch, but I don?t quite know how. On 1 Sep 2015, at 5:00 pm, Antony Hosking wrote:In your work flow are you using "git push" to push your local commits? Or are you doing something else? On 1 Sep 2015, at 4:58 pm, Antony Hosking wrote:Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:26:29 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:26:29 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, Message-ID: rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:43:12 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:43:12 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , Message-ID: RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:47:44 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:47:44 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , , , , Message-ID: I don't know if I'm doing anything right or wrong,but I think there are problems in the initial cvs import.The change you point to is over-attributes, as the change that added many files I think. Can you point to problems with my git commits? - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:43:12 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elego.de Tue Sep 1 10:44:28 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 10:44:28 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: <20150901104428.4d1361dec72f856cc6b4734b@elego.de> On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From wagner at elego.de Tue Sep 1 13:35:47 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 13:35:47 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> Message-ID: <20150901133547.7880c7edbe1d456789d7599e@elego.de> On Tue, 1 Sep 2015 21:11:42 +1000 Antony Hosking wrote: > Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changes and upstream changes. Then it is problematic to just call 'git merge' or 'git pull'. What should be done instead is to commit the local changes and then use 'git pull --rebase'. At least this was what solved it for me most of the time. Olaf > > On 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > > > On Tue, 1 Sep 2015 07:15:32 +0000 > > Jay K wrote: > > > >> Just git push, git pull, git commit. > >> - Jay > >> > >> > >> > >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > >> From: hosking at purdue.edu > >> Date: Tue, 1 Sep 2015 16:58:47 +1000 > >> CC: m3commit at elegosoft.com > >> To: jay.krell at cornell.edu > >> > >> Jay, it appears that your commits are still messing up the history. > >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > > > Usually history is never really _lost_ in git, just hidden ;-) > > A possible explanation is that the first and second parent get > > switched due to merges. This link gives a good explanation of > > what is often the reason: > > > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > > > You should bear in mind that git is really more like a tree > > management software than a traditional version control system. > > You can do almost anything with it, especially shoot your own foot. > > > > Olaf > > -- > > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From jay.krell at cornell.edu Tue Sep 1 18:25:05 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 16:25:05 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , <20150901104428.4d1361dec72f856cc6b4734b@elego.de>, <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu>, <20150901133547.7880c7edbe1d456789d7599e@elego.de>, <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. Ugh. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 21:56:30 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com To: wagner at elego.de I think I?ve managed to rebase things. Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. Tony On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elegosoft.com Tue Sep 1 18:42:23 2015 From: wagner at elegosoft.com (Olaf Wagner) Date: Tue, 1 Sep 2015 18:42:23 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> On Tue, 1 Sep 2015 16:25:05 +0000 Jay K wrote: > $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > Ugh. Just commit them before you pull. Olaf > - Jay > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 21:56:30 +1000 > CC: jay.krell at cornell.edu; m3commit at elegosoft.com > To: wagner at elego.de > > I think I?ve managed to rebase things. > Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. > Tony > On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. > One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 07:15:32 +0000 > Jay K wrote: > > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > Usually history is never really _lost_ in git, just hidden ;-) > A possible explanation is that the first and second parent get > switched due to merges. This link gives a good explanation of > what is often the reason: > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > You should bear in mind that git is really more like a tree > management software than a traditional version control system. > You can do almost anything with it, especially shoot your own foot. > > Olaf > -- > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 From jay.krell at cornell.edu Wed Sep 2 03:50:53 2015 From: jay.krell at cornell.edu (Jay) Date: Tue, 1 Sep 2015 18:50:53 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <5517D5A0-00E0-4BEC-96A6-8625BAE8F839@gmail.com> I often sit on unrelated uncommitted changes. I know it is somewhat risky & somewhat historical, since local branches commit is now available & cheap. But if I commit...I have to go back & remember what is unfinished? Maybe I just use one branch & anything in it different than main is unfinished? I try not to commit unless in somewhat decent shape. Not just to save so I can pull/merge. I guess I'll have to learn the new ways. - Jay On Sep 1, 2015, at 4:35 PM, Antony Hosking wrote: > Yes, commit locally but don?t push just yet. > Then pull ?rebase. > >> On 2 Sep 2015, at 2:42 am, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 16:25:05 +0000 >> Jay K wrote: >> >>> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >>> Ugh. >> >> Just commit them before you pull. >> >> Olaf >> >>> - Jay >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 21:56:30 +1000 >>> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >>> To: wagner at elego.de >>> >>> I think I?ve managed to rebase things. >>> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >>> Tony >>> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >>> I?m not sure what the remedy is but will explore. >>> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >>> >>> On Tue, 1 Sep 2015 07:15:32 +0000 >>> Jay K wrote: >>> >>> Just git push, git pull, git commit. >>> - Jay >>> >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 16:58:47 +1000 >>> CC: m3commit at elegosoft.com >>> To: jay.krell at cornell.edu >>> >>> Jay, it appears that your commits are still messing up the history. >>> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >>> >>> Usually history is never really _lost_ in git, just hidden ;-) >>> A possible explanation is that the first and second parent get >>> switched due to merges. This link gives a good explanation of >>> what is often the reason: >>> >>> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >>> >>> You should bear in mind that git is really more like a tree >>> management software than a traditional version control system. >>> You can do almost anything with it, especially shoot your own foot. >>> >>> Olaf >>> -- >>> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >>> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >>> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >>> >>> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney_bates at lcwb.coop Wed Sep 2 17:01:06 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Wed, 02 Sep 2015 10:01:06 -0500 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <55E70F32.6060109@lcwb.coop> On 09/01/2015 11:42 AM, Olaf Wagner wrote: > On Tue, 1 Sep 2015 16:25:05 +0000 > Jay K wrote: > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >> Ugh. > > Just commit them before you pull. > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper subset of edited files. The others may be independent/unrelated changes that belong in a separate commit, or not yet ready for prime time, or even things I need for local experiments that I will never commit, e.g. my local pkginfo.txt is more often than not altered. Stashing has baffled me, and either that or just moving files temporarily is a lot of work, plus tedious and error-prone. > Olaf > >> - Jay >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 21:56:30 +1000 >> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >> To: wagner at elego.de >> >> I think I?ve managed to rebase things. >> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >> Tony >> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >> I?m not sure what the remedy is but will explore. >> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 07:15:32 +0000 >> Jay K wrote: >> >> Just git push, git pull, git commit. >> - Jay >> >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 16:58:47 +1000 >> CC: m3commit at elegosoft.com >> To: jay.krell at cornell.edu >> >> Jay, it appears that your commits are still messing up the history. >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >> >> Usually history is never really _lost_ in git, just hidden ;-) >> A possible explanation is that the first and second parent get >> switched due to merges. This link gives a good explanation of >> what is often the reason: >> >> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >> >> You should bear in mind that git is really more like a tree >> management software than a traditional version control system. >> You can do almost anything with it, especially shoot your own foot. >> >> Olaf >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> > -- Rodney Bates rodney.m.bates at acm.org From wagner at elego.de Wed Sep 2 17:23:18 2015 From: wagner at elego.de (Olaf Wagner) Date: Wed, 2 Sep 2015 17:23:18 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <55E70F32.6060109@lcwb.coop> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> <55E70F32.6060109@lcwb.coop> Message-ID: <20150902172318.b13a272ebefc91016b8df05e@elego.de> On Wed, 02 Sep 2015 10:01:06 -0500 "Rodney M. Bates" wrote: > On 09/01/2015 11:42 AM, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 16:25:05 +0000 > > Jay K wrote: > > > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > >> Ugh. > > > > Just commit them before you pull. > > > > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper > subset of edited files. The others may be independent/unrelated changes that belong > in a separate commit, or not yet ready for prime time, or even things I need for > local experiments that I will never commit, e.g. my local pkginfo.txt is more often > than not altered. Stashing has baffled me, and either that or just moving files > temporarily is a lot of work, plus tedious and error-prone. Hm, I think stashing is exactly how git supports this use case. This is the example from the git help which should cover your scenario Testing partial commits You can use git stash save --keep-index when you want to make two or more commits out of the changes in the work tree, and you want to test each change before committing: # ... hack hack hack ... $ git add --patch foo # add just first part to the index $ git stash save --keep-index # save all other changes to the stash $ edit/build/test first part $ git commit -m 'First part' # commit fully tested change $ git stash pop # prepare to work on all other changes # ... repeat above five steps until one commit remains ... $ edit/build/test remaining parts $ git commit foo -m 'Remaining parts' If you don't want to choose between different changes to one file, but only commit some files, this reduces to git add git stash save --keep-index git commit -m '...' git pull --rebase git push git stash pop AFAIK this should do what you want. You could also commit all your current work to another branch, and then just cherry-pick several changes from that after pull --rebase. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From rodney.m.bates at acm.org Thu Sep 3 21:17:47 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:17:47 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. Message-ID: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e7a87c74bd1b88d284408b760b22409459640d46 https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/m3middle/src/M3CG_Ops.i3 Log Message: ----------- Comment no nested calls occur in cm3 IR. Comment the fact that nested calls in source code are unnested in cm3 intermediate representation. This is an essential invariant to both producers and consumers of this IR. Changes to be committed: modified: src/M3CG_Ops.i3 Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Revert an incorrect fix due to misdiagnosis. The actual problem here was not a lack of a set_source_file, it was reading binary cm3 IR with the ascii reader. Changes to be committed: modified: M3CG_LLVM.m3 Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 Lots of changes happened to this file in package llvm, while the version in package llvm3.6.1 has been undergoing integration with the greatly altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 found in package llvm3.6.1. Also some random manual review and fixes. Compiles and runs to completion, with superficially believable output, on one small test case involving separate temporaries in and out of a FINALLY procedure. Works with cm3 command, when its executable m3llvm has been shipped. The test compile fails to link, not finding alloca. m3llvm needs to detect calls on alloca and translate internally into llvm alloca instructions, rather than letting them through to be linked in. Changes to be committed: modified: M3CG_LLVM.m3 Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 From rodney.m.bates at acm.org Thu Sep 3 21:23:32 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:23:32 -0700 Subject: [M3commit] [modula3/cm3] 9b0c53: Remove irrelevant file LLVM.i3 from package llvm3.... Message-ID: <55e89e34f8c2_3363fe576db72c0103297@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 9b0c53b799f597a410d49be2ec16df3b5856a75f https://github.com/modula3/cm3/commit/9b0c53b799f597a410d49be2ec16df3b5856a75f Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: R m3-sys/llvm3.6.1/src/LLVM.i3 Log Message: ----------- Remove irrelevant file LLVM.i3 from package llvm3.6.1 Changes to be committed: deleted: LLVM.i3 From rodney.m.bates at acm.org Thu Sep 3 23:38:30 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 14:38:30 -0700 Subject: [M3commit] [modula3/cm3] ca93d3: Translate library alloca call into llvm alloca ins... Message-ID: <55e8bdd69c24a_71ee3fe0430232b868649@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca93d3de38705880b20382546e2eca94264f687d https://github.com/modula3/cm3/commit/ca93d3de38705880b20382546e2eca94264f687d Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Translate library alloca call into llvm alloca instruction. Changes to be committed: modified: M3CG_LLVM.m3 From jay.krell at cornell.edu Fri Sep 4 00:38:39 2015 From: jay.krell at cornell.edu (Jay) Date: Thu, 3 Sep 2015 15:38:39 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). - Jay On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > Branch: refs/heads/master > Home: https://github.com/modula3/cm3 > Commit: e7a87c74bd1b88d284408b760b22409459640d46 > https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/m3middle/src/M3CG_Ops.i3 > > Log Message: > ----------- > Comment no nested calls occur in cm3 IR. > > Comment the fact that nested calls in source code are unnested in > cm3 intermediate representation. This is an essential invariant > to both producers and consumers of this IR. > > Changes to be committed: > > modified: src/M3CG_Ops.i3 > > > Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Revert an incorrect fix due to misdiagnosis. > > The actual problem here was not a lack of a set_source_file, > it was reading binary cm3 IR with the ascii reader. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > > Lots of changes happened to this file in package llvm, while the version > in package llvm3.6.1 has been undergoing integration with the greatly > altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > found in package llvm3.6.1. Also some random manual review and fixes. > > Compiles and runs to completion, with superficially believable output, > on one small test case involving separate temporaries in and out of > a FINALLY procedure. > > Works with cm3 command, when its executable m3llvm has been shipped. > > The test compile fails to link, not finding alloca. m3llvm needs to > detect calls on alloca and translate internally into llvm alloca > instructions, rather than letting them through to be linked in. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > _______________________________________________ > M3commit mailing list > M3commit at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit From rodney_bates at lcwb.coop Fri Sep 4 23:48:42 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Fri, 04 Sep 2015 16:48:42 -0500 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: <55EA11BA.7010704@lcwb.coop> Hmm. As near as I remember, I assumed the front end was unnesting calls just because it did it on one example (using m3cc). Looking at the code, I see command line options -nested_calls and -no_nested_calls (the default). However, the only use of this I can find affects whether an independent check by a M3CG_Check.T instance verifies that there is no nesting. So it looks like it's actually unconditional after all. I'll leave the comments as they are unless this changes. I would expect a back end not to have to cope with them, unless it was generating final code for a bytecode or stack-like machine that could directly handle them nested. On 09/03/2015 05:38 PM, Jay wrote: > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > - Jay > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > >> Branch: refs/heads/master >> Home: https://github.com/modula3/cm3 >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/m3middle/src/M3CG_Ops.i3 >> >> Log Message: >> ----------- >> Comment no nested calls occur in cm3 IR. >> >> Comment the fact that nested calls in source code are unnested in >> cm3 intermediate representation. This is an essential invariant >> to both producers and consumers of this IR. >> >> Changes to be committed: >> >> modified: src/M3CG_Ops.i3 >> >> >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Revert an incorrect fix due to misdiagnosis. >> >> The actual problem here was not a lack of a set_source_file, >> it was reading binary cm3 IR with the ascii reader. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 >> >> Lots of changes happened to this file in package llvm, while the version >> in package llvm3.6.1 has been undergoing integration with the greatly >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 >> found in package llvm3.6.1. Also some random manual review and fixes. >> >> Compiles and runs to completion, with superficially believable output, >> on one small test case involving separate temporaries in and out of >> a FINALLY procedure. >> >> Works with cm3 command, when its executable m3llvm has been shipped. >> >> The test compile fails to link, not finding alloca. m3llvm needs to >> detect calls on alloca and translate internally into llvm alloca >> instructions, rather than letting them through to be linked in. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 >> _______________________________________________ >> M3commit mailing list >> M3commit at elegosoft.com >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > -- Rodney Bates rodney.m.bates at acm.org From jay.krell at cornell.edu Sat Sep 5 03:51:16 2015 From: jay.krell at cornell.edu (Jay K) Date: Sat, 5 Sep 2015 01:51:16 +0000 Subject: [M3commit] [M3devel] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55EA11BA.7010704@lcwb.coop> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <55EA11BA.7010704@lcwb.coop> Message-ID: -unfold_nested_procs is what I'm referring to. Sorry, I comprehend better now -- "procs" vs. "calls". nested call: foo(bar()) unnested call: temp = bar() foo(temp) nested proc: void foo(){ void bar() { }} unnested proc: void foo(){ } void bar(){} And then everything I said. :)I want fewer variables and more constants. :)I want one (or fewer) persisted form of the IR and an ability for a backend to easily transform.I need to push the M3CG_MultiPass stuff around more I think.Then again, the IR doesn't tend to live long and there isn't likely a cause for it to, so variation is ok.The only time it lives long is when iterating tightly on a backend.It could be useful for bootstrapping perhaps, but I think we have a better option already -- C/C++. - Jay > Date: Fri, 4 Sep 2015 16:48:42 -0500 > From: rodney_bates at lcwb.coop > To: jay.krell at cornell.edu > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > Subject: Re: [M3devel] [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. > > Hmm. As near as I remember, I assumed the front end was unnesting calls just because it > did it on one example (using m3cc). Looking at the code, I see command line options > -nested_calls and -no_nested_calls (the default). However, the only use of this I can > find affects whether an independent check by a M3CG_Check.T instance verifies that > there is no nesting. So it looks like it's actually unconditional after all. I'll > leave the comments as they are unless this changes. > > I would expect a back end not to have to cope with them, unless it was generating > final code for a bytecode or stack-like machine that could directly handle them nested. > > On 09/03/2015 05:38 PM, Jay wrote: > > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > > > - Jay > > > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > > > >> Branch: refs/heads/master > >> Home: https://github.com/modula3/cm3 > >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 > >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/m3middle/src/M3CG_Ops.i3 > >> > >> Log Message: > >> ----------- > >> Comment no nested calls occur in cm3 IR. > >> > >> Comment the fact that nested calls in source code are unnested in > >> cm3 intermediate representation. This is an essential invariant > >> to both producers and consumers of this IR. > >> > >> Changes to be committed: > >> > >> modified: src/M3CG_Ops.i3 > >> > >> > >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Revert an incorrect fix due to misdiagnosis. > >> > >> The actual problem here was not a lack of a set_source_file, > >> it was reading binary cm3 IR with the ascii reader. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > >> > >> Lots of changes happened to this file in package llvm, while the version > >> in package llvm3.6.1 has been undergoing integration with the greatly > >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > >> found in package llvm3.6.1. Also some random manual review and fixes. > >> > >> Compiles and runs to completion, with superficially believable output, > >> on one small test case involving separate temporaries in and out of > >> a FINALLY procedure. > >> > >> Works with cm3 command, when its executable m3llvm has been shipped. > >> > >> The test compile fails to link, not finding alloca. m3llvm needs to > >> detect calls on alloca and translate internally into llvm alloca > >> instructions, rather than letting them through to be linked in. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > >> _______________________________________________ > >> M3commit mailing list > >> M3commit at elegosoft.com > >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > > > > -- > Rodney Bates > rodney.m.bates at acm.org > _______________________________________________ > M3devel mailing list > M3devel at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sun Sep 6 21:31:39 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 06 Sep 2015 12:31:39 -0700 Subject: [M3commit] [modula3/cm3] 900ad2: More/better command options for m3llvm: -g, -d. Message-ID: <55ec949b18adf_79743feac2bc92a017074@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 900ad26d46a60426bc9d0012067e3e26cb61aee2 https://github.com/modula3/cm3/commit/900ad26d46a60426bc9d0012067e3e26cb61aee2 Author: Rodney Bates Date: 2015-09-06 (Sun, 06 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Unix.common M m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 M m3-sys/llvm3.6.1/src/Main.m3 Log Message: ----------- More/better command options for m3llvm: -g, -d. The -d was intended to control trace output of m3llvm, for helping debug itself. Add a -g to control emission of debugger info into the code begin translated, and set it as with similar options for other backend modes. Also, fix cm3 subcommand emission for m3llvm and llc. Changes to be committed: modified: m3-sys/cminstall/src/config-no-install/Unix.common modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 modified: m3-sys/llvm3.6.1/src/Main.m3 From rodney.m.bates at acm.org Thu Sep 10 20:06:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 11:06:38 -0700 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Message-ID: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. From rodney.m.bates at acm.org Fri Sep 11 02:41:26 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 17:41:26 -0700 Subject: [M3commit] [modula3/cm3] f457f7: Fix test p014. Message-ID: <55f2233620fb0_21073fe7717bb2c0310a4@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: f457f72f6e18979ef520048ddaeca324319fc665 https://github.com/modula3/cm3/commit/f457f72f6e18979ef520048ddaeca324319fc665 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix test p014. Local variables declared inside a procedure body can indeed be up_level, as a comment wondered. From jay.krell at cornell.edu Fri Sep 11 07:19:09 2015 From: jay.krell at cornell.edu (Jay K) Date: Fri, 11 Sep 2015 05:19:09 +0000 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... In-Reply-To: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> References: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Message-ID: This sounds like what I was talking about. :) I don't like how this works, but isn't your fault, and I haven't fixed it either in all these years. I think at the very least, the Target.Init can set the value. Or should return it to its caller. It shouldn't be in the config file, with an ability to get it wrong. - Jay Date: Thu, 10 Sep 2015 11:06:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sat Sep 12 00:02:15 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Fri, 11 Sep 2015 15:02:15 -0700 Subject: [M3commit] [modula3/cm3] ca298f: Fix one failure in p035. Message-ID: <55f34f6721149_242c3fa7c3a8d2c0722d7@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca298f83b558046afc0431ed768616ea97bf3119 https://github.com/modula3/cm3/commit/ca298f83b558046afc0431ed768616ea97bf3119 Author: Rodney Bates Date: 2015-09-11 (Fri, 11 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix one failure in p035. Every nested procedure needs a static link, even if there are no up-level referenced variables in its proper static ancestery, in order to be able to create an environment for another call. In any case, we will need this in order for a debugger to work. Also add comments so I can understand how up-level addressing works. p035 now suffers an unrelated failure, later. From rodney.m.bates at acm.org Sat Sep 12 18:09:25 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 12 Sep 2015 09:09:25 -0700 Subject: [M3commit] [modula3/cm3] fd3179: Only one statement on a line, please. Message-ID: <55f44e351a98f_672d3faa41b0b2bc764b8@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 https://github.com/modula3/cm3/commit/fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 Author: Rodney Bates Date: 2015-09-12 (Sat, 12 Sep 2015) Changed paths: M m3-sys/m3tests/src/p0/p035/Main.m3 Log Message: ----------- Only one statement on a line, please. Multiple statements with the same line number makes it all the more difficult to figure out where in the input a problem occurred. From rodney.m.bates at acm.org Sun Sep 13 23:34:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 13 Sep 2015 14:34:38 -0700 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Message-ID: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. From jay.krell at cornell.edu Mon Sep 14 07:13:08 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 14 Sep 2015 05:13:08 +0000 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: I assume you mean p238. Yes that is a good test.I kinda think the tests need naming/prioritization but oh well. - Jay Date: Sun, 13 Sep 2015 14:34:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 14 08:10:55 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:10:55 -0700 Subject: [M3commit] [modula3/cm3] 8d22b1: loop over object file extensions Message-ID: <55f664ef5215_11f83fc9b72232b8364@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 https://github.com/modula3/cm3/commit/8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M scripts/python/pylib.py Log Message: ----------- loop over object file extensions Commit: fc20121c6dc0828428eda5d795b7cdd76c80a582 https://github.com/modula3/cm3/commit/fc20121c6dc0828428eda5d795b7cdd76c80a582 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/readme Log Message: ----------- fix small typos Commit: 5b4c7feade8c420c49613a6da35fe0eff1a01610 https://github.com/modula3/cm3/commit/5b4c7feade8c420c49613a6da35fe0eff1a01610 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/M3CG_LLVM.m3 Log Message: ----------- Some provision for 32bit hosts, if/when I can get LLVM to be 32bit hosted. Commit: 302e39b17f7c7a1722ce6610981b6915230e9ef1 https://github.com/modula3/cm3/commit/302e39b17f7c7a1722ce6610981b6915230e9ef1 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Darwin.common Log Message: ----------- only overwrite/default M3_BACKEND_MODE if not specified on command line -- and really want to change the default form '3' to 'C' Commit: c40dc306fa687da1cd603311870a1eb3aab2c213 https://github.com/modula3/cm3/commit/c40dc306fa687da1cd603311870a1eb3aab2c213 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Clarify that ALPHA_ excludes ALPHA32 to remove temptation to change it to "ALPHA". Commit: d4d7a8d86805bea6c78d1e829bce357ab4b80f47 https://github.com/modula3/cm3/commit/d4d7a8d86805bea6c78d1e829bce357ab4b80f47 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/ALPHA_LINUX M m3-sys/cminstall/src/config-no-install/ALPHA_OPENBSD M m3-sys/cminstall/src/config-no-install/AMD64_DARWIN M m3-sys/cminstall/src/config-no-install/AMD64_FREEBSD M m3-sys/cminstall/src/config-no-install/AMD64_LINUX M m3-sys/cminstall/src/config-no-install/AMD64_NETBSD M m3-sys/cminstall/src/config-no-install/AMD64_OPENBSD M m3-sys/cminstall/src/config-no-install/ARM_DARWIN M m3-sys/cminstall/src/config-no-install/ARM_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_FREEBSD.common M m3-sys/cminstall/src/config-no-install/I386_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_NETBSD M m3-sys/cminstall/src/config-no-install/I386_OPENBSD M m3-sys/cminstall/src/config-no-install/IA64_LINUX M m3-sys/cminstall/src/config-no-install/Interix.common M m3-sys/cminstall/src/config-no-install/MIPS64EL_OPENBSD M m3-sys/cminstall/src/config-no-install/MIPS64_OPENBSD M m3-sys/cminstall/src/config-no-install/NT.common M m3-sys/cminstall/src/config-no-install/PA32_HPUX M m3-sys/cminstall/src/config-no-install/PA64_HPUX M m3-sys/cminstall/src/config-no-install/PPC32_OPENBSD M m3-sys/cminstall/src/config-no-install/PPC_LINUX M m3-sys/cminstall/src/config-no-install/SPARC32_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_OPENBSD M m3-sys/cminstall/src/config-no-install/Solaris.common M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Switch from gcc to g++. Still to look into the other C/C++ compilers. (Visual C++ will also go by extension and there are the -Tp and -TP switches; gcc and clang both also have -x c++. That still leaves a few others, ultimately while I hope to use C++ exception handling for portability and efficiency, I expect setjmp/longjmp to remain an option, having experienced K&R compilers fairly recently.) Commit: 9a1fb325aab9ee445d4278b7e0ae8249df723759 https://github.com/modula3/cm3/commit/9a1fb325aab9ee445d4278b7e0ae8249df723759 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Provide this: jair:m3core jay$ cm3 -DM3_BACKEND_MODE=HELP --- building in AMD64_DARWIN --- ignoring ../src/m3overrides Fatal Error: unrecognized backend mode: HELP available values: IntegratedObject, IntegratedAssembly, ExternalObject, ExternalAssembly, C, IntLlvmObj, IntLlvmAsm, ExtLlvmObj, ExtLlvmAsm, StAloneLlvmObj, StAloneLlvmAsm Where "HELP" is any invalid valid. Commit: eeae8f11d2589f30e31df03a36785ad310fcee9a https://github.com/modula3/cm3/commit/eeae8f11d2589f30e31df03a36785ad310fcee9a Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Better behavior after errors for the files after the errors. Commit: afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 https://github.com/modula3/cm3/commit/afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/m3makefile Log Message: ----------- Crudely probe for file/directory existness so this might work for more people. Some other solution is needed longer term -- either bundle the source or require an environment variable, or maybe try pkgconfig or such. Commit: 2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe https://github.com/modula3/cm3/commit/2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- Probe file existance so this has some crude hope of working for others. Really need another mechanism here. Commit: 28cddc037ac286b06e111164f75638f183788508 https://github.com/modula3/cm3/commit/28cddc037ac286b06e111164f75638f183788508 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- comment only, that build_standalone is desired here but has problems Compare: https://github.com/modula3/cm3/compare/fffbd2adf139...28cddc037ac2 From jay.krell at cornell.edu Mon Sep 14 08:16:37 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:16:37 -0700 Subject: [M3commit] [modula3/cm3] fade65: restore Rodney's veresions to 3.6.1, I don't know ... Message-ID: <55f66645d034e_25de3f7ef32dd2bc211b3@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fade65a7757f2f8c0ba24d11791c322b3cae1249 https://github.com/modula3/cm3/commit/fade65a7757f2f8c0ba24d11791c322b3cae1249 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- restore Rodney's veresions to 3.6.1, I don't know how that happened, maybe git is bad at merging From jay.krell at cornell.edu Mon Sep 14 08:32:43 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:32:43 -0700 Subject: [M3commit] [modula3/cm3] e20893: upgrade Jay from 3.5.2 to 3.6.1 likee Rodney Message-ID: <55f66a0be3e60_16de3fd226a7d2c05361c@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e2089338048cfcd3fdc8b22d0945e421ff8f4e72 https://github.com/modula3/cm3/commit/e2089338048cfcd3fdc8b22d0945e421ff8f4e72 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- upgrade Jay from 3.5.2 to 3.6.1 likee Rodney From jay.krell at cornell.edu Mon Sep 14 08:44:03 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:44:03 -0700 Subject: [M3commit] [modula3/cm3] bb101f: Revert "Better behavior after errors for the files... Message-ID: <55f66cb37885a_77b43f9a5e6ef2c01013c8@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: bb101f0808428eff9bb099808fa42721728302d2 https://github.com/modula3/cm3/commit/bb101f0808428eff9bb099808fa42721728302d2 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Revert "Better behavior after errors for the files after the errors." This reverts commit eeae8f11d2589f30e31df03a36785ad310fcee9a. Revert change eeae8f11d2589f30e31df03a36785ad310fcee9a. It was ok, but it combined two ideas, but only really used one. I'll redo a subset of it. Commit: 12336014578ed488b45e2c4f9351a5f65a0bc878 https://github.com/modula3/cm3/commit/12336014578ed488b45e2c4f9351a5f65a0bc878 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Better behavior when there are errors -- errors in one file should not truncate the build pipeline for other files. Compare: https://github.com/modula3/cm3/compare/e2089338048c...12336014578e From rodney_bates at lcwb.coop Mon Sep 14 17:55:03 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 14 Sep 2015 10:55:03 -0500 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: <55F6EDD7.3050602@lcwb.coop> On 09/14/2015 12:13 AM, Jay K wrote: > I assume you mean p238. Yes that is a good test. Actually, I mean p035, "equality of procedures". I'm prioritizing by the order they get run. Anybody know if there is a way to edit the commit message? > I kinda think the tests need naming/prioritization but oh well. > > - Jay > > > > Date: Sun, 13 Sep 2015 14:34:38 -0700 > From: rodney.m.bates at acm.org > To: m3commit at elegosoft.com > Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 > > Branch: refs/heads/master > Home:https://github.com/modula3/cm3 > Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 > https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 > Author: Rodney Bates > Date: 2015-09-13 (Sun, 13 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Fix second failure in p038 > > load_static_link was loading the procedure value itself, instead > of its static link. p038 now gets further, but assert-fails > inside llvm when writing out the binary llvm IR. > > > > > _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -- Rodney Bates rodney.m.bates at acm.org From rodney.m.bates at acm.org Mon Sep 14 22:10:03 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Mon, 14 Sep 2015 13:10:03 -0700 Subject: [M3commit] [modula3/cm3] 5c3deb: Merge recent changes to M3CG_LLVM.m3 in package ll... Message-ID: <55f7299bb7ebe_58603fbc1b7452b86205e@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c3deb7c831d56c3949d9158a285a19e7193bc72 https://github.com/modula3/cm3/commit/5c3deb7c831d56c3949d9158a285a19e7193bc72 Author: Rodney Bates Date: 2015-09-14 (Mon, 14 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Merge recent changes to M3CG_LLVM.m3 in package llvm into llvm3.6.1 From rodney.m.bates at acm.org Sat Sep 19 18:11:13 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 19 Sep 2015 09:11:13 -0700 Subject: [M3commit] [modula3/cm3] 5aaf69: Fix p035, p062, p088, p137, and p180. Regress p06... Message-ID: <55fd8921560eb_5ae53fb44399929c240d9@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5aaf69f2c64e7c1870c03109913954445f3e8110 https://github.com/modula3/cm3/commit/5aaf69f2c64e7c1870c03109913954445f3e8110 Author: Rodney Bates Date: 2015-09-19 (Sat, 19 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix p035, p062, p088, p137, and p180. Regress p064 and p116b. Changes to handling of up-level addressing, motivated by p035, but affecting the others. p116b developed a new compile failure, and p064 had changed RT output. The p116b problem is very likely the result of a known leftover loose end. I am calling the arrays of pointers used in uplevel addressing "displays". This are not the traditional display, which is an array of pointers to activation records, but rather an array of pointers to individual variables, possibly in multiple activation records. Reverse the order of variables in a display to outside-in. This allows a procedure to have a single display for all its calls on nested procedures. For callees no deeper than the caller, the same display is passed, but only a prefix of the display will be used by the callee. Keep the compile-time info about the display in the caller, rather than the callee. Postpone emitting code to build the display to end_procedure. There can be locals of blocks nested inside the procedure that are flattened into its activation record, but not seen until after calls referencing the display have been compiled. Previously, up-level references to these were missed. The display building code is emitted at end_procedure, but inserted in the entry block, so at runtime, it is executed before any calls. The leftover loose end is in call_direct. There was a preexisting special case intended detect and provide special handling for a try-finally compiler-generated procedure being called with no frontend-supplied static link. This was being spoofed by a programmer-coded procedure. This case is currently disabled, pending a reliable way of detecting its occurrence. From jay.krell at cornell.edu Sun Sep 20 18:43:24 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 09:43:24 -0700 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... Message-ID: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ced183d086a829001f44ea5f8f791df2e3952d4f https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Aligned_procedures always FALSE -- reduce target variation From jay.krell at cornell.edu Sun Sep 20 19:26:44 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 10:26:44 -0700 Subject: [M3commit] [modula3/cm3] 1b7dc3: Allow_packed_byte_aligned the same for all targets... Message-ID: <55feec542db10_c3d3febeb29d29c333b4@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 https://github.com/modula3/cm3/commit/1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Allow_packed_byte_aligned the same for all targets. Penalizes amd64/x86 slightly in rare paths. No change to any other target. From rodney.m.bates at acm.org Sun Sep 20 22:27:07 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 20 Sep 2015 13:27:07 -0700 Subject: [M3commit] [modula3/cm3] 49c70b: Better way of detecting try-finally call with no S... Message-ID: <55ff169b6248b_5b203f96cafe52b879033@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 49c70b4b428997e9864657c6afa2c4a3d150de9e https://github.com/modula3/cm3/commit/49c70b4b428997e9864657c6afa2c4a3d150de9e Author: Rodney Bates Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Better way of detecting try-finally call with no SL. From jay.krell at cornell.edu Mon Sep 21 04:21:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:21:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> Message-ID: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 04:57:21 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:57:21 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , Message-ID: I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 05:05:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 03:05:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , , , , Message-ID: ps: in the "read 4 byte proposal", there'd still be an entire integer there, we just wouldn't bother checking the entire thing. That way, we'd only require 4 alignment, which is how instructions/functions are always aligned on everything but arm32 and x86 and amd64. This seems fairly elegant, but maybe a new target would break it.i.e. it is clear that the ideal design has a fixed size instruction, of probably 4 bytes. Almost every architecture looks like that -- mips, alpha, powerpc, sparc, arm64, I think happier.But there is the unfortunate x86 design with anything from 1 to 15 byte instruction, and the unfortunate arm32 design with 2 or 4 byte instructions, 2 byte instructions being indicated by having an odd address. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Mon, 21 Sep 2015 02:57:21 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 18:40:19 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 21 Sep 2015 09:40:19 -0700 Subject: [M3commit] [modula3/cm3] 5c66fe: Revert "Allow_packed_byte_aligned the same for all... Message-ID: <560032f3cbc1d_50bb3f92b42a92bc6095b@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c66fe4b3a5678eb1c9be176cd1639de991c328c https://github.com/modula3/cm3/commit/5c66fe4b3a5678eb1c9be176cd1639de991c328c Author: jaykrell Date: 2015-09-21 (Mon, 21 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Revert "Allow_packed_byte_aligned the same for all targets." This reverts commit 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. Revert 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. x86/amd64 packed types can have arbitrary alignment. Note that the use-case of Carbon is lacking ppc support. From rodney.m.bates at acm.org Tue Sep 29 23:37:22 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Tue, 29 Sep 2015 14:37:22 -0700 Subject: [M3commit] [modula3/cm3] e4fc22: Rename indistinguishable identifier "l" (letter el... Message-ID: <560b0492c58f3_32653fa293c8f29c1659fc@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed https://github.com/modula3/cm3/commit/e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-sys/m3front/src/stmts/TryFinStmt.m3 Log Message: ----------- Rename indistinguishable identifier "l" (letter ell). In the font of my editor and terminal windows, "l", (letter ell) and "1" (digit one) are completely indistinguishable. Even when magnified by xmag, one font is still totally indistinguishable and the other just barely, with extremely close examination. Since there are occurrences of "l+1", it's pretty hard to read. So rename variable ell to "lab", systematically. Commit: 537ed0f8035be557d5775f8603ca1e62039143dc https://github.com/modula3/cm3/commit/537ed0f8035be557d5775f8603ca1e62039143dc Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3 Log Message: ----------- Correct a comment typo. Compare: https://github.com/modula3/cm3/compare/5c66fe4b3a56...537ed0f8035b From jay.krell at cornell.edu Tue Sep 1 07:54:56 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 31 Aug 2015 22:54:56 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals Message-ID: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848 From jay.krell at cornell.edu Tue Sep 1 09:15:32 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:15:32 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:18:02 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:18:02 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, <4E019C37-773B-42AE-AC49-F53C52249195@purdue.edu>, <2E8C2B23-F814-46FF-A59A-C92F486EC273@purdue.edu>, Message-ID: I use git pull to update my local repository to be "like" github.I use git commit to commit my local edits to my local repository.It use git push to push my local repository changes to the master.I don't know what rebasing is or how/why to use it. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 17:10:51 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com; m3devel at elegosoft.com To: hosking at purdue.edu It appears to be this merge action which is causing the problem.I don?t have time to explore right now. If anyone else can it would be most appreciated. On 1 Sep 2015, at 5:08 pm, Antony Hosking wrote:Whatever you are doing I now don?t know how to recover from.It appears that somehow you are rebasing the history on the master branch, but I don?t quite know how. On 1 Sep 2015, at 5:00 pm, Antony Hosking wrote:In your work flow are you using "git push" to push your local commits? Or are you doing something else? On 1 Sep 2015, at 4:58 pm, Antony Hosking wrote:Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:26:29 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:26:29 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, Message-ID: rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:43:12 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:43:12 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , Message-ID: RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Tue Sep 1 09:47:44 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 07:47:44 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, , , , <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , , , , , Message-ID: I don't know if I'm doing anything right or wrong,but I think there are problems in the initial cvs import.The change you point to is over-attributes, as the change that added many files I think. Can you point to problems with my git commits? - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:43:12 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals RTCollector has had not changes in git, only cvs, imported.So I don't know how to reason about it.I agree its history in git looks wrong, and different than cvs. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:26:29 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals rereading some tutorials.. I use git push and git pull w/o parameters.I believe this defaults to origin/master, that the tutorials list explicitly.The tutorials recommend --rebase, that I haven't been doing, in order to avoidmy pulls being in the history, since they are fairly redundant. I'll poke around a bit more but maybe not tonight. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Tue, 1 Sep 2015 07:15:32 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? For instance, if you take a look at RTCollector we see a history with the oldest commit labelled "initial diff from ../config/PPC_LINUX" from Jan 4, 2008. Whereas it should have the oldest commit labeled as follows from when Olaf first imported from cvs to svn. commit cfac2c79141d61c291a40177f0d5490f774c032fAuthor: Olaf Wagner Date: Wed Jan 24 12:24:49 2001 +0000 This commit was generated by cvs2svn to compensate for changes in r20, which included commits to RCS files with non-trunk default branches. On 1 Sep 2015, at 3:54 pm, jaykrell wrote: Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 4537cb804fbf864a076235495db77eebf9c5dab6 https://github.com/modula3/cm3/commit/4537cb804fbf864a076235495db77eebf9c5dab6 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- remove unused locals Commit: 477c3d058a95ba8a06c90ac5d36dceefd3e7f39a https://github.com/modula3/cm3/commit/477c3d058a95ba8a06c90ac5d36dceefd3e7f39a Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Fix regression from "7/31 Initial integration of llvm back end into cm3's build system." when bootstrapping using cm3cg. .c files pass through for bootstrap, along with any .h or checked in .s/.o etc. bootstrapping is using cm3 -boot. Commit: 459512da7848b534636c1fe4e1095eee76ad2d89 https://github.com/modula3/cm3/commit/459512da7848b534636c1fe4e1095eee76ad2d89 Author: jaykrell Date: 2015-08-31 (Mon, 31 Aug 2015) Changed paths: A m3-sys/llvm3.6.1/src/LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 A m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 A m3-sys/llvm3.6.1/src/Main.m3 A m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- Merge branch 'master' of github.com:modula3/cm3 pull from master Compare: https://github.com/modula3/cm3/compare/b068a306fe87...459512da7848_______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elego.de Tue Sep 1 10:44:28 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 10:44:28 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> Message-ID: <20150901104428.4d1361dec72f856cc6b4734b@elego.de> On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From wagner at elego.de Tue Sep 1 13:35:47 2015 From: wagner at elego.de (Olaf Wagner) Date: Tue, 1 Sep 2015 13:35:47 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> Message-ID: <20150901133547.7880c7edbe1d456789d7599e@elego.de> On Tue, 1 Sep 2015 21:11:42 +1000 Antony Hosking wrote: > Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changes and upstream changes. Then it is problematic to just call 'git merge' or 'git pull'. What should be done instead is to commit the local changes and then use 'git pull --rebase'. At least this was what solved it for me most of the time. Olaf > > On 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > > > On Tue, 1 Sep 2015 07:15:32 +0000 > > Jay K wrote: > > > >> Just git push, git pull, git commit. > >> - Jay > >> > >> > >> > >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > >> From: hosking at purdue.edu > >> Date: Tue, 1 Sep 2015 16:58:47 +1000 > >> CC: m3commit at elegosoft.com > >> To: jay.krell at cornell.edu > >> > >> Jay, it appears that your commits are still messing up the history. > >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > > > Usually history is never really _lost_ in git, just hidden ;-) > > A possible explanation is that the first and second parent get > > switched due to merges. This link gives a good explanation of > > what is often the reason: > > > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > > > You should bear in mind that git is really more like a tree > > management software than a traditional version control system. > > You can do almost anything with it, especially shoot your own foot. > > > > Olaf > > -- > > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From jay.krell at cornell.edu Tue Sep 1 18:25:05 2015 From: jay.krell at cornell.edu (Jay K) Date: Tue, 1 Sep 2015 16:25:05 +0000 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail>, <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu>, , <20150901104428.4d1361dec72f856cc6b4734b@elego.de>, <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu>, <20150901133547.7880c7edbe1d456789d7599e@elego.de>, <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. Ugh. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 21:56:30 +1000 CC: jay.krell at cornell.edu; m3commit at elegosoft.com To: wagner at elego.de I think I?ve managed to rebase things. Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. Tony On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. I?m not sure what the remedy is but will explore. One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: On Tue, 1 Sep 2015 07:15:32 +0000 Jay K wrote: Just git push, git pull, git commit. - Jay Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals From: hosking at purdue.edu Date: Tue, 1 Sep 2015 16:58:47 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu Jay, it appears that your commits are still messing up the history. As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? Usually history is never really _lost_ in git, just hidden ;-) A possible explanation is that the first and second parent get switched due to merges. This link gives a good explanation of what is often the reason: http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git You should bear in mind that git is really more like a tree management software than a traditional version control system. You can do almost anything with it, especially shoot your own foot. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- An HTML attachment was scrubbed... URL: From wagner at elegosoft.com Tue Sep 1 18:42:23 2015 From: wagner at elegosoft.com (Olaf Wagner) Date: Tue, 1 Sep 2015 18:42:23 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> Message-ID: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> On Tue, 1 Sep 2015 16:25:05 +0000 Jay K wrote: > $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > Ugh. Just commit them before you pull. Olaf > - Jay > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 21:56:30 +1000 > CC: jay.krell at cornell.edu; m3commit at elegosoft.com > To: wagner at elego.de > > I think I?ve managed to rebase things. > Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. > Tony > On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. > I?m not sure what the remedy is but will explore. > One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 07:15:32 +0000 > Jay K wrote: > > Just git push, git pull, git commit. > - Jay > > > > Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals > From: hosking at purdue.edu > Date: Tue, 1 Sep 2015 16:58:47 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > Jay, it appears that your commits are still messing up the history. > As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? > > Usually history is never really _lost_ in git, just hidden ;-) > A possible explanation is that the first and second parent get > switched due to merges. This link gives a good explanation of > what is often the reason: > > http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git > > You should bear in mind that git is really more like a tree > management software than a traditional version control system. > You can do almost anything with it, especially shoot your own foot. > > Olaf > -- > Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com > Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany > phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 > Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin > Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 From jay.krell at cornell.edu Wed Sep 2 03:50:53 2015 From: jay.krell at cornell.edu (Jay) Date: Tue, 1 Sep 2015 18:50:53 -0700 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <5517D5A0-00E0-4BEC-96A6-8625BAE8F839@gmail.com> I often sit on unrelated uncommitted changes. I know it is somewhat risky & somewhat historical, since local branches commit is now available & cheap. But if I commit...I have to go back & remember what is unfinished? Maybe I just use one branch & anything in it different than main is unfinished? I try not to commit unless in somewhat decent shape. Not just to save so I can pull/merge. I guess I'll have to learn the new ways. - Jay On Sep 1, 2015, at 4:35 PM, Antony Hosking wrote: > Yes, commit locally but don?t push just yet. > Then pull ?rebase. > >> On 2 Sep 2015, at 2:42 am, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 16:25:05 +0000 >> Jay K wrote: >> >>> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >>> Ugh. >> >> Just commit them before you pull. >> >> Olaf >> >>> - Jay >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 21:56:30 +1000 >>> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >>> To: wagner at elego.de >>> >>> I think I?ve managed to rebase things. >>> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >>> Tony >>> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >>> I?m not sure what the remedy is but will explore. >>> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >>> >>> On Tue, 1 Sep 2015 07:15:32 +0000 >>> Jay K wrote: >>> >>> Just git push, git pull, git commit. >>> - Jay >>> >>> >>> >>> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >>> From: hosking at purdue.edu >>> Date: Tue, 1 Sep 2015 16:58:47 +1000 >>> CC: m3commit at elegosoft.com >>> To: jay.krell at cornell.edu >>> >>> Jay, it appears that your commits are still messing up the history. >>> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >>> >>> Usually history is never really _lost_ in git, just hidden ;-) >>> A possible explanation is that the first and second parent get >>> switched due to merges. This link gives a good explanation of >>> what is often the reason: >>> >>> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >>> >>> You should bear in mind that git is really more like a tree >>> management software than a traditional version control system. >>> You can do almost anything with it, especially shoot your own foot. >>> >>> Olaf >>> -- >>> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >>> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >>> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >>> >>> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney_bates at lcwb.coop Wed Sep 2 17:01:06 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Wed, 02 Sep 2015 10:01:06 -0500 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> Message-ID: <55E70F32.6060109@lcwb.coop> On 09/01/2015 11:42 AM, Olaf Wagner wrote: > On Tue, 1 Sep 2015 16:25:05 +0000 > Jay K wrote: > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. >> Ugh. > > Just commit them before you pull. > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper subset of edited files. The others may be independent/unrelated changes that belong in a separate commit, or not yet ready for prime time, or even things I need for local experiments that I will never commit, e.g. my local pkginfo.txt is more often than not altered. Stashing has baffled me, and either that or just moving files temporarily is a lot of work, plus tedious and error-prone. > Olaf > >> - Jay >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 21:56:30 +1000 >> CC: jay.krell at cornell.edu; m3commit at elegosoft.com >> To: wagner at elego.de >> >> I think I?ve managed to rebase things. >> Reminder: when pulling please use "git pull ?rebase" to maintain a linear history. >> Tony >> On 1 Sep 2015, at 9:35 pm, Olaf Wagner wrote:On Tue, 1 Sep 2015 21:11:42 +1000Antony Hosking wrote:Yep, Jay, the document Olaf refers to describes the problem. >> I?m not sure what the remedy is but will explore. >> One standard problem ist that there are both local changesand upstream changes.Then it is problematic to just call 'git merge' or 'git pull'.What should be done instead is to commit the local changesand then use 'git pull --rebase'.At least this was what solved it for me most of the time.OlafOn 1 Sep 2015, at 6:44 pm, Olaf Wagner wrote: >> >> On Tue, 1 Sep 2015 07:15:32 +0000 >> Jay K wrote: >> >> Just git push, git pull, git commit. >> - Jay >> >> >> >> Subject: Re: [M3commit] [modula3/cm3] 4537cb: remove unused locals >> From: hosking at purdue.edu >> Date: Tue, 1 Sep 2015 16:58:47 +1000 >> CC: m3commit at elegosoft.com >> To: jay.krell at cornell.edu >> >> Jay, it appears that your commits are still messing up the history. >> As of your most recent commit we have lost history again. What exactly are you doing when you use git against the repo? >> >> Usually history is never really _lost_ in git, just hidden ;-) >> A possible explanation is that the first and second parent get >> switched due to merges. This link gives a good explanation of >> what is often the reason: >> >> http://devblog.nestoria.com/post/98892582763/maintaining-a-consistent-linear-history-for-git >> >> You should bear in mind that git is really more like a tree >> management software than a traditional version control system. >> You can do almost anything with it, especially shoot your own foot. >> >> Olaf >> -- >> Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com >> Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany >> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 >> Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin >> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> >> -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germanyphone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95Gesch?ftsf?hrer: Olaf Wagner | Sitz: BerlinHandelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 >> > -- Rodney Bates rodney.m.bates at acm.org From wagner at elego.de Wed Sep 2 17:23:18 2015 From: wagner at elego.de (Olaf Wagner) Date: Wed, 2 Sep 2015 17:23:18 +0200 Subject: [M3commit] [modula3/cm3] 4537cb: remove unused locals In-Reply-To: <55E70F32.6060109@lcwb.coop> References: <55e53db0990a0_3be33fd3fe0af2a068547@hookshot-fe2-cp1-prd.iad.github.net.mail> <7C1D0FBD-5C9A-4883-A47C-57E613FA171E@purdue.edu> <20150901104428.4d1361dec72f856cc6b4734b@elego.de> <23B9F990-B77A-495C-8FC6-90BF1D5E4EBB@purdue.edu> <20150901133547.7880c7edbe1d456789d7599e@elego.de> <876C907E-63A8-41C0-90F6-29DD6C20A005@purdue.edu> <20150901184223.52e275b625c8e7d8a691986e@elegosoft.com> <55E70F32.6060109@lcwb.coop> Message-ID: <20150902172318.b13a272ebefc91016b8df05e@elego.de> On Wed, 02 Sep 2015 10:01:06 -0500 "Rodney M. Bates" wrote: > On 09/01/2015 11:42 AM, Olaf Wagner wrote: > > On Tue, 1 Sep 2015 16:25:05 +0000 > > Jay K wrote: > > > >> $ git pull --rebaseerror: Cannot pull with rebase: You have unstaged changes. > >> Ugh. > > > > Just commit them before you pull. > > > > Hmm, this is a big problem for me. When I make a commit, it is almost always a proper > subset of edited files. The others may be independent/unrelated changes that belong > in a separate commit, or not yet ready for prime time, or even things I need for > local experiments that I will never commit, e.g. my local pkginfo.txt is more often > than not altered. Stashing has baffled me, and either that or just moving files > temporarily is a lot of work, plus tedious and error-prone. Hm, I think stashing is exactly how git supports this use case. This is the example from the git help which should cover your scenario Testing partial commits You can use git stash save --keep-index when you want to make two or more commits out of the changes in the work tree, and you want to test each change before committing: # ... hack hack hack ... $ git add --patch foo # add just first part to the index $ git stash save --keep-index # save all other changes to the stash $ edit/build/test first part $ git commit -m 'First part' # commit fully tested change $ git stash pop # prepare to work on all other changes # ... repeat above five steps until one commit remains ... $ edit/build/test remaining parts $ git commit foo -m 'Remaining parts' If you don't want to choose between different changes to one file, but only commit some files, this reduces to git add git stash save --keep-index git commit -m '...' git pull --rebase git push git stash pop AFAIK this should do what you want. You could also commit all your current work to another branch, and then just cherry-pick several changes from that after pull --rebase. Olaf -- Olaf Wagner -- elego Software Solutions GmbH -- http://www.elegosoft.com Gustav-Meyer-Allee 25 / Geb?ude 12, 13355 Berlin, Germany phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95 Gesch?ftsf?hrer: Olaf Wagner | Sitz: Berlin Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: not available URL: From rodney.m.bates at acm.org Thu Sep 3 21:17:47 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:17:47 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. Message-ID: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e7a87c74bd1b88d284408b760b22409459640d46 https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/m3middle/src/M3CG_Ops.i3 Log Message: ----------- Comment no nested calls occur in cm3 IR. Comment the fact that nested calls in source code are unnested in cm3 intermediate representation. This is an essential invariant to both producers and consumers of this IR. Changes to be committed: modified: src/M3CG_Ops.i3 Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Revert an incorrect fix due to misdiagnosis. The actual problem here was not a lack of a set_source_file, it was reading binary cm3 IR with the ascii reader. Changes to be committed: modified: M3CG_LLVM.m3 Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 Lots of changes happened to this file in package llvm, while the version in package llvm3.6.1 has been undergoing integration with the greatly altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 found in package llvm3.6.1. Also some random manual review and fixes. Compiles and runs to completion, with superficially believable output, on one small test case involving separate temporaries in and out of a FINALLY procedure. Works with cm3 command, when its executable m3llvm has been shipped. The test compile fails to link, not finding alloca. m3llvm needs to detect calls on alloca and translate internally into llvm alloca instructions, rather than letting them through to be linked in. Changes to be committed: modified: M3CG_LLVM.m3 Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 From rodney.m.bates at acm.org Thu Sep 3 21:23:32 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 12:23:32 -0700 Subject: [M3commit] [modula3/cm3] 9b0c53: Remove irrelevant file LLVM.i3 from package llvm3.... Message-ID: <55e89e34f8c2_3363fe576db72c0103297@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 9b0c53b799f597a410d49be2ec16df3b5856a75f https://github.com/modula3/cm3/commit/9b0c53b799f597a410d49be2ec16df3b5856a75f Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: R m3-sys/llvm3.6.1/src/LLVM.i3 Log Message: ----------- Remove irrelevant file LLVM.i3 from package llvm3.6.1 Changes to be committed: deleted: LLVM.i3 From rodney.m.bates at acm.org Thu Sep 3 23:38:30 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 03 Sep 2015 14:38:30 -0700 Subject: [M3commit] [modula3/cm3] ca93d3: Translate library alloca call into llvm alloca ins... Message-ID: <55e8bdd69c24a_71ee3fe0430232b868649@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca93d3de38705880b20382546e2eca94264f687d https://github.com/modula3/cm3/commit/ca93d3de38705880b20382546e2eca94264f687d Author: Rodney Bates Date: 2015-09-03 (Thu, 03 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Translate library alloca call into llvm alloca instruction. Changes to be committed: modified: M3CG_LLVM.m3 From jay.krell at cornell.edu Fri Sep 4 00:38:39 2015 From: jay.krell at cornell.edu (Jay) Date: Thu, 3 Sep 2015 15:38:39 -0700 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). - Jay On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > Branch: refs/heads/master > Home: https://github.com/modula3/cm3 > Commit: e7a87c74bd1b88d284408b760b22409459640d46 > https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/m3middle/src/M3CG_Ops.i3 > > Log Message: > ----------- > Comment no nested calls occur in cm3 IR. > > Comment the fact that nested calls in source code are unnested in > cm3 intermediate representation. This is an essential invariant > to both producers and consumers of this IR. > > Changes to be committed: > > modified: src/M3CG_Ops.i3 > > > Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Revert an incorrect fix due to misdiagnosis. > > The actual problem here was not a lack of a set_source_file, > it was reading binary cm3 IR with the ascii reader. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > Author: Rodney Bates > Date: 2015-09-03 (Thu, 03 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > > Lots of changes happened to this file in package llvm, while the version > in package llvm3.6.1 has been undergoing integration with the greatly > altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > found in package llvm3.6.1. Also some random manual review and fixes. > > Compiles and runs to completion, with superficially believable output, > on one small test case involving separate temporaries in and out of > a FINALLY procedure. > > Works with cm3 command, when its executable m3llvm has been shipped. > > The test compile fails to link, not finding alloca. m3llvm needs to > detect calls on alloca and translate internally into llvm alloca > instructions, rather than letting them through to be linked in. > > Changes to be committed: > > modified: M3CG_LLVM.m3 > > > Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > _______________________________________________ > M3commit mailing list > M3commit at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit From rodney_bates at lcwb.coop Fri Sep 4 23:48:42 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Fri, 04 Sep 2015 16:48:42 -0500 Subject: [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail> Message-ID: <55EA11BA.7010704@lcwb.coop> Hmm. As near as I remember, I assumed the front end was unnesting calls just because it did it on one example (using m3cc). Looking at the code, I see command line options -nested_calls and -no_nested_calls (the default). However, the only use of this I can find affects whether an independent check by a M3CG_Check.T instance verifies that there is no nesting. So it looks like it's actually unconditional after all. I'll leave the comments as they are unless this changes. I would expect a back end not to have to cope with them, unless it was generating final code for a bytecode or stack-like machine that could directly handle them nested. On 09/03/2015 05:38 PM, Jay wrote: > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > - Jay > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > >> Branch: refs/heads/master >> Home: https://github.com/modula3/cm3 >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/m3middle/src/M3CG_Ops.i3 >> >> Log Message: >> ----------- >> Comment no nested calls occur in cm3 IR. >> >> Comment the fact that nested calls in source code are unnested in >> cm3 intermediate representation. This is an essential invariant >> to both producers and consumers of this IR. >> >> Changes to be committed: >> >> modified: src/M3CG_Ops.i3 >> >> >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Revert an incorrect fix due to misdiagnosis. >> >> The actual problem here was not a lack of a set_source_file, >> it was reading binary cm3 IR with the ascii reader. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 >> Author: Rodney Bates >> Date: 2015-09-03 (Thu, 03 Sep 2015) >> >> Changed paths: >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 >> >> Log Message: >> ----------- >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 >> >> Lots of changes happened to this file in package llvm, while the version >> in package llvm3.6.1 has been undergoing integration with the greatly >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 >> found in package llvm3.6.1. Also some random manual review and fixes. >> >> Compiles and runs to completion, with superficially believable output, >> on one small test case involving separate temporaries in and out of >> a FINALLY procedure. >> >> Works with cm3 command, when its executable m3llvm has been shipped. >> >> The test compile fails to link, not finding alloca. m3llvm needs to >> detect calls on alloca and translate internally into llvm alloca >> instructions, rather than letting them through to be linked in. >> >> Changes to be committed: >> >> modified: M3CG_LLVM.m3 >> >> >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 >> _______________________________________________ >> M3commit mailing list >> M3commit at elegosoft.com >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > -- Rodney Bates rodney.m.bates at acm.org From jay.krell at cornell.edu Sat Sep 5 03:51:16 2015 From: jay.krell at cornell.edu (Jay K) Date: Sat, 5 Sep 2015 01:51:16 +0000 Subject: [M3commit] [M3devel] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. In-Reply-To: <55EA11BA.7010704@lcwb.coop> References: <55e89cdb30490_79243f820464d2bc82318@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <55EA11BA.7010704@lcwb.coop> Message-ID: -unfold_nested_procs is what I'm referring to. Sorry, I comprehend better now -- "procs" vs. "calls". nested call: foo(bar()) unnested call: temp = bar() foo(temp) nested proc: void foo(){ void bar() { }} unnested proc: void foo(){ } void bar(){} And then everything I said. :)I want fewer variables and more constants. :)I want one (or fewer) persisted form of the IR and an ability for a backend to easily transform.I need to push the M3CG_MultiPass stuff around more I think.Then again, the IR doesn't tend to live long and there isn't likely a cause for it to, so variation is ok.The only time it lives long is when iterating tightly on a backend.It could be useful for bootstrapping perhaps, but I think we have a better option already -- C/C++. - Jay > Date: Fri, 4 Sep 2015 16:48:42 -0500 > From: rodney_bates at lcwb.coop > To: jay.krell at cornell.edu > CC: m3devel at elegosoft.com; m3commit at elegosoft.com > Subject: Re: [M3devel] [M3commit] [modula3/cm3] e7a87c: Comment no nested calls occur in cm3 IR. > > Hmm. As near as I remember, I assumed the front end was unnesting calls just because it > did it on one example (using m3cc). Looking at the code, I see command line options > -nested_calls and -no_nested_calls (the default). However, the only use of this I can > find affects whether an independent check by a M3CG_Check.T instance verifies that > there is no nesting. So it looks like it's actually unconditional after all. I'll > leave the comments as they are unless this changes. > > I would expect a back end not to have to cope with them, unless it was generating > final code for a bytecode or stack-like machine that could directly handle them nested. > > On 09/03/2015 05:38 PM, Jay wrote: > > I believe the lack of nested calls is optional. M3front has an option. Different backends have different requirements. The in-process backends could/should set the flag. There should be an M3CG pass or two to transform from either form to the other (or have m3front output one way, and optionally transform to the other). > > > > - Jay > > > > On Sep 3, 2015, at 12:17 PM, Rodney Bates wrote: > > > >> Branch: refs/heads/master > >> Home: https://github.com/modula3/cm3 > >> Commit: e7a87c74bd1b88d284408b760b22409459640d46 > >> https://github.com/modula3/cm3/commit/e7a87c74bd1b88d284408b760b22409459640d46 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/m3middle/src/M3CG_Ops.i3 > >> > >> Log Message: > >> ----------- > >> Comment no nested calls occur in cm3 IR. > >> > >> Comment the fact that nested calls in source code are unnested in > >> cm3 intermediate representation. This is an essential invariant > >> to both producers and consumers of this IR. > >> > >> Changes to be committed: > >> > >> modified: src/M3CG_Ops.i3 > >> > >> > >> Commit: 8bcccbb7ccaa0af0879c80014215daa571f95174 > >> https://github.com/modula3/cm3/commit/8bcccbb7ccaa0af0879c80014215daa571f95174 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Revert an incorrect fix due to misdiagnosis. > >> > >> The actual problem here was not a lack of a set_source_file, > >> it was reading binary cm3 IR with the ascii reader. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Commit: 379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> https://github.com/modula3/cm3/commit/379f750aa7e5fac4948be06d5bd7a748a7d85350 > >> Author: Rodney Bates > >> Date: 2015-09-03 (Thu, 03 Sep 2015) > >> > >> Changed paths: > >> M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > >> > >> Log Message: > >> ----------- > >> Big merge of changes to M3CG_LLVM.m3 from package llvm into package llvm3.6.1 > >> > >> Lots of changes happened to this file in package llvm, while the version > >> in package llvm3.6.1 has been undergoing integration with the greatly > >> altered llvm interfaces in llvm 3.6.1. Merge these into the M3CG_LLVM.m3 > >> found in package llvm3.6.1. Also some random manual review and fixes. > >> > >> Compiles and runs to completion, with superficially believable output, > >> on one small test case involving separate temporaries in and out of > >> a FINALLY procedure. > >> > >> Works with cm3 command, when its executable m3llvm has been shipped. > >> > >> The test compile fails to link, not finding alloca. m3llvm needs to > >> detect calls on alloca and translate internally into llvm alloca > >> instructions, rather than letting them through to be linked in. > >> > >> Changes to be committed: > >> > >> modified: M3CG_LLVM.m3 > >> > >> > >> Compare: https://github.com/modula3/cm3/compare/909637def4c4...379f750aa7e5 > >> _______________________________________________ > >> M3commit mailing list > >> M3commit at elegosoft.com > >> https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit > > > > -- > Rodney Bates > rodney.m.bates at acm.org > _______________________________________________ > M3devel mailing list > M3devel at elegosoft.com > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3devel -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sun Sep 6 21:31:39 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 06 Sep 2015 12:31:39 -0700 Subject: [M3commit] [modula3/cm3] 900ad2: More/better command options for m3llvm: -g, -d. Message-ID: <55ec949b18adf_79743feac2bc92a017074@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 900ad26d46a60426bc9d0012067e3e26cb61aee2 https://github.com/modula3/cm3/commit/900ad26d46a60426bc9d0012067e3e26cb61aee2 Author: Rodney Bates Date: 2015-09-06 (Sun, 06 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Unix.common M m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 M m3-sys/llvm3.6.1/src/Main.m3 Log Message: ----------- More/better command options for m3llvm: -g, -d. The -d was intended to control trace output of m3llvm, for helping debug itself. Add a -g to control emission of debugger info into the code begin translated, and set it as with similar options for other backend modes. Also, fix cm3 subcommand emission for m3llvm and llc. Changes to be committed: modified: m3-sys/cminstall/src/config-no-install/Unix.common modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.i3 modified: m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 modified: m3-sys/llvm3.6.1/src/Main.m3 From rodney.m.bates at acm.org Thu Sep 10 20:06:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 11:06:38 -0700 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Message-ID: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. From rodney.m.bates at acm.org Fri Sep 11 02:41:26 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Thu, 10 Sep 2015 17:41:26 -0700 Subject: [M3commit] [modula3/cm3] f457f7: Fix test p014. Message-ID: <55f2233620fb0_21073fe7717bb2c0310a4@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: f457f72f6e18979ef520048ddaeca324319fc665 https://github.com/modula3/cm3/commit/f457f72f6e18979ef520048ddaeca324319fc665 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix test p014. Local variables declared inside a procedure body can indeed be up_level, as a comment wondered. From jay.krell at cornell.edu Fri Sep 11 07:19:09 2015 From: jay.krell at cornell.edu (Jay K) Date: Fri, 11 Sep 2015 05:19:09 +0000 Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... In-Reply-To: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> References: <55f1c6ae7a229_1bf23fe2399dd2c0502a9@hookshot-fe4-cp1-prd.iad.github.net.mail> Message-ID: This sounds like what I was talking about. :) I don't like how this works, but isn't your fault, and I haven't fixed it either in all these years. I think at the very least, the Target.Init can set the value. Or should return it to its caller. It shouldn't be in the config file, with an ability to get it wrong. - Jay Date: Thu, 10 Sep 2015 11:06:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] c7d4b6: Configure cm3 to unnest nested procedures, for all... Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 https://github.com/modula3/cm3/commit/c7d4b6e380cf1e94402caf113f57dc0fc6bc77e7 Author: Rodney Bates Date: 2015-09-10 (Thu, 10 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Configure cm3 to unnest nested procedures, for all llvm backend modes. Llvm itself requires functions to be unnested, so we want to utilize the front end's ability to do this. It will simplify m3llvm. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From rodney.m.bates at acm.org Sat Sep 12 00:02:15 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Fri, 11 Sep 2015 15:02:15 -0700 Subject: [M3commit] [modula3/cm3] ca298f: Fix one failure in p035. Message-ID: <55f34f6721149_242c3fa7c3a8d2c0722d7@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ca298f83b558046afc0431ed768616ea97bf3119 https://github.com/modula3/cm3/commit/ca298f83b558046afc0431ed768616ea97bf3119 Author: Rodney Bates Date: 2015-09-11 (Fri, 11 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix one failure in p035. Every nested procedure needs a static link, even if there are no up-level referenced variables in its proper static ancestery, in order to be able to create an environment for another call. In any case, we will need this in order for a debugger to work. Also add comments so I can understand how up-level addressing works. p035 now suffers an unrelated failure, later. From rodney.m.bates at acm.org Sat Sep 12 18:09:25 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 12 Sep 2015 09:09:25 -0700 Subject: [M3commit] [modula3/cm3] fd3179: Only one statement on a line, please. Message-ID: <55f44e351a98f_672d3faa41b0b2bc764b8@hookshot-fe4-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 https://github.com/modula3/cm3/commit/fd31799d31faf28ec2a7deb11d9f7dc16dc3d088 Author: Rodney Bates Date: 2015-09-12 (Sat, 12 Sep 2015) Changed paths: M m3-sys/m3tests/src/p0/p035/Main.m3 Log Message: ----------- Only one statement on a line, please. Multiple statements with the same line number makes it all the more difficult to figure out where in the input a problem occurred. From rodney.m.bates at acm.org Sun Sep 13 23:34:38 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 13 Sep 2015 14:34:38 -0700 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Message-ID: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. From jay.krell at cornell.edu Mon Sep 14 07:13:08 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 14 Sep 2015 05:13:08 +0000 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: I assume you mean p238. Yes that is a good test.I kinda think the tests need naming/prioritization but oh well. - Jay Date: Sun, 13 Sep 2015 14:34:38 -0700 From: rodney.m.bates at acm.org To: m3commit at elegosoft.com Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 Author: Rodney Bates Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix second failure in p038 load_static_link was loading the procedure value itself, instead of its static link. p038 now gets further, but assert-fails inside llvm when writing out the binary llvm IR. _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 14 08:10:55 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:10:55 -0700 Subject: [M3commit] [modula3/cm3] 8d22b1: loop over object file extensions Message-ID: <55f664ef5215_11f83fc9b72232b8364@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 https://github.com/modula3/cm3/commit/8d22b15bcd379f3b9c7ce002607a5d20fb6a5ca8 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M scripts/python/pylib.py Log Message: ----------- loop over object file extensions Commit: fc20121c6dc0828428eda5d795b7cdd76c80a582 https://github.com/modula3/cm3/commit/fc20121c6dc0828428eda5d795b7cdd76c80a582 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/readme Log Message: ----------- fix small typos Commit: 5b4c7feade8c420c49613a6da35fe0eff1a01610 https://github.com/modula3/cm3/commit/5b4c7feade8c420c49613a6da35fe0eff1a01610 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/M3CG_LLVM.m3 Log Message: ----------- Some provision for 32bit hosts, if/when I can get LLVM to be 32bit hosted. Commit: 302e39b17f7c7a1722ce6610981b6915230e9ef1 https://github.com/modula3/cm3/commit/302e39b17f7c7a1722ce6610981b6915230e9ef1 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/Darwin.common Log Message: ----------- only overwrite/default M3_BACKEND_MODE if not specified on command line -- and really want to change the default form '3' to 'C' Commit: c40dc306fa687da1cd603311870a1eb3aab2c213 https://github.com/modula3/cm3/commit/c40dc306fa687da1cd603311870a1eb3aab2c213 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Clarify that ALPHA_ excludes ALPHA32 to remove temptation to change it to "ALPHA". Commit: d4d7a8d86805bea6c78d1e829bce357ab4b80f47 https://github.com/modula3/cm3/commit/d4d7a8d86805bea6c78d1e829bce357ab4b80f47 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cminstall/src/config-no-install/ALPHA_LINUX M m3-sys/cminstall/src/config-no-install/ALPHA_OPENBSD M m3-sys/cminstall/src/config-no-install/AMD64_DARWIN M m3-sys/cminstall/src/config-no-install/AMD64_FREEBSD M m3-sys/cminstall/src/config-no-install/AMD64_LINUX M m3-sys/cminstall/src/config-no-install/AMD64_NETBSD M m3-sys/cminstall/src/config-no-install/AMD64_OPENBSD M m3-sys/cminstall/src/config-no-install/ARM_DARWIN M m3-sys/cminstall/src/config-no-install/ARM_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_FREEBSD.common M m3-sys/cminstall/src/config-no-install/I386_LINUX.common M m3-sys/cminstall/src/config-no-install/I386_NETBSD M m3-sys/cminstall/src/config-no-install/I386_OPENBSD M m3-sys/cminstall/src/config-no-install/IA64_LINUX M m3-sys/cminstall/src/config-no-install/Interix.common M m3-sys/cminstall/src/config-no-install/MIPS64EL_OPENBSD M m3-sys/cminstall/src/config-no-install/MIPS64_OPENBSD M m3-sys/cminstall/src/config-no-install/NT.common M m3-sys/cminstall/src/config-no-install/PA32_HPUX M m3-sys/cminstall/src/config-no-install/PA64_HPUX M m3-sys/cminstall/src/config-no-install/PPC32_OPENBSD M m3-sys/cminstall/src/config-no-install/PPC_LINUX M m3-sys/cminstall/src/config-no-install/SPARC32_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_LINUX M m3-sys/cminstall/src/config-no-install/SPARC64_OPENBSD M m3-sys/cminstall/src/config-no-install/Solaris.common M m3-sys/cminstall/src/config-no-install/cm3cfg.common Log Message: ----------- Switch from gcc to g++. Still to look into the other C/C++ compilers. (Visual C++ will also go by extension and there are the -Tp and -TP switches; gcc and clang both also have -x c++. That still leaves a few others, ultimately while I hope to use C++ exception handling for portability and efficiency, I expect setjmp/longjmp to remain an option, having experienced K&R compilers fairly recently.) Commit: 9a1fb325aab9ee445d4278b7e0ae8249df723759 https://github.com/modula3/cm3/commit/9a1fb325aab9ee445d4278b7e0ae8249df723759 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Provide this: jair:m3core jay$ cm3 -DM3_BACKEND_MODE=HELP --- building in AMD64_DARWIN --- ignoring ../src/m3overrides Fatal Error: unrecognized backend mode: HELP available values: IntegratedObject, IntegratedAssembly, ExternalObject, ExternalAssembly, C, IntLlvmObj, IntLlvmAsm, ExtLlvmObj, ExtLlvmAsm, StAloneLlvmObj, StAloneLlvmAsm Where "HELP" is any invalid valid. Commit: eeae8f11d2589f30e31df03a36785ad310fcee9a https://github.com/modula3/cm3/commit/eeae8f11d2589f30e31df03a36785ad310fcee9a Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Better behavior after errors for the files after the errors. Commit: afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 https://github.com/modula3/cm3/commit/afb5d898e7cfa64e8e7b04f761168dc48fdd8c68 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm/src/m3makefile Log Message: ----------- Crudely probe for file/directory existness so this might work for more people. Some other solution is needed longer term -- either bundle the source or require an environment variable, or maybe try pkgconfig or such. Commit: 2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe https://github.com/modula3/cm3/commit/2d34fdf7e67e6d63e1d66c31a3ec2762ce6cc0fe Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- Probe file existance so this has some crude hope of working for others. Really need another mechanism here. Commit: 28cddc037ac286b06e111164f75638f183788508 https://github.com/modula3/cm3/commit/28cddc037ac286b06e111164f75638f183788508 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/m3makefile Log Message: ----------- comment only, that build_standalone is desired here but has problems Compare: https://github.com/modula3/cm3/compare/fffbd2adf139...28cddc037ac2 From jay.krell at cornell.edu Mon Sep 14 08:16:37 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:16:37 -0700 Subject: [M3commit] [modula3/cm3] fade65: restore Rodney's veresions to 3.6.1, I don't know ... Message-ID: <55f66645d034e_25de3f7ef32dd2bc211b3@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: fade65a7757f2f8c0ba24d11791c322b3cae1249 https://github.com/modula3/cm3/commit/fade65a7757f2f8c0ba24d11791c322b3cae1249 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- restore Rodney's veresions to 3.6.1, I don't know how that happened, maybe git is bad at merging From jay.krell at cornell.edu Mon Sep 14 08:32:43 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:32:43 -0700 Subject: [M3commit] [modula3/cm3] e20893: upgrade Jay from 3.5.2 to 3.6.1 likee Rodney Message-ID: <55f66a0be3e60_16de3fd226a7d2c05361c@hookshot-fe3-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e2089338048cfcd3fdc8b22d0945e421ff8f4e72 https://github.com/modula3/cm3/commit/e2089338048cfcd3fdc8b22d0945e421ff8f4e72 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/llvmbindings/src/m3makefile Log Message: ----------- upgrade Jay from 3.5.2 to 3.6.1 likee Rodney From jay.krell at cornell.edu Mon Sep 14 08:44:03 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 13 Sep 2015 23:44:03 -0700 Subject: [M3commit] [modula3/cm3] bb101f: Revert "Better behavior after errors for the files... Message-ID: <55f66cb37885a_77b43f9a5e6ef2c01013c8@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: bb101f0808428eff9bb099808fa42721728302d2 https://github.com/modula3/cm3/commit/bb101f0808428eff9bb099808fa42721728302d2 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 M m3-sys/cm3/src/Utils.m3 Log Message: ----------- Revert "Better behavior after errors for the files after the errors." This reverts commit eeae8f11d2589f30e31df03a36785ad310fcee9a. Revert change eeae8f11d2589f30e31df03a36785ad310fcee9a. It was ok, but it combined two ideas, but only really used one. I'll redo a subset of it. Commit: 12336014578ed488b45e2c4f9351a5f65a0bc878 https://github.com/modula3/cm3/commit/12336014578ed488b45e2c4f9351a5f65a0bc878 Author: jaykrell Date: 2015-09-13 (Sun, 13 Sep 2015) Changed paths: M m3-sys/cm3/src/Builder.m3 Log Message: ----------- Better behavior when there are errors -- errors in one file should not truncate the build pipeline for other files. Compare: https://github.com/modula3/cm3/compare/e2089338048c...12336014578e From rodney_bates at lcwb.coop Mon Sep 14 17:55:03 2015 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 14 Sep 2015 10:55:03 -0500 Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 In-Reply-To: References: <55f5ebee649f4_2caa3f80f67092a07964@hookshot-fe2-cp1-prd.iad.github.net.mail> Message-ID: <55F6EDD7.3050602@lcwb.coop> On 09/14/2015 12:13 AM, Jay K wrote: > I assume you mean p238. Yes that is a good test. Actually, I mean p035, "equality of procedures". I'm prioritizing by the order they get run. Anybody know if there is a way to edit the commit message? > I kinda think the tests need naming/prioritization but oh well. > > - Jay > > > > Date: Sun, 13 Sep 2015 14:34:38 -0700 > From: rodney.m.bates at acm.org > To: m3commit at elegosoft.com > Subject: [M3commit] [modula3/cm3] fffbd2: Fix second failure in p038 > > Branch: refs/heads/master > Home:https://github.com/modula3/cm3 > Commit: fffbd2adf13976207217b47d5ae8adb3b725a231 > https://github.com/modula3/cm3/commit/fffbd2adf13976207217b47d5ae8adb3b725a231 > Author: Rodney Bates > Date: 2015-09-13 (Sun, 13 Sep 2015) > > Changed paths: > M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 > > Log Message: > ----------- > Fix second failure in p038 > > load_static_link was loading the procedure value itself, instead > of its static link. p038 now gets further, but assert-fails > inside llvm when writing out the binary llvm IR. > > > > > _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -- Rodney Bates rodney.m.bates at acm.org From rodney.m.bates at acm.org Mon Sep 14 22:10:03 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Mon, 14 Sep 2015 13:10:03 -0700 Subject: [M3commit] [modula3/cm3] 5c3deb: Merge recent changes to M3CG_LLVM.m3 in package ll... Message-ID: <55f7299bb7ebe_58603fbc1b7452b86205e@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c3deb7c831d56c3949d9158a285a19e7193bc72 https://github.com/modula3/cm3/commit/5c3deb7c831d56c3949d9158a285a19e7193bc72 Author: Rodney Bates Date: 2015-09-14 (Mon, 14 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Merge recent changes to M3CG_LLVM.m3 in package llvm into llvm3.6.1 From rodney.m.bates at acm.org Sat Sep 19 18:11:13 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sat, 19 Sep 2015 09:11:13 -0700 Subject: [M3commit] [modula3/cm3] 5aaf69: Fix p035, p062, p088, p137, and p180. Regress p06... Message-ID: <55fd8921560eb_5ae53fb44399929c240d9@hookshot-fe2-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5aaf69f2c64e7c1870c03109913954445f3e8110 https://github.com/modula3/cm3/commit/5aaf69f2c64e7c1870c03109913954445f3e8110 Author: Rodney Bates Date: 2015-09-19 (Sat, 19 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Fix p035, p062, p088, p137, and p180. Regress p064 and p116b. Changes to handling of up-level addressing, motivated by p035, but affecting the others. p116b developed a new compile failure, and p064 had changed RT output. The p116b problem is very likely the result of a known leftover loose end. I am calling the arrays of pointers used in uplevel addressing "displays". This are not the traditional display, which is an array of pointers to activation records, but rather an array of pointers to individual variables, possibly in multiple activation records. Reverse the order of variables in a display to outside-in. This allows a procedure to have a single display for all its calls on nested procedures. For callees no deeper than the caller, the same display is passed, but only a prefix of the display will be used by the callee. Keep the compile-time info about the display in the caller, rather than the callee. Postpone emitting code to build the display to end_procedure. There can be locals of blocks nested inside the procedure that are flattened into its activation record, but not seen until after calls referencing the display have been compiled. Previously, up-level references to these were missed. The display building code is emitted at end_procedure, but inserted in the entry block, so at runtime, it is executed before any calls. The leftover loose end is in call_direct. There was a preexisting special case intended detect and provide special handling for a try-finally compiler-generated procedure being called with no frontend-supplied static link. This was being spoofed by a programmer-coded procedure. This case is currently disabled, pending a reliable way of detecting its occurrence. From jay.krell at cornell.edu Sun Sep 20 18:43:24 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 09:43:24 -0700 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... Message-ID: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: ced183d086a829001f44ea5f8f791df2e3952d4f https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Aligned_procedures always FALSE -- reduce target variation From jay.krell at cornell.edu Sun Sep 20 19:26:44 2015 From: jay.krell at cornell.edu (jaykrell) Date: Sun, 20 Sep 2015 10:26:44 -0700 Subject: [M3commit] [modula3/cm3] 1b7dc3: Allow_packed_byte_aligned the same for all targets... Message-ID: <55feec542db10_c3d3febeb29d29c333b4@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 https://github.com/modula3/cm3/commit/1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4 Author: jaykrell Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Allow_packed_byte_aligned the same for all targets. Penalizes amd64/x86 slightly in rare paths. No change to any other target. From rodney.m.bates at acm.org Sun Sep 20 22:27:07 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Sun, 20 Sep 2015 13:27:07 -0700 Subject: [M3commit] [modula3/cm3] 49c70b: Better way of detecting try-finally call with no S... Message-ID: <55ff169b6248b_5b203f96cafe52b879033@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 49c70b4b428997e9864657c6afa2c4a3d150de9e https://github.com/modula3/cm3/commit/49c70b4b428997e9864657c6afa2c4a3d150de9e Author: Rodney Bates Date: 2015-09-20 (Sun, 20 Sep 2015) Changed paths: M m3-sys/llvm3.6.1/src/M3CG_LLVM.m3 Log Message: ----------- Better way of detecting try-finally call with no SL. From jay.krell at cornell.edu Mon Sep 21 04:21:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:21:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu> Message-ID: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 04:57:21 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 02:57:21 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , Message-ID: I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 05:05:03 2015 From: jay.krell at cornell.edu (Jay K) Date: Mon, 21 Sep 2015 03:05:03 +0000 Subject: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... In-Reply-To: References: <55fee22c45717_51843fd1f06ff2a0744f5@hookshot-fe6-cp1-prd.iad.github.net.mail>, , <94E25C14-72C9-4347-B455-706CE243E220@purdue.edu>, , , , , Message-ID: ps: in the "read 4 byte proposal", there'd still be an entire integer there, we just wouldn't bother checking the entire thing. That way, we'd only require 4 alignment, which is how instructions/functions are always aligned on everything but arm32 and x86 and amd64. This seems fairly elegant, but maybe a new target would break it.i.e. it is clear that the ideal design has a fixed size instruction, of probably 4 bytes. Almost every architecture looks like that -- mips, alpha, powerpc, sparc, arm64, I think happier.But there is the unfortunate x86 design with anything from 1 to 15 byte instruction, and the unfortunate arm32 design with 2 or 4 byte instructions, 2 byte instructions being indicated by having an odd address. - Jay From: jay.krell at cornell.edu To: hosking at purdue.edu Date: Mon, 21 Sep 2015 02:57:21 +0000 CC: m3commit at elegosoft.com Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... I didn't change the alignment of anything. At a level we do not control, the alignment on NT/amd64 I believe is 4 when optimizing for space, 16 when optimizing for speed. Any alignment works, but this is what you will see in practice.I don't believe you will see 8-alignment, except typically half of the size-aligned functions that are 4-aligned.Probably all amd64 targets are like this but I'd have to check. But we don't control this and I didn't change it. The alignment on NT of heap allocation is two pointers.The alignment of closures in Modula-3 is presumably at least pointer. What this does is affect the alignment check of a closure.On x86/amd64, we can safely read 4 or 8 bytes from any pointer, and compare for -1.No alignment check is needed.On other architectures, the reads need to be aligned. What the code does, optionally, is check the alignment, and if it isn't integer-aligned,it is assumed to be code, not a closure, and the check for -1 is skipped. What the change does is add the alignment check for all architectures.Previously it was only present for 64 bit architectures, except amd64. Another proposal is to always clear the lower 2 bits and check for a 4 byte -1.The conditional branch would be gone.The clearing of the lower 2 bits is only to accommodate ARM32.On everything but ARM32, either alignment doesn't matter (x86/amd64) or all instructions/functionsare at least 4-aligned. Doing an 8-byte check is redundant, and risks an alignment fault. - Jay Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... From: hosking at purdue.edu Date: Mon, 21 Sep 2015 12:48:09 +1000 CC: m3commit at elegosoft.com To: jay.krell at cornell.edu It's my understanding that 8-byte procedure alignment performs better on x86-64. Sent from my iPhone On Sep 21, 2015, at 12:21 PM, Jay K wrote: I don't think so. Calls through function pointers will incur like two extra instructions, an and and a conditional branch. All 32bit targets in fact will pay that cost, and only arm32 needs it. I have another propose a week or so go, roughly, for all targets: mask off lower two bits only read 4 bytes That would avoid the conditional branch.It should work for all targets also.The masking is only needed for ARM32.All other targets have either 4-byte aligned instructions, or don't care about alignment faults. - Jay > Subject: Re: [M3commit] [modula3/cm3] ced183: Aligned_procedures always FALSE -- reduce target v... > From: hosking at purdue.edu > Date: Mon, 21 Sep 2015 10:47:05 +1000 > CC: m3commit at elegosoft.com > To: jay.krell at cornell.edu > > This will break some targets I believe. X86/x86-64 no? > > Sent from my iPhone > > > On Sep 21, 2015, at 2:43 AM, jaykrell wrote: > > > > Branch: refs/heads/master > > Home: https://github.com/modula3/cm3 > > Commit: ced183d086a829001f44ea5f8f791df2e3952d4f > > https://github.com/modula3/cm3/commit/ced183d086a829001f44ea5f8f791df2e3952d4f > > Author: jaykrell > > Date: 2015-09-20 (Sun, 20 Sep 2015) > > > > Changed paths: > > M m3-sys/m3middle/src/Target.m3 > > > > Log Message: > > ----------- > > Aligned_procedures always FALSE -- reduce target variation > > > > > > _______________________________________________ > > M3commit mailing list > > M3commit at elegosoft.com > > https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit _______________________________________________ M3commit mailing list M3commit at elegosoft.com https://mail.elegosoft.com/cgi-bin/mailman/listinfo/m3commit -------------- next part -------------- An HTML attachment was scrubbed... URL: From jay.krell at cornell.edu Mon Sep 21 18:40:19 2015 From: jay.krell at cornell.edu (jaykrell) Date: Mon, 21 Sep 2015 09:40:19 -0700 Subject: [M3commit] [modula3/cm3] 5c66fe: Revert "Allow_packed_byte_aligned the same for all... Message-ID: <560032f3cbc1d_50bb3f92b42a92bc6095b@hookshot-fe1-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: 5c66fe4b3a5678eb1c9be176cd1639de991c328c https://github.com/modula3/cm3/commit/5c66fe4b3a5678eb1c9be176cd1639de991c328c Author: jaykrell Date: 2015-09-21 (Mon, 21 Sep 2015) Changed paths: M m3-sys/m3middle/src/Target.m3 Log Message: ----------- Revert "Allow_packed_byte_aligned the same for all targets." This reverts commit 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. Revert 1b7dc39a2d2efbab8fdf5395ef3a99158c5d49b4. x86/amd64 packed types can have arbitrary alignment. Note that the use-case of Carbon is lacking ppc support. From rodney.m.bates at acm.org Tue Sep 29 23:37:22 2015 From: rodney.m.bates at acm.org (Rodney Bates) Date: Tue, 29 Sep 2015 14:37:22 -0700 Subject: [M3commit] [modula3/cm3] e4fc22: Rename indistinguishable identifier "l" (letter el... Message-ID: <560b0492c58f3_32653fa293c8f29c1659fc@hookshot-fe5-cp1-prd.iad.github.net.mail> Branch: refs/heads/master Home: https://github.com/modula3/cm3 Commit: e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed https://github.com/modula3/cm3/commit/e4fc22ea83aba4c90b1c8caa35a1183da1a9d1ed Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-sys/m3front/src/stmts/TryFinStmt.m3 Log Message: ----------- Rename indistinguishable identifier "l" (letter ell). In the font of my editor and terminal windows, "l", (letter ell) and "1" (digit one) are completely indistinguishable. Even when magnified by xmag, one font is still totally indistinguishable and the other just barely, with extremely close examination. Since there are occurrences of "l+1", it's pretty hard to read. So rename variable ell to "lab", systematically. Commit: 537ed0f8035be557d5775f8603ca1e62039143dc https://github.com/modula3/cm3/commit/537ed0f8035be557d5775f8603ca1e62039143dc Author: Rodney Bates Date: 2015-09-29 (Tue, 29 Sep 2015) Changed paths: M m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3 Log Message: ----------- Correct a comment typo. Compare: https://github.com/modula3/cm3/compare/5c66fe4b3a56...537ed0f8035b