From jkrell at elego.de Wed Sep 1 01:35:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:35:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831233535.B37C824740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:35:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: disable more new typing code at least for now; prototype (commented out) making all records addressable so they won't be passed in registers (given how we access the fields..), but before that I think we need to give types to temporaries From jkrell at elego.de Wed Sep 1 01:49:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:49:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831235002.15BE324740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:49:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only records/objects addressable, not all the other private stuff passed to m3gdb, suplib still not working From jkrell at elego.de Wed Sep 1 09:05:24 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 9:05:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901070524.345272474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 09:05:24 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 RegExpParse.m3 m3makefile Removed files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpTok.i3 RegExpTok.m3 Log message: reduce test case: a record with just integers is enough, we don't need opaque types From jkrell at elego.de Wed Sep 1 11:35:58 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:35:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093558.470F02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:35:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_boolstr => boolstr m3cg_typestr => typestr From jkrell at elego.de Wed Sep 1 11:36:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:36:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093654.753C02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:36:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove TREE_ADDRESSABLE prototype, working fix coming shortly From jkrell at elego.de Wed Sep 1 11:48:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:48:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094829.CA5AC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:48:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: just tracing changes From jkrell at elego.de Wed Sep 1 11:49:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:49:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094952.410362474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:49:52 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: try again: better type information -- this time remember to call layout_type, so that when passing a struct by value, the entire thing is passed! From jkrell at elego.de Wed Sep 1 11:53:17 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:53:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901095317.9AAEC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:53:17 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: arg, don't yet assert that frontend and backend agree on record sizes -- they don't! From jkrell at elego.de Wed Sep 1 13:53:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 13:53:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901115347.A17642474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 13:53:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Still trying to get well-typed trees, and record sizes that agree between backend and frontend. They don't agree currently for multiple reasons, so remove the types again. They don't agree: - undefined types are used - types are used before defined (e.g. RT0.TypeDefn is seen in RT0.Typecell before it defined, compiling RTType.m3) - backend seems to be giving an entire word where just a byte is wanted (e.g. RT0.Typecell.traced, kind, link_state, dataAlignment From jkrell at elego.de Wed Sep 1 14:09:09 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 14:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901120909.337B62474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 14:09:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Two of the missing types were boolean and char, because I wasn't sure how to handle them. For now set them to t_word_8. Though boolean is actually [0..1] and char is actually [0..255] I believe. There are still problems, types used before defined. I think there are circularities and this is unavoidable though. We may need to make a second pass over the data in m3cc. From jkrell at elego.de Wed Sep 1 15:14:07 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:14:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901131407.C8ECE2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:14:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: cleaner, largely undo previous, "debug" is m3gdb for normal types that lead to normal gdb, use other paths in particular, the one_field/one_gap stuff shows it's not difficult, and we can reuse them not change in result: backend and frontend still disagree, so this code is not yet enabled; I have to find out why layout_type gets such different results, even when all the constituent types are known and I have to see if we can get an order that puts defines before uses, or if this all needs to be multi-pass.. change many "int" to "long", so that 64bit hosts can deal with types larger than 2GB We already read long or unsigned long from the m3cg binary file. From jkrell at elego.de Wed Sep 1 15:21:27 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:21:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132127.E52E22474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:21:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int M3_TYPES = 0; at the top and then if that From jkrell at elego.de Wed Sep 1 15:25:26 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:25:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132526.24C832474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:25:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT From jkrell at elego.de Wed Sep 1 15:26:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:26:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132643.18F0B2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:26:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT = 0 or 1 or 2 From jkrell at elego.de Wed Sep 1 18:24:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 18:24:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901162420.772232474027@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 18:24:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: progress; this version should: work pass records by value in registers per the ABI have good type information for records in stock gdb probably work on SPARC64_SOLARIS verifies that the frontend and backend agree on record size, though not necessarily the fields therein (but it is likely) as a bonus, the field names in stock gdb are no longer mangled debug information fed to m3gdb should be unchanged, as the code to feed it private data vs. code to construct types for the trees is separate still to do: fix and test debugging of: packed types (I just make these a record with size and no fields, and indeed passing them by value on SPARC64_SOLARIS isn't likely to work, needs more test cases) objects (written but not tested, and I think m3front isn't passing the size information) enums ensure all fields are typed -- a few are missing (some of this was my fault earlier missing builtins like MUTEX) cleanup -- should be able to share code between one_gap/m3_gap, one_field/m3_field, etc. From jkrell at elego.de Fri Sep 3 12:17:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903101718.85430CC37A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:17:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: This is odd, but minor. I386_LINUX says: parse.c: In function 'scan_type': parse.c:1686:5: warning: unknown conversion type character 'X' in format parse.c:1686:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1686:5: warning: too many arguments for format parse.c: In function 'scan_sign': parse.c:1721:5: warning: unknown conversion type character 'X' in format parse.c:1721:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1721:5: warning: too many arguments for format but it looks right. Put it back to release -- %lX => %lx. Leave %d alone. Something is off here? From jkrell at elego.de Fri Sep 3 12:55:43 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:55:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903105543.C8262247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:55:43 Modified files: cm3/m3-sys/m3cc/src/: m3makefile clean_marker.txt Log message: untested: move AMD64_FREEBSD to gcc 4.5.1 backend From jkrell at elego.de Fri Sep 3 13:11:21 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:11:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111121.1DE19CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:11:21 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: call stat first, if it fails call lstat, not great, really (stat and I suspect lstat are probably particularly expensive on Cygwin, as they probably open the file) From jkrell at elego.de Fri Sep 3 13:12:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:12:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111255.866BF247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:12:55 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: use AND instead of nested IF From jkrell at elego.de Wed Sep 8 12:30:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:30:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103053.2891C247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:30:52 Modified files: cm3/doc/notes/: todo.txt Log message: add a few, mainly to remind of priority: fix O1/O2/O3 e.g. on I386_LINUX, setup AMD64_OPENBSD, AMD64_NETBSD Hudson (actually AMD64_OPENBSD might still need porting work) From jkrell at elego.de Wed Sep 8 12:31:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:31:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103136.3D2A0247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:31:36 Added files: cm3/doc/notes/: object-model.txt Log message: to be filled in From jkrell at elego.de Wed Sep 8 12:36:56 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:36:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103656.4C627247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:36:56 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: adjust comment: the more specific it is, the more it tends to be or become wrong, so be less specific From jkrell at elego.de Thu Sep 9 12:24:38 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102438.43ACBCC12C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:24:38 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpParse.m3 Log message: slightly reduce From jkrell at elego.de Thu Sep 9 12:25:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:25:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102536.2967D247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:25:36 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: RTLink.i3 RTLink.m3 Log message: add drastically reduced form of RTLinker.m3 that demonstrates the current miscompile on I386_LINUX, I386_DARWIN, probably others. The loop in RTLinker.FixImports is removed under optimization! From jkrell at elego.de Thu Sep 9 12:45:46 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:45:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909104546.723ADCC12B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:45:46 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira-color.c Log message: ira-color.c: In function ???ira_reassign_conflict_allocnos???: ira-color.c: warning: ???conflict_a??? may be used uninitialized in this function From jkrell at elego.de Thu Sep 9 13:48:06 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 13:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909114806.80011247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 13:48:06 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Don't let flag_split_wide_types make us avoid using bitfields. This seems to fix the optimized I386 problems. More testing to do. From jkrell at elego.de Thu Sep 9 21:48:41 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 21:48:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909194841.63568247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 21:48:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: flag_tree_ccp of m3core breaks cm3 on I386_DARWIN hopefully this also fixes I386_LINUX more investigation to do clearly, try to find which code is altered, how, and how to form our trees so optimizations all work (I'm guessing that complete type information would work, but that partial type information is a problem) From jkrell at elego.de Fri Sep 10 08:26:48 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:26:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910062648.F1D9F2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:26:48 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int to long From jkrell at elego.de Fri Sep 10 08:52:50 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:52:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910065250.E92D12474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:52:50 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: reformat a little From jkrell at elego.de Fri Sep 10 09:49:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:49:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910074958.BFA332474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:49:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some int to long much long to HOST_WIDE_INT_PRINT_DEC this should make little difference but might improve some cross situations -- e.g. defining arrays/structs larger than 2GB From jkrell at elego.de Fri Sep 10 09:51:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:51:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910075158.4ACFA2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:51:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove some but not all #if 0'ed code From jkrell at elego.de Fri Sep 10 10:47:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 10:47:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910084758.E89C02474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 10:47:58 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: FPrint.i3 FPrint.m3 Log message: add reduced form of Fingerprint.m3 that hits assertion failure in backend on I386_DARWIN if we allow inlining From jkrell at elego.de Fri Sep 10 14:41:26 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:41:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910124126.B4BC32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:41:26 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reload1.c Log message: fix from gcc-4.5 branch for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45312 From jkrell at elego.de Fri Sep 10 14:51:34 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:51:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125134.90469CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:51:34 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-nested.c Log message: partial merge from gcc-4_5-branch From jkrell at elego.de Fri Sep 10 14:54:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:54:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125457.6BABFCC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:54:57 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5 branch fix for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40386 From jkrell at elego.de Fri Sep 10 14:56:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:56:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125656.070832474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:56:55 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44554 From jkrell at elego.de Fri Sep 10 15:04:04 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910130404.BA5C72474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:04:04 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/config/sparc/: sparc.c Log message: partial merge from gcc-4_5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44942 From jkrell at elego.de Fri Sep 10 15:12:35 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:12:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131235.DC2222474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:12:35 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: dwarf2out.c dwarf2out.h cm3/m3-sys/m3cc/gcc-4.5/gcc/config/i386/: i386.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45484 From jkrell at elego.de Fri Sep 10 15:16:28 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:16:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131628.93AAD2474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:16:28 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: function.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44632 From jkrell at elego.de Fri Sep 10 15:21:16 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132116.8DFA32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:21:16 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: optabs.c Log message: partial merge from 4.5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45292 From jkrell at elego.de Fri Sep 10 15:26:10 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:26:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132610.288C42474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:26:10 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reginfo.c Log message: partial merge from gcc-4_5-branchh, fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45296, no matter From jkrell at elego.de Sat Sep 11 00:01:53 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 0:01:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910220155.E6B3B247420A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 00:01:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca instead of xmalloc remove most strlen calls From jkrell at elego.de Sat Sep 11 10:11:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 10:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911081128.32E60247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 10:11:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: oops From jay.krell at cornell.edu Sat Sep 11 10:32:48 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:32:48 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911081128.32E60247403C@birch.elegosoft.com> References: <20100911081128.32E60247403C@birch.elegosoft.com> Message-ID: Thanks. I should probably put these on Facebook. ok? ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 10:11:27 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 10:11:27 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > oops > From jay.krell at cornell.edu Sat Sep 11 10:35:10 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:35:10 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100911081128.32E60247403C@birch.elegosoft.com>, Message-ID: > Thanks. I should probably put these on Facebook. ok? Arg, I click one message but a different one comes up. Sorry. From jkrell at elego.de Sat Sep 11 11:14:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 11:14:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911091441.02882247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 11:14:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: keep each "instruction" on one line when tracing This touches many lines, all tracing related. The newline is removed from many places and then put at the start of the instruction instead of the end xstrdup a *little* bit since the alloca change source line and imported units initialize some locals some "int" to long, but capacity limited to 100 anyway for now should change to VEC though add a little tracing (exit_proc) From jay.krell at cornell.edu Sat Sep 11 11:16:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 09:16:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911091441.02882247403C@birch.elegosoft.com> References: <20100911091441.02882247403C@birch.elegosoft.com> Message-ID: This also moves some of the tracing under "-y -y" instead of just -y (like -v -v in other tools, verbose verbose). ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 11:14:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 11:14:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > keep each "instruction" on one line when tracing > This touches many lines, all tracing related. > The newline is removed from many places and then > put at the start of the instruction instead of the end > > xstrdup a *little* bit since the alloca change > source line and imported units > > initialize some locals > > some "int" to long, but capacity limited to 100 anyway for now > should change to VEC though > > add a little tracing (exit_proc) > From jkrell at elego.de Sat Sep 11 13:06:55 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:06:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110655.34A4E247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:06:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: fix some garbage collector problems including roll own growable vector instead of using VEC This does not necessarily fix the two problems reported, as I haven't seen them (haven't tried yet). From jkrell at elego.de Sat Sep 11 13:07:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:07:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110740.AC9AE247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:07:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Remove the use of bitfields in load/store. configure -enable-checking flags them as a problem. From jkrell at elego.de Sat Sep 11 15:18:31 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 15:18:31 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911131831.32202247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 15:18:31 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: hack more errors to warnings, until such time as they are all fixed From jay.krell at cornell.edu Sun Sep 12 03:43:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sun, 12 Sep 2010 01:43:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911110740.AC9AE247403C@birch.elegosoft.com> References: <20100911110740.AC9AE247403C@birch.elegosoft.com> Message-ID: I'm aware that this broke everything. I'm testing stuff more now.. ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 13:07:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 13:07:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Remove the use of bitfields in load/store. > configure -enable-checking flags them as a problem. > From jkrell at elego.de Sun Sep 12 08:24:46 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 8:24:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912062446.86A0524740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 08:24:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: work in progress: some tree repair per configure -enable-checking RETURN_EXPR in particular and some types [disabled pending more testing] restore bitfield use we crash without it even though it triggers -enable-checking errors to be investigated.. tracing: add some newlines for multi-line things like records/proctypes/procedures probably should indent instead tweak garbage collector interaction and provide 3 ways to implement the type table: fixed size, growable, VEC These changes fixing some of the breakage from inlining, but not enough to enable it. We no longer get backend assertion failures, and inlining seemed to work in m3core+libm3+sysutils, but a full upgrade still produced a crashing cm3. probably the problem was either RETURN_EXPR or the garbage collection some debugging aids: m3_break_lineno, m3_breakpoint restore old type-less m3gdb stuff now that I changed the proper typed tree stuff to use different code From jkrell at elego.de Sun Sep 12 10:27:43 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:27:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082743.6F3BF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:27:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove whitespace from ends of lines From jkrell at elego.de Sun Sep 12 10:29:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:29:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082924.C47DF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:29:24 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Reformat, particularly with regard to braces. Open braces go on their own line. Braces can be omited for single statement blocks. From jkrell at elego.de Sun Sep 12 12:23:37 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 12:23:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912102337.B876CCC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 12:23:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Rewrite m3cg_fill_hex_value so that I understand it more easily. Hopefully I understood it correctly in the first place. Also make the buffer overflow case fatal instead of silently truncating. (Granted, this is for debugging information only.) From jkrell at elego.de Sun Sep 12 13:44:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 13:44:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912114430.4797D24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 13:44:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add indentation to tracing The result is quite nice. The code is a little gnarly how to decides to insert newlines but the result is good. Because sometimes outdent is because the operation is marked as such, e.g. call_direct or end_procedure and sometimes it is by getting the tail operations like params or fields (notice that params are counted, locals are not, and some locals follow params, e.g. "_result" so the formating is a bit off) probably the multiplier shouldn't be sprinkled around either and the space string construction could be more general and efficient, i.e. grow it as needed instead of hardcoded size e.g. (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... when what you want is: (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... ... Rewrite fmt_uid, for brevity and to avoid signed math. (table lookup instead of if ladder) (bikeshed perhaps) a little cleanup/cosmetic: memcpy instead of strcpy a constant (zzz) remove comparisons to zero in boolean context remove some braces remove spaces at ends of lines (thought I already had) forgot to mention earlier: start, barely, consolidating the trace options From jkrell at elego.de Sun Sep 12 15:08:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912130808.0AC912474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:08:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: work in progress but far along and working well: have the macros the tracing instead of each function as part of this: a => align s => size n, etc. => name quoted_string => string double spaces => single space historically this was indent at start of line, but now it is within the line the previous tricky version was still outputting too many newlines, so simplify and reduce, but not ideal? one nagging point is that the mangled identifiers can't easily be printed by the macros so in a few cases I have deliberately left in separate printing this work isn't done because I generally review the manual trace and the automatic one and make sure the automatic is adequate, I haven't done that for each operand From jkrell at elego.de Sun Sep 12 15:11:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:11:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912131130.6BA492474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:11:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove manual tracing of object and method as the macros do good enough job (almost identical, not sub-standard or anything) From jkrell at elego.de Sun Sep 12 21:23:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 21:23:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912192310.9274A2474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 21:23:10 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some more tracing; rename m => offset n => count remove more manual tracing indent enums add missing outdent fix trees with regard to RETURN_EXPR based on configure -enable-checking feedback notice that I'm ignoring other -enable-checking feedback, if I handle it all, there are problems; eventually we'd like it to work but it isn't easy allow inlining!! switch type table to fixed size is this needed?? It is quite lame. will try again without From jkrell at elego.de Mon Sep 13 00:01:39 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:01:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912220140.BE628CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:01:39 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: back to a growable table (VEC) introduce #defines for the builtin uids, put them in an array, loop over that for initialization, use a switch to optimize common ones (only two but could be extended) From jkrell at elego.de Mon Sep 13 00:28:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:28:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912222846.301F82474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:28:45 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix C++ warnings from gcc 4.5 fix undefined warnings from gcc 4.5 fix simple recent typo that triggered warning from gcc 4.5 (the real reason I was going to try gcc 4.5 was for its #pragma diagnostic feature, so I could say T foo = { 0 } but I gave up on that, so unfortunate the gcc warning there and the historical lack of a way to supress it, it greatly decreases what you can do with portable warning-free C) From jkrell at elego.de Mon Sep 13 01:43:05 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 1:43:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912234305.B05022474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 01:43:05 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c tree-cfg.c Log message: configure -enable-checking hacking turn some checks unconditionally on turn some reports off Long term no reports should be off, and what we enable when/how needs more thought. From jkrell at elego.de Mon Sep 13 02:17:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001731.737BE247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:30 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From jkrell at elego.de Mon Sep 13 02:17:54 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001754.769C5247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:54 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From rcoleburn at elego.de Mon Sep 13 04:22:51 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:22:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022251.51FD124741F4@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:22:51 Modified files: cm3/scripts/install/windows/: cm3CommandShell.CMD Log message: Make Visual Studio 2010 Express the default. Adjust to deal with Vista and Windows7 OS identification. From rcoleburn at elego.de Mon Sep 13 04:29:08 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:29:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022909.0BAB52474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From rcoleburn at elego.de Mon Sep 13 04:33:32 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:33:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913023332.99D5F2474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:33:32 Modified files: cm3/scripts/dev/windows/: do-cm3.cmd Log message: add Windows7 OS detection From rcolebur at SCIRES.COM Mon Sep 13 04:45:57 2010 From: rcolebur at SCIRES.COM (Coleburn, Randy) Date: Sun, 12 Sep 2010 22:45:57 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913022909.0BAB52474033@birch.elegosoft.com> References: <20100913022909.0BAB52474033@birch.elegosoft.com> Message-ID: Sorry, the dependency should have read "...being present in C:\cm3\bin" --Randy -----Original Message----- From: Randy Coleburn [mailto:rcoleburn at elego.de] Sent: Monday, September 13, 2010 12:29 AM To: m3commit at elegosoft.com Subject: [M3commit] CVS Update: cm3 CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From jkrell at elego.de Mon Sep 13 06:57:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 6:57:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913045727.C50C32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 06:57:27 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: untested: split up cc and ld parameters to avoid warnings from cc about ld parameters, that show up as a diff running the tests From jkrell at elego.de Mon Sep 13 07:06:35 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:06:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913050635.9CEE42474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:06:35 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: use correct comment character From jkrell at elego.de Mon Sep 13 07:15:03 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:15:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051503.E02322474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:15:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: sel-sched.c Log message: sel-sched.c:2495:8: warning: enum conversion in initialization is invalid in C++ From jkrell at elego.de Mon Sep 13 07:16:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:16:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051651.C5AA92474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:16:51 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: restore original From jkrell at elego.de Mon Sep 13 07:22:15 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:22:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052215.8CF0B2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:22:15 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c Log message: restore original, mostly From jkrell at elego.de Mon Sep 13 07:23:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:23:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052307.5EC4C2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:23:07 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: restore original From jkrell at elego.de Mon Sep 13 09:29:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 9:29:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913072951.54CA32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 09:29:51 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: mark all non-bitfield fields as addressable This was part of a not yet very successful attempt at dealing with configure -enable-checking, and its flagging of our heavy use of bitfield refs. Hopefully we get something that isn't as bad as volatile. Hopefully we can remove this addressability actually, though I'll probably add more first (objects, arrays, etc.) Lots of cosmetic/cleanup. o => offset n => name len, n_len => name_length val => value p => proc l => label a, b, c, aren't terrible identifers, but l is particularly onerous due to resembles to 1 t => type more to do here some functions have v and val, can't both be value tree *f => out_f, and use local f to avoid repeated derefs tree *v => out_v consolidate all tracing options There is just one variable now, option_trace_all, and all the options increment it. Almost all of the tracing is at level 1, a little is at 2. call one_gap/m3_gap unconditionally and have it do the check some missing spaces on function calls (really I'd just as soon remove them all, but they are fairly consistently present, so I'm following that style) remove the list of optimizations to possibly disable if need be, regain them from where they came tweak the options a little less; ongoing experimentation to reduce them, but some of them require a lot of debugging and fixing work in progress to synthesize field accesses on loads/stores From jay.krell at cornell.edu Mon Sep 13 09:40:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 07:40:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: Darn it, it turns out, I didn't run that version, but hopefully something close to it. Because building in m3cc always succeeds, because of the pipeline vs. status thing. I'll have to do something about this. I really don't want to lose the log though. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 09:29:51 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > From jkrell at elego.de Mon Sep 13 10:15:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081526.B80A1247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:26 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Disable the logging. It hurts too much. So lame. From jkrell at elego.de Mon Sep 13 10:15:53 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081553.32D41247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:53 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: add commented out -enable-checking without =all, as a 'suggestin' From jkrell at elego.de Mon Sep 13 10:17:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:17:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081746.02D10247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:17:45 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Stop using -static on OpenBSD. Seems pretty lame either way. Perhaps they have compat libraries, just not installed by default?? Perhaps -static was the better tradeoff? Perhaps nobody used Modula-3 on OpenBSD? Hopefully we'll have a distribution format that is slightly or very sourcey, that will address this, though that is also lame. From jkrell at elego.de Mon Sep 13 10:28:18 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:28:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913082818.5A454247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:28:18 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: I believe configure/autoconf does an adequate job of figuring out cc and cflags, so remove nearly all that mechanism here. CC and CFLAGS will still be honored. There is some supposition that you don't have a need to set CC one way for m3cc and another way for e.g. m3core and the m3 config files. Since m3core/config files don't honor CC, that is reasonable. We may or may not have a very pressing need to restore this, so that we can remove -g on SPARC32_LINUX to save diskspace. I'd like to just replace that machine with one with more space. The one part that is left is that for Solaris we are willing to add /usr/sfw/bin or /opt/csw/gcc4/bin to $PATH. We should probably put them at the end, or only do so if cc is not available (gcc is buildable with cc). From jkrell at elego.de Mon Sep 13 10:30:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:30:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083026.1EC9F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:30:26 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove the CC and CFLAGS stuff here too From jkrell at elego.de Mon Sep 13 10:32:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:32:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083213.DF613247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:32:13 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: cleanup as-yet unused stuff From jkrell at elego.de Mon Sep 13 10:39:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:39:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083927.F2673247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:39:27 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove "quick" option don't specific host/target for native builds That was an experiment of mine, that failed largely for m3cc. This is all quite unfortunate though..probing for build system, on the assumption that the eventual host will match, and it being too difficult to do otherwise, to give os/version and have it encoded somewhere that that means, or to build highly portable executables that probe at runtime (e.g. Win32 LoadLibrary/GetProcAddress) From jkrell at elego.de Mon Sep 13 10:42:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:42:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084230.64D54247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:42:30 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: run configure only if Makefile doesn't exist, kind of like m3cc does (the cross story is less refined here, should probably just remove it? From jkrell at elego.de Mon Sep 13 10:45:17 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:45:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084517.67C33247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:45:17 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: update m3gdb_Run based on current m3gdb_Run From jkrell at elego.de Mon Sep 13 10:53:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:53:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913085345.32560247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:53:45 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile cm3/m3-sys/m3cc/src/: gnucc.common Log message: Drop notion of cross building m3gdb. It is never done. From jay.krell at cornell.edu Mon Sep 13 10:50:51 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 08:50:51 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913084517.67C33247401A@birch.elegosoft.com> References: <20100913084517.67C33247401A@birch.elegosoft.com> Message-ID: (er, based on current m3cc_Run) ---------------------------------------- > Date: Mon, 13 Sep 2010 10:45:17 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 10:45:17 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > > Log message: > update m3gdb_Run based on current m3gdb_Run > From jkrell at elego.de Mon Sep 13 11:12:41 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:12:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091241.2DD2F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:12:41 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: Drop notion of build != host. Nobody around here does that. I.e. not building "canadian" or cross building a native compiler, or "cross back". Just either native (build=host=target), or build=host and host!=target. That's all I do and I expect nobody else has done other for a long time and nobody ever will. But maybe.n From jkrell at elego.de Mon Sep 13 11:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091436.4F90F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:14:36 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: Replace bunch of comparisons with one table lookup. From jkrell at elego.de Mon Sep 13 11:15:55 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:15:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091555.6C4D0247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:15:55 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: remove cross gdb stuff From jkrell at elego.de Mon Sep 13 11:26:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:26:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913092607.23CB2247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:26:07 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake-old Log message: oops: fix a typos, and cleanup more From jkrell at elego.de Mon Sep 13 11:38:42 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:38:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913093842.E5332247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:38:42 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix typos so that it builds now replace parallel set of FOO & UNUSED_FOO with just FOO that produces no warning whether or not the data is used I like that. replace gcc specific attribute_unused syntax with something that likely portably fools all compilers and should be cheap enough Maybe this one is dubious. replace "cc" with "calling_convention" "n" => "name" but note, I forgot, there's a feature of my new tracing stuff that doesn't print names if they are one character, to consider using! count_t => count_type mem_t => mem_type (should be memory_type) remove more manual tracing remove more futzing with optimizations: flag_strict_aliasing (dangerous?) flag_strict_overflow (dangerous?) flag_reorder_functions (looks safe) still more to do here, as stuff is found or made to work From jkrell at elego.de Mon Sep 13 11:58:19 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:58:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095819.40263247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:58:19 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "v" => "var" redisable flag_strict_aliasing and flag_strict_overflow pending double checking From jkrell at elego.de Mon Sep 13 11:59:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:59:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095926.2500A247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:59:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "o" => "offset" From jkrell at elego.de Mon Sep 13 14:04:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:04:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913120413.8FC962474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:04:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: separate get_int into get_int and trace_int This way: - no more passing of 0 to suppress trace (somewhat reversion of earlier changes) - macros that multiply can trace the multiplied value That is the real point, it seems more correct this way, though the serialized value is what was traced and wasn't entirely illegitimate. - get_int less changed vs. historical version, if that matters eliminate temporaries from min and max (but not check_eq) combine min and max implementations into minmax eliminate more manual tracing (I only eliminate them after looking at the new auto+manual version, make sure auto has parity) eliminate several cases of multiplication by BITS_PER_UNIT almost immediately followed by division by BITS_PER_UNIT It seems kind of confusing either way. I guess "BYTEOFFSET" is an indication that a number of bytes is serialized, and the macro would then convert to the usual bit offset, but then a bunch of code really wants byte offsets anyway. And there I was starting to think that bitoffsets were a much better currency. And yes, I know that division and multiplication by constant power of 2 (eh, really any 32 bit constant, these days) is super duper fast) I certainly be comfortable passing bit offsets here in the first place, and then doing just the divide as needed. From jkrell at elego.de Mon Sep 13 14:48:02 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:48:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913124802.F24092474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:48:02 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: eliminate more manual tracing capitalize hex, yucky code trace_int => m3_trace_int more consistently skip single char names From rodney_bates at lcwb.coop Mon Sep 13 23:09:51 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:09:51 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913091555.6C4D0247401A@birch.elegosoft.com> References: <20100913091555.6C4D0247401A@birch.elegosoft.com> Message-ID: <4C8E931F.80209@lcwb.coop> Not sure what you mean here. If you mean m3gdb will only be built on the same machine it runs on, I think that is entirely reasonable. If you mean no cross-debuggers (which run on one machine and debug a different one), we should preserve these. Especially with the proliferation of small embedded devices, etc. Probably not much need to be able to build such a cross debugger until somebody has a specific need, but existing separation between HOST (machine gdb runs on) and TARGET (where the debugee program runs) should be preserved in the code so we don't lose the work that went into it. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 11:15:55 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > Removed files: > cm3/m3-sys/m3gdb/src/: platforms.quake > > Log message: > remove cross gdb stuff > > From rodney_bates at lcwb.coop Mon Sep 13 23:15:09 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:15:09 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: <4C8E945D.6010408@lcwb.coop> Is there any documentation that tells what the invariants are on the trees gdb can handle? One would hope there would be. Discovering such by reading code in something as big as gcc is a very difficult and error-prone job. It sounds like you are having to discover them by trial-and-error experiments, which is very much the hard way. One would hope it exists, but then, from sad experiences, not necessarily realistically expect so. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > > From jay.krell at cornell.edu Tue Sep 14 01:45:01 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:45:01 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E945D.6010408@lcwb.coop> References: <20100913072951.54CA32474016@birch.elegosoft.com>, <4C8E945D.6010408@lcwb.coop> Message-ID: I don't know. tree.h and tree.def are useful. I suspect the main problem is we generate obviously dubious trees. For example, let's say you had: struct { int a,b; } c; void F() { ? printf("%d%d\n", c.a, c.b); } There is a notion of "component ref" ie. "field ref" in union or struct/record. This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. However what parse.c I believe generates is equivalent to either: printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) or: typedef struct { int a:32; } BF1; typedef struct { int a,b:32; } BF2; printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); As well, historically, c itself might have been to have no fields, but a size: struct {? } c; // size = 8 That is what set off this whole adventure, as that construct causes problems specifically on SPARC64, when it tries to figure out how to pass the struct/record as a parameter. Though I only recently found a likely easy workaround for that. Parameter types and how they are passed can be separately specified, presumably letting us always pass by address. I speculate that if we made something much closer to "obviously" correct trees, our problems would go away. The trees support fairly high level operations. And strong typing. But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:15:09 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Is there any documentation that tells what the invariants are on the > trees gdb can handle? One would hope there would be. Discovering > such by reading code in something as big as gcc is a very difficult > and error-prone job. It sounds like you are having to discover them > by trial-and-error experiments, which is very much the hard way. > > One would hope it exists, but then, from sad experiences, not necessarily > realistically expect so. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > mark all non-bitfield fields as addressable > > This was part of a not yet very successful attempt at > > dealing with configure -enable-checking, and its flagging > > of our heavy use of bitfield refs. > > Hopefully we get something that isn't as bad as volatile. > > Hopefully we can remove this addressability actually, > > though I'll probably add more first (objects, arrays, etc.) > > > > Lots of cosmetic/cleanup. > > o => offset > > n => name > > len, n_len => name_length > > val => value > > p => proc > > l => label > > a, b, c, aren't terrible identifers, but l is particularly > > onerous due to resembles to 1 > > t => type > > more to do here > > some functions have v and val, can't both be value > > tree *f => out_f, and use local f to avoid repeated derefs > > tree *v => out_v > > consolidate all tracing options > > There is just one variable now, option_trace_all, and > > all the options increment it. Almost all of the tracing > > is at level 1, a little is at 2. > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > some missing spaces on function calls > > (really I'd just as soon remove them all, but they are > > fairly consistently present, so I'm following that style) > > > > remove the list of optimizations to possibly disable > > if need be, regain them from where they came > > > > tweak the options a little less; ongoing experimentation > > to reduce them, but some of them require a lot of > > debugging and fixing > > > > work in progress to synthesize field accesses on loads/stores > > > > From jay.krell at cornell.edu Tue Sep 14 01:47:49 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:47:49 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E931F.80209@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: Let's put it back when we need it, if m3gdb supports such target. ? (e.g. it doesn't support ARM_DARWIN anyway). Maybe by then the trees in the backen will be good enough that gdb will suffice. I use the recent release as a good easy source of getting older code from. ? (easier than cvsweb, which is also available) Or if you insist I can put it back immediately. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:09:51 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Not sure what you mean here. If you mean m3gdb will only be built > on the same machine it runs on, I think that is entirely reasonable. > > If you mean no cross-debuggers (which run on one machine and debug > a different one), we should preserve these. Especially with the > proliferation of small embedded devices, etc. > > Probably not much need to be able to build such a cross debugger > until somebody has a specific need, but existing separation between > HOST (machine gdb runs on) and TARGET (where the debugee program runs) > should be preserved in the code so we don't lose the work that went > into it. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 11:15:55 > > > > Modified files: > > cm3/m3-sys/m3gdb/src/: m3makefile > > Removed files: > > cm3/m3-sys/m3gdb/src/: platforms.quake > > > > Log message: > > remove cross gdb stuff > > > > From jay.krell at cornell.edu Tue Sep 14 01:53:41 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:53:41 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913072951.54CA32474016@birch.elegosoft.com>, , <4C8E945D.6010408@lcwb.coop>, Message-ID: ps: configure -enable-checking points out lots of problems, or at least countless instances of a small number of problems, with our trees. For example, trees apparently don't support adding any two different types together, e.g. int8 + int32. But we do it, and it seems to work. The bitfield refs we generate seem to cause a specific error. But changing to the other form generates bad code somewhere under -O3. It also doesn't like something about how we use static chains. configure -enable-checking never should have gone bad imho. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: rodney_bates at lcwb.coop; m3commit at elegosoft.com > Date: Mon, 13 Sep 2010 23:45:01 +0000 > Subject: Re: [M3commit] CVS Update: cm3 > > > I don't know. > tree.h and tree.def are useful. > I suspect the main problem is we generate obviously dubious trees. > > > For example, let's say you had: > > > struct { int a,b; } c; > void F() > { > printf("%d%d\n", c.a, c.b); > } > > > There is a notion of "component ref" ie. "field ref" in union or struct/record. > This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. > > > However what parse.c I believe generates is equivalent to either: > > > printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) > > > or: > > typedef struct { int a:32; } BF1; > typedef struct { int a,b:32; } BF2; > > > > printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); > > > As well, historically, c itself might have been to have no fields, but a size: > > > struct { } c; // size = 8 > > > > That is what set off this whole adventure, as that construct causes > problems specifically on SPARC64, when it tries to figure out how > to pass the struct/record as a parameter. Though I only recently found > a likely easy workaround for that. Parameter types and how they are > passed can be separately specified, presumably letting us always > pass by address. > > > > I speculate that if we made something much closer to "obviously" correct trees, > our problems would go away. > > > The trees support fairly high level operations. And strong typing. > But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. > > > - Jay > > ---------------------------------------- > > Date: Mon, 13 Sep 2010 16:15:09 -0500 > > From: rodney_bates at lcwb.coop > > To: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Is there any documentation that tells what the invariants are on the > > trees gdb can handle? One would hope there would be. Discovering > > such by reading code in something as big as gcc is a very difficult > > and error-prone job. It sounds like you are having to discover them > > by trial-and-error experiments, which is very much the hard way. > > > > One would hope it exists, but then, from sad experiences, not necessarily > > realistically expect so. > > > > Jay Krell wrote: > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > mark all non-bitfield fields as addressable > > > This was part of a not yet very successful attempt at > > > dealing with configure -enable-checking, and its flagging > > > of our heavy use of bitfield refs. > > > Hopefully we get something that isn't as bad as volatile. > > > Hopefully we can remove this addressability actually, > > > though I'll probably add more first (objects, arrays, etc.) > > > > > > Lots of cosmetic/cleanup. > > > o => offset > > > n => name > > > len, n_len => name_length > > > val => value > > > p => proc > > > l => label > > > a, b, c, aren't terrible identifers, but l is particularly > > > onerous due to resembles to 1 > > > t => type > > > more to do here > > > some functions have v and val, can't both be value > > > tree *f => out_f, and use local f to avoid repeated derefs > > > tree *v => out_v > > > consolidate all tracing options > > > There is just one variable now, option_trace_all, and > > > all the options increment it. Almost all of the tracing > > > is at level 1, a little is at 2. > > > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > > > some missing spaces on function calls > > > (really I'd just as soon remove them all, but they are > > > fairly consistently present, so I'm following that style) > > > > > > remove the list of optimizations to possibly disable > > > if need be, regain them from where they came > > > > > > tweak the options a little less; ongoing experimentation > > > to reduce them, but some of them require a lot of > > > debugging and fixing > > > > > > work in progress to synthesize field accesses on loads/stores > > > > > > > From jkrell at elego.de Tue Sep 14 15:54:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 15:54:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914135408.20270247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 15:54:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: more tracing work, and an 'int' to 'bool' From rodney_bates at lcwb.coop Tue Sep 14 17:48:14 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 10:48:14 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8F993E.7060903@lcwb.coop> I am still not sure just what you took out. I guess I need to look at it to be sure what I think. As a principle, putting stuff back in later is often *far* more difficult that one might think or than just leaving it in. Even with a system that preserves all the old versions, you have to comb through many old versions/updates to see which ones are relevant. Then you have to comb through each to see which changes are relevant. Even if the remover kept all relevant changes in separate updates and gave them good comments, you don't really know this, and have to review it all. Then you have to find where the code has moved to in the latest version. And then the actual editing. All this has to be done manually, and can be very tedious. And finally, it's unusually error-prone precisely because it's so boring, yet picky. Note that you don't have to maintain it all in working condition. You can disable it in various ways, at build time, runtime, etc., or even just comment stuff out, but leave it in the files. Good comments as to what you have done are, of course, always appropriate. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From rodney_bates at lcwb.coop Tue Sep 14 22:23:47 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 15:23:47 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8FD9D3.8040602@lcwb.coop> Please put it back. I am about to use it myself to debug on an older computer that is using PM3. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From jkrell at elego.de Tue Sep 14 22:46:44 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:46:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914204644.96C0B247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:46:44 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Added files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: bring back equivalent of cross functionality that was here which isn't clearly what anyone wants anyway From jay.krell at cornell.edu Tue Sep 14 22:50:39 2010 From: jay.krell at cornell.edu (Jay K) Date: Tue, 14 Sep 2010 20:50:39 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8FD9D3.8040602@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, , <4C8E931F.80209@lcwb.coop>, , <4C8FD9D3.8040602@lcwb.coop> Message-ID: Rodney, The code was there was precious little and did next to nothing, but has that obnoxous platforms.quake, and appears to be altering the gdb host, not the target. All you have to do is: ? mkdir /foo? ? cd /foo? ? /cvsroot/m3-sys/m3gdb/gdb/configure .... ? make The entire m3cc/src/m3makefile and m3gdb/src/m3makefile are just meant to be thin wrappers around that, though m3cc I have thickened. Anyway, I put back what should be equivalent to what it was. I would still like to remove it, esp. because of platforms.quake. Please look at it, decide if you need it, and consider removing it. Again there is almost nothing there either way, but platforms.quake is not a good thing to keep around. I want as little platform-specific code/data as possible, and probably to locate it differently -- like only in config files, not even in Target.m3 if I can help it. Thanks, ?- Jay ---------------------------------------- > Date: Tue, 14 Sep 2010 15:23:47 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Please put it back. I am about to use it myself to debug on an older > computer that is using PM3. > > Jay K wrote: > > Let's put it back when we need it, if m3gdb supports such target. > > (e.g. it doesn't support ARM_DARWIN anyway). > > Maybe by then the trees in the backen will be good enough that gdb will suffice. > > I use the recent release as a good easy source of getting older code from. > > (easier than cvsweb, which is also available) > > > > Or if you insist I can put it back immediately. > > > > > > - Jay > > > > > > ---------------------------------------- > >> Date: Mon, 13 Sep 2010 16:09:51 -0500 > >> From: rodney_bates at lcwb.coop > >> To: m3commit at elegosoft.com > >> Subject: Re: [M3commit] CVS Update: cm3 > >> > >> Not sure what you mean here. If you mean m3gdb will only be built > >> on the same machine it runs on, I think that is entirely reasonable. > >> > >> If you mean no cross-debuggers (which run on one machine and debug > >> a different one), we should preserve these. Especially with the > >> proliferation of small embedded devices, etc. > >> > >> Probably not much need to be able to build such a cross debugger > >> until somebody has a specific need, but existing separation between > >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) > >> should be preserved in the code so we don't lose the work that went > >> into it. > >> > >> Jay Krell wrote: > >>> CVSROOT: /usr/cvs > >>> Changes by: jkrell at birch. 10/09/13 11:15:55 > >>> > >>> Modified files: > >>> cm3/m3-sys/m3gdb/src/: m3makefile > >>> Removed files: > >>> cm3/m3-sys/m3gdb/src/: platforms.quake > >>> > >>> Log message: > >>> remove cross gdb stuff > >>> > >>> > > From jkrell at elego.de Tue Sep 14 22:55:05 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:55:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914205505.BC63F247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:55:05 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: redefine M3GDB_HOST to be the GNU platform, not the Modula-3 platform, so we don't have to carry around a translation From jkrell at elego.de Wed Sep 15 13:59:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 13:59:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915115943.C3C36247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 13:59:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: trace integers more consistently only mangle names if -gstabs or -gstabs+ specified, and not Macho From jkrell at elego.de Wed Sep 15 14:05:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:05:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120529.D60D8247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:05:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix warning comparing unsigned >=0 is always true From jkrell at elego.de Wed Sep 15 14:07:41 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:07:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120741.A10E3247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:07:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix trace From jkrell at elego.de Wed Sep 15 14:17:22 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:17:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121722.A4405247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:17:22 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comments/tracing From jkrell at elego.de Wed Sep 15 14:19:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:19:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121937.8D9EC247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:19:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: smush out a line via style From jkrell at elego.de Wed Sep 15 14:20:12 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122012.24571247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:12 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:20:32 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122032.39130247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:32 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: really remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:27:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:27:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122754.19112247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:27:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comment/whitespace From jkrell at elego.de Wed Sep 15 14:40:46 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:40:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124046.92A59247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:40:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use input_location instead of UNKNOWN_LOCATION in build_decl for gcc 4.5, to fix crash in -g/-gdb, my fault in moving to 4.5 From jkrell at elego.de Wed Sep 15 14:42:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:42:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124220.8CDB1247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:42:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only print m3name if m3gdb is true, since otherwise it is the same as an already printed name From jkrell at elego.de Wed Sep 15 14:44:44 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:44:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124444.7DC87247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:44:44 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: one space From jkrell at elego.de Wed Sep 15 14:49:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:49:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124918.C25DE247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:49:18 Added files: cm3/m3-sys/m3tests/src/p2/p248/: m3makefile Main.m3 Log message: a place to experiment with object model, learn m3front=>m3back patterns, etc. maybe not really a test case, maybe need not be checked in From jkrell at elego.de Wed Sep 15 14:51:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125136.13892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:36 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: fix somewhat bad sounding typo, add more stuff, wouldn't have commited but the typo was a little bad From jkrell at elego.de Wed Sep 15 14:51:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125147.B9F05247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:47 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: copy of the typo From jkrell at elego.de Wed Sep 15 15:24:15 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 15:24:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915132416.06892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 15:24:15 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: add 2 byte and whopping 4 byte enum (64K elements) From jkrell at elego.de Thu Sep 16 12:58:18 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 16 Sep 2010 12:58:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100916105818.B31852474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/16 12:58:18 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: Be sure to keep in mind that types, er, typenames, are block scoped. We can have multiple enums named Color. Need to handle that correctly in the debug information. From jkrell at elego.de Sun Sep 19 16:50:29 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 16:50:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919145030.0C11C2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 16:50:29 Added files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: Provide RTDebug.IsDebuggerPresent and RTDebug.DebugBreak. Win32: RTDebug.IsDebuggerPresent => IsDebuggerPresent RTDebug.DebugBreak => DebugBreak Apple: RTDebug.IsDebuggerPresent => experimentally derived on my Intel 10.5 system. (could also test ppc emulation) sigaction(sigtrap, 0, &sa); peek at sa RTDebug.DebugBreak => works sigaction(sigtrap, 0, &old); signal(sigtrap, sigign); raise(sigtrap); sigaction(sigtrap, &old, 0); others: RTDebug.IsDebuggerPresent => false experimented on Linux and found Apple approach not viable RTDebug.DebugBreak => works, same as Apple smaller alternative would be definitely appreciated note that DebugBreak must be trivially continuable in debugger abort() is not it! bonus points if it is macro or builtin and small for C so the break occurs right in the code; on Win32 there is also __debugbreak() which generates one instruction right there, very nice (though notice that Win32 DebugBreak is "fatal" not in a debuger, whereas my Posix version isn't, because I can't implement IsDebuggerPresent) bonus points also if IsDebuggerPresent is fast, and updates itself as debugger is detached/reattached, though current version doesn't; Win32 does From jkrell at elego.de Sun Sep 19 17:17:49 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:17:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151749.B779D2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:17:49 Modified files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: forgot call to raise(sigtrap) From jkrell at elego.de Sun Sep 19 17:18:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:18:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151827.B161F2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:18:27 Modified files: cm3/m3-libs/m3core/src/runtime//common/: m3makefile RTDebug.i3 Log message: add RTDebug.IsDebuggerPresent/DebugBreak From jkrell at elego.de Wed Sep 22 14:33:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 22 Sep 2010 14:33:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100922123340.0FEDB247401C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/22 14:33:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add tracing to scan_var, reformat scan_var and varray_extend From jkrell at elego.de Thu Sep 23 14:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 14:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923121436.608C0CC123@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 14:14:36 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_revstr => m3_revstr m3cg_unsigned_wide_to_hex_full => m3_unsigned_wide_to_hex_full m3cg_signed_wide_to_hex_shortest => m3_signed_wide_to_hex_shortest m3cg_fill_hex_value => m3_fill_hex_value move these functions earlier in file add m3_unsigned_wide_to_dec_shortest to be used probably soon From jkrell at elego.de Thu Sep 23 15:52:53 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:52:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135253.780DACC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:52:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca in places to allocate correctly sized buffers rework m3_push_type_decl slightly to reduce duplication and slightly increase data-driven-ness before: m3_push_type_decl (get_identifier ("int"), t_int) after: m3_push_type_decl (t_int, "int") #define t_int_8 intQI_type_node instead of tree t_int_8; t_int_8 = intQI_type_node; and so on nothing significant here (bikeshedding and stone polishing, stuff noticed en route to more useful stuff) From jkrell at elego.de Thu Sep 23 15:53:28 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:53:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135328.8D8C4CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:53:28 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: initialize local From jkrell at elego.de Thu Sep 23 15:54:21 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:54:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135421.4DB77CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:54:21 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fold tiny bit of common code From jkrell at elego.de Fri Sep 24 09:46:37 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 9:46:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924074637.BD9B0CC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 09:46:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more crashes with plain -g -- use BUILTINS_LOCATION or input_location instead of UNKNOWN_LOCATION UNKNOWN_LOCATION always crashes From jkrell at elego.de Fri Sep 24 10:24:30 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 10:24:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924082430.75075CC397@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 10:24:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: alignment cannot be 0, it must be at least 1 bit, else plain -g does a divide by zero, crash From jkrell at elego.de Fri Sep 24 13:50:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 13:50:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924115057.DC78FCC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 13:50:57 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more of configure -enable-checking in particular, widen return types both at the implementation and the call (and then narrow after the call) From jkrell at elego.de Fri Sep 24 14:29:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 14:29:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924122918.A0CCA247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 14:29:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c Makefile.in cm3/m3-sys/m3cc/src/: m3makefile Log message: don't need libdecnumber From dabenavidesd at yahoo.es Sat Sep 25 02:03:13 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:03:13 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100924122918.A0CCA247400E@birch.elegosoft.com> Message-ID: <181251.85043.qm@web29701.mail.ird.yahoo.com> Hi all: why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. Thanks in advance --- El vie, 24/9/10, Jay Krell escribi?: > De: Jay Krell > Asunto: [M3commit] CVS Update: cm3 > Para: m3commit at elegosoft.com > Fecha: viernes, 24 de septiembre, 2010 09:29 > CVSROOT: /usr/cvs > Changes by: > jkrell at birch. 10/09/24 14:29:18 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > dfp.c > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > Makefile.in dfp.c > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > Makefile.in > cm3/m3-sys/m3cc/src/: m3makefile > > Log message: > don't need libdecnumber > > From jkrell at elego.de Sat Sep 25 02:16:13 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 2:16:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925001613.3543E247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 02:16:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: tighten up some asserts size and align >= 1, not just >= 0 er, no, size can be 0, for empty records or fields of their type, so leave it alone and align >= !!size work in progress types/debugging for enums and typedefs (when you say TYPE a = {b,c}; {b,c} is anonymous enum and a is a typedef/typename for. consider you can say: TYPE a = {b,c}; TYPE a2 = {b,c}; it is equivalent to typedef enum {b,c} a, a2;) not yet working, not yet enabled don't widen return types leave the mechanism though because this might be where we adjust struct vs. struct*, which is another thing configure -enable-checking complains about, though that is specific to module initializers I think, not all functions in general set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) part of attempted work in progress to generate decent trees instead of obviously poor ones; aka to actually maybe finish this backend instead of leaving it very incomplete for years (not yet enabled) Do a better job of skipping the prefix of module/segment names. M_Main => "Main" instead of "ain". Instead of always skipping 3, skip up to the first underscore, if it is at position 0, 1, or 2. Right? Or did I regress this somewhere since release? layout_decl(var, 0) => layout_decl(var, 1) alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:17:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:17:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <181251.85043.qm@web29701.mail.ird.yahoo.com> References: <20100924122918.A0CCA247400E@birch.elegosoft.com>, <181251.85043.qm@web29701.mail.ird.yahoo.com> Message-ID: It's not related to exception handling. It is "decimal floating point". It is some type that gcc adds to C, at least on some platforms, that we don't expose in Modula-3, and I doubt we ever would. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 00:03:13 +0000 > From: dabenavidesd at yahoo.es > To: m3commit at elegosoft.com; jkrell at elego.de > Subject: Re: [M3commit] CVS Update: cm3 > > Hi all: > why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. > Thanks in advance > > --- El vie, 24/9/10, Jay Krell escribi?: > > > De: Jay Krell > > Asunto: [M3commit] CVS Update: cm3 > > Para: m3commit at elegosoft.com > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > CVSROOT: /usr/cvs > > Changes by: > > jkrell at birch. 10/09/24 14:29:18 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > dfp.c > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > Makefile.in dfp.c > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > Makefile.in > > cm3/m3-sys/m3cc/src/: m3makefile > > > > Log message: > > don't need libdecnumber > > > > > > > From hosking at cs.purdue.edu Sat Sep 25 02:23:56 2010 From: hosking at cs.purdue.edu (Tony Hosking) Date: Fri, 24 Sep 2010 20:23:56 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> On 25 Sep 2010, at 02:16, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? This must have been a regression! > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:19:28 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:19:28 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: diff attached I keep finding other things to fix while trying to get enums/typedefs to work. So this let me save stuff at an ok place. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 02:16:13 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 02:40:18 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:40:18 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> References: <20100925001613.3543E247400D@birch.elegosoft.com>, <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> Message-ID: > This must have been a regression! Ok I'll have to see what the release branch did then. Probably not just by reading the code, which I already did a bit. Debugging it. - Jay ---------------------------------------- > From: hosking at cs.purdue.edu > Date: Fri, 24 Sep 2010 20:23:56 -0400 > To: jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > tighten up some asserts > > size and align >= 1, not just >= 0 > > er, no, size can be 0, for empty records > > or fields of their type, so leave it alone and align >= !!size > > > > work in progress > > types/debugging for enums and typedefs > > (when you say TYPE a = {b,c}; > > {b,c} is anonymous enum > > and a is a typedef/typename for. > > consider you can say: > > TYPE a = {b,c}; > > TYPE a2 = {b,c}; > > it is equivalent to typedef enum {b,c} a, a2;) > > not yet working, not yet enabled > > > > don't widen return types > > leave the mechanism though because > > this might be where we adjust struct vs. struct*, which > > is another thing configure -enable-checking complains about, > > though that is specific to module initializers I think, > > not all functions in general > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > part of attempted work in progress to generate decent trees > > instead of obviously poor ones; aka to actually maybe finish > > this backend instead of leaving it very incomplete for years > > (not yet enabled) > > > > Do a better job of skipping the prefix of module/segment names. > > M_Main => "Main" instead of "ain". > > Instead of always skipping 3, skip up to the first > > underscore, if it is at position 0, 1, or 2. > > Right? Or did I regress this somewhere since release? > > This must have been a regression! > > > > > layout_decl(var, 0) > > => layout_decl(var, 1) > > alignment = 0 is bad, causes divide by zero with plain -g > From jay.krell at cornell.edu Sat Sep 25 02:44:57 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:44:57 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, Message-ID: To be clear though, what I think I saw was: declare_segment(name = "_Main", typeid = NO_UID) => fix_name ?=> M_Main ?=> + 3 ?=> "ain" If those are the parameters to declare_segment, then the rest seems to follow, in release. But I'll have to check it all. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > Date: Sat, 25 Sep 2010 00:40:18 +0000 > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > This must have been a regression! > > Ok I'll have to see what the release branch did then. > Probably not just by reading the code, which I already did a bit. > Debugging it. > > - Jay > ---------------------------------------- > > From: hosking at cs.purdue.edu > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > To: jkrell at elego.de > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > tighten up some asserts > > > size and align >= 1, not just >= 0 > > > er, no, size can be 0, for empty records > > > or fields of their type, so leave it alone and align >= !!size > > > > > > work in progress > > > types/debugging for enums and typedefs > > > (when you say TYPE a = {b,c}; > > > {b,c} is anonymous enum > > > and a is a typedef/typename for. > > > consider you can say: > > > TYPE a = {b,c}; > > > TYPE a2 = {b,c}; > > > it is equivalent to typedef enum {b,c} a, a2;) > > > not yet working, not yet enabled > > > > > > don't widen return types > > > leave the mechanism though because > > > this might be where we adjust struct vs. struct*, which > > > is another thing configure -enable-checking complains about, > > > though that is specific to module initializers I think, > > > not all functions in general > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > part of attempted work in progress to generate decent trees > > > instead of obviously poor ones; aka to actually maybe finish > > > this backend instead of leaving it very incomplete for years > > > (not yet enabled) > > > > > > Do a better job of skipping the prefix of module/segment names. > > > M_Main => "Main" instead of "ain". > > > Instead of always skipping 3, skip up to the first > > > underscore, if it is at position 0, 1, or 2. > > > Right? Or did I regress this somewhere since release? > > > > This must have been a regression! > > > > > > > > layout_decl(var, 0) > > > => layout_decl(var, 1) > > > alignment = 0 is bad, causes divide by zero with plain -g > > > From dabenavidesd at yahoo.es Sat Sep 25 02:47:54 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:47:54 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: Message-ID: <66881.63033.qm@web29716.mail.ird.yahoo.com> Te registers for div by 0 exceptions are shared for both he ALU with the FPU, so you know. That's the actual way of doing better exception handling perhaps this is not supported in it, so maybe I'm wrong, right? Ok. Unfortunately this is not true for a number of other platforms Thanks in advance --- El vie, 24/9/10, Jay K escribi?: > De: Jay K > Asunto: RE: [M3commit] CVS Update: cm3 > Para: "Daniel (M3)" , m3commit at elegosoft.com, "Jay Krell" > Fecha: viernes, 24 de septiembre, 2010 19:17 > > It's not related to exception handling. > It is "decimal floating point". > It is some type that gcc adds to C, at least on some > platforms, that we don't > expose in Modula-3, and I doubt we ever would. > > - Jay > > ---------------------------------------- > > Date: Sat, 25 Sep 2010 00:03:13 +0000 > > From: dabenavidesd at yahoo.es > > To: m3commit at elegosoft.com; > jkrell at elego.de > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Hi all: > > why not, are you sure you want to be ride of the > exception capabilities? Or Do I miss something, don't I? > Perhaps I do. > > Thanks in advance > > > > --- El vie, 24/9/10, Jay Krell escribi?: > > > > > De: Jay Krell > > > Asunto: [M3commit] CVS Update: cm3 > > > Para: m3commit at elegosoft.com > > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > > CVSROOT: /usr/cvs > > > Changes by: > > > jkrell at birch. 10/09/24 14:29:18 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > > dfp.c > > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > > Makefile.in dfp.c > > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > > Makefile.in > > > cm3/m3-sys/m3cc/src/: m3makefile > > > > > > Log message: > > > don't need libdecnumber > > > > > > > > > > > > > > > > From hosking at elego.de Sat Sep 25 03:43:34 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:43:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925014334.F10852474038@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:43:34 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:53:51 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:53:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015351.EF776247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:53:51 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Ops.i3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:54:53 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:54:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015453.32B5B247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:54:53 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Check.m3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From jkrell at elego.de Sat Sep 25 12:25:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 12:25:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925102507.D64F4CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 12:25:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Propery fix for getting the current unit name from declare_segment. The problem was that on Darwin I no longer mangle names, since there is no m3gdb to consume the mangled names, so the identifier was M_Main instead of MM_Main. In this revised code, I just strip 2 characters from the unmangled name instead of dealing with the mangled name. This probably costs us an extra heap copy, ok. I also no longer use the anonymous names that do come through here (e.g. L_1 with its first 3 characters removed!) From jay.krell at cornell.edu Sat Sep 25 12:25:59 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:25:59 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, , Message-ID: indeed, release: declare_segment ? name = M_Main ? fix_name => MM_Main ? +3 => Main I fixed it, attached. Thanks for the chiding. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: RE: [M3commit] CVS Update: cm3 > Date: Sat, 25 Sep 2010 00:44:57 +0000 > > > To be clear though, what I think I saw was: > > declare_segment(name = "_Main", typeid = NO_UID) > => fix_name > => M_Main > => + 3 > => "ain" > > If those are the parameters to declare_segment, > then the rest seems to follow, in release. But I'll have to check it all. > > - Jay > > ---------------------------------------- > > From: jay.krell at cornell.edu > > To: hosking at cs.purdue.edu; jkrell at elego.de > > Date: Sat, 25 Sep 2010 00:40:18 +0000 > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > This must have been a regression! > > > > Ok I'll have to see what the release branch did then. > > Probably not just by reading the code, which I already did a bit. > > Debugging it. > > > > - Jay > > ---------------------------------------- > > > From: hosking at cs.purdue.edu > > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > > To: jkrell at elego.de > > > CC: m3commit at elegosoft.com > > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > > > CVSROOT: /usr/cvs > > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > > > Modified files: > > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > > > Log message: > > > > tighten up some asserts > > > > size and align >= 1, not just >= 0 > > > > er, no, size can be 0, for empty records > > > > or fields of their type, so leave it alone and align >= !!size > > > > > > > > work in progress > > > > types/debugging for enums and typedefs > > > > (when you say TYPE a = {b,c}; > > > > {b,c} is anonymous enum > > > > and a is a typedef/typename for. > > > > consider you can say: > > > > TYPE a = {b,c}; > > > > TYPE a2 = {b,c}; > > > > it is equivalent to typedef enum {b,c} a, a2;) > > > > not yet working, not yet enabled > > > > > > > > don't widen return types > > > > leave the mechanism though because > > > > this might be where we adjust struct vs. struct*, which > > > > is another thing configure -enable-checking complains about, > > > > though that is specific to module initializers I think, > > > > not all functions in general > > > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > > part of attempted work in progress to generate decent trees > > > > instead of obviously poor ones; aka to actually maybe finish > > > > this backend instead of leaving it very incomplete for years > > > > (not yet enabled) > > > > > > > > Do a better job of skipping the prefix of module/segment names. > > > > M_Main => "Main" instead of "ain". > > > > Instead of always skipping 3, skip up to the first > > > > underscore, if it is at position 0, 1, or 2. > > > > Right? Or did I regress this somewhere since release? > > > > > > This must have been a regression! > > > > > > > > > > > layout_decl(var, 0) > > > > => layout_decl(var, 1) > > > > alignment = 0 is bad, causes divide by zero with plain -g > > > > > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 12:28:56 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:28:56 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925102507.D64F4CC3AC@birch.elegosoft.com> References: <20100925102507.D64F4CC3AC@birch.elegosoft.com> Message-ID: ? /* do not use "name", it is from alloca; skip the 'I_' or 'M_' prefix. */ ? if (name_length > 2) ? { ??? gcc_assert (name); ??? gcc_assert (name[0] == 'I' || name[0] == 'M'); ??? gcc_assert (name[1] == '_'); ??? gcc_assert (name[2]); ??? current_unit_name = xstrdup (name + 2); ??? current_unit_name_length = name_length - 2; ? } Another approach would be ? current_unit_name = IDENTIFIER_POINTER (DECL_NAME (v)) + 2 + m3gdb; m3gdb is the new boolean I introduced which is false unless gstabs and not Darwin. Which would save the heap alloc. Notice that we always get declare_segment(null) also and it was acting dubiously. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 12:25:07 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 12:25:07 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Propery fix for getting the current unit name from declare_segment. > The problem was that on Darwin I no longer mangle names, > since there is no m3gdb to consume the mangled names, > so the identifier was M_Main instead of MM_Main. > > In this revised code, I just strip 2 characters from the > unmangled name instead of dealing with the mangled name. > > This probably costs us an extra heap copy, ok. > > I also no longer use the anonymous names that do > come through here (e.g. L_1 with its first 3 characters removed!) > From jkrell at elego.de Sat Sep 25 13:22:59 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 13:22:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925112259.28E76CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 13:22:59 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: replace m3_convert with convert m3core seemed to have no real change don't bother "copying" memset/memcpy/memmove/etc, just use #define From hosking at elego.de Sat Sep 25 16:47:01 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 16:47:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925144701.B1E8DCC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 16:47:01 Modified files: cm3/m3-libs/m3core/src/: m3makefile Log message: Disable building of atomic until I fix the compiler front-end. From jkrell at elego.de Sun Sep 26 14:28:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 14:28:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926122811.0A2B62474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 14:28:10 Modified files: cm3/scripts/python/: pylib.py Log message: fix I386_NT boot support (filter out m3cc and restore copying the *.io and *.mo files) From jkrell at elego.de Sun Sep 26 15:48:45 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:48:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926134845.A95CE2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:48:45 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: Makefile.am Makefile.in acinclude.m4 aclocal.m4 configure configure.in gmp-h.in gmp-impl.h longlong.h cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc/gmp/mpz/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc-4.5/: Makefile.def Makefile.in configure configure.ac cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in builtins.c fold-const.c lto-compress.c real.c real.h toplev.c tree-ssa-ccp.c cm3/m3-sys/m3cc/src/: m3makefile Removed files: cm3/m3-sys/m3cc/gcc/gmp/: compat.c extract-dbl.c gen-fac_ui.c gen-fib.c gen-psqr.c gmpxx.h invalid.c libmp.sym mp-h.in mp_dv_tab.c mp_get_fns.c mp_minv_tab.c mp_set_fns.c rand.c randbui.c randclr.c randdef.c randiset.c randlc2s.c randlc2x.c randmt.c randmt.h randmts.c randmui.c rands.c randsd.c randsdui.c tal-debug.c tal-notreent.c cm3/m3-sys/m3cc/gcc/gmp/cxx/: Makefile.am Makefile.in dummy.cc isfuns.cc ismpf.cc ismpq.cc ismpz.cc ismpznw.cc osdoprnti.cc osfuns.cc osmpf.cc osmpq.cc osmpz.cc cm3/m3-sys/m3cc/gcc/gmp/demos/: Makefile.am Makefile.in factorize.c isprime.c pexpr-config-h.in pexpr.c primes.c qcn.c cm3/m3-sys/m3cc/gcc/gmp/demos/calc/: Makefile.am Makefile.in README calc-common.h calc-config-h.in calc.c calc.h calc.y calclex.c calclex.l calcread.c cm3/m3-sys/m3cc/gcc/gmp/demos/expr/: Makefile.am Makefile.in README expr-impl.h expr.c expr.h exprf.c exprfa.c exprq.c exprqa.c exprv.c exprz.c exprza.c run-expr.c t-expr.c cm3/m3-sys/m3cc/gcc/gmp/demos/perl/: GMP.pm GMP.xs INSTALL Makefile.PL sample.pl test.pl test2.pl typemap cm3/m3-sys/m3cc/gcc/gmp/demos/perl/GMP/: Mpf.pm Mpq.pm Mpz.pm Rand.pm cm3/m3-sys/m3cc/gcc/gmp/doc/: Makefile.am Makefile.in configuration fdl.texi gmp.info gmp.info-1 gmp.info-2 gmp.texi isa_abi_headache mdate-sh projects.html stamp-vti tasks.html texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/gmp/macos/: Makefile.in README configure unix2mac cm3/m3-sys/m3cc/gcc/gmp/mpbsd/: Makefile.am Makefile.in itom.c mfree.c min.c mout.c mtox.c rpow.c sdiv.c xtom.c cm3/m3-sys/m3cc/gcc/gmp/mpf/: Makefile.am Makefile.in abs.c add.c add_ui.c ceilfloor.c clear.c cmp.c cmp_d.c cmp_si.c cmp_ui.c div.c div_2exp.c div_ui.c dump.c eq.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_ulong.c fits_ushort.c get_d.c get_d_2exp.c get_dfl_prec.c get_prc.c get_si.c get_str.c get_ui.c init.c init2.c inp_str.c int_p.c iset.c iset_d.c iset_si.c iset_str.c iset_ui.c mul.c mul_2exp.c mul_ui.c neg.c out_str.c pow_ui.c random2.c reldiff.c set.c set_d.c set_dfl_prec.c set_prc.c set_prc_raw.c set_q.c set_si.c set_str.c set_ui.c set_z.c size.c sqrt.c sqrt_ui.c sub.c sub_ui.c swap.c trunc.c ui_div.c ui_sub.c urandomb.c cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makeasm.am asm-defs.m4 cpp-ccas m4-ccas cm3/m3-sys/m3cc/gcc/gmp/mpn/a29k/: add_n.s addmul_1.s lshift.s mul_1.s rshift.s sub_n.s submul_1.s udiv.s umul.s cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/: README add_n.asm addmul_1.asm alpha-defs.m4 aorslsh1_n.asm cntlz.asm copyd.asm copyi.asm default.m4 dive_1.c diveby3.asm gmp-mparam.h invert_limb.asm lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm unicos.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev5/: add_n.asm com_n.asm gmp-mparam.h lshift.asm rshift.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/: add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm slot.pl sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/nails/: README addmul_1.asm addmul_2.asm addmul_3.asm addmul_4.asm aors_n.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev67/: gcd_1.asm hamdist.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/arm/: add_n.asm addmul_1.asm arm-defs.m4 copyd.asm copyi.asm gmp-mparam.h invert_limb.asm mul_1.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/clipper/: add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/: README add_n.c gmp-mparam.h hamdist.c lshift.c mulww.f popcount.c rshift.c sub_n.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/cfp/: addmul_1.c mul_1.c mulwwc90.s mulwwj90.s submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/ieee/: addmul_1.c gmp-mparam.h invert_limb.c mul_1.c mul_basecase.c sqr_basecase.c submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/generic/: add.c add_1.c addsub_n.c bdivmod.c cmp.c dive_1.c divis.c divrem.c dump.c fib2_ui.c gcd.c gcd_1.c gcdext.c get_d.c jacbase.c mod_1.c mod_34lsub1.c mode1o.c mullow_basecase.c mullow_n.c perfsqr.c popham.c pow_1.c pre_mod_1.c random.c random2.c rootrem.c scan0.c scan1.c set_str.c sizeinbase.c sqrtrem.c sub.c sub_1.c udiv_w_sdiv.c cm3/m3-sys/m3cc/gcc/gmp/mpn/i960/: README add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/ia64/: README add_n.asm addmul_1.asm copyd.asm copyi.asm gcd_1.asm gmp-mparam.h ia64-defs.m4 invert_limb.asm lorrshift.asm mode1o.asm mul_1.asm popcount.asm sub_n.asm submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/lisp/: gmpasm-mode.el cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/: README aors_n.asm gmp-mparam.h lshift.asm m68k-defs.m4 rshift.asm t-m68k-defs.pl cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/mc68020/: aorsmul_1.asm mul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/: README add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/mc88110/: add_n.S addmul_1.s mul_1.s sub_n.S cm3/m3-sys/m3cc/gcc/gmp/mpn/mips32/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mips-defs.m4 mips.m4 mul_1.asm rshift.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/mips64/: README add_n.asm addmul_1.asm divrem_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/ns32k/: add_n.s addmul_1.s mul_1.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/: README add_n.asm gmp-mparam.h lshift.asm pa-defs.m4 rshift.asm sub_n.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/: addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/pa7100/: add_n.asm addmul_1.asm lshift.asm rshift.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa2_0/: add_n.asm gmp-mparam.h sqr_diagonal.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa64/: README add_n.asm addmul_1.asm aorslsh1_n.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/power/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sdiv.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/: README add_n.asm addlsh1_n.asm addmul_1.asm aix.m4 darwin.m4 diveby3.asm eabi.m4 elf.m4 gmp-mparam.h lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm powerpc-defs.m4 rshift.asm sqr_diagonal.asm sub_n.asm sublsh1_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/750/: com_n.asm gmp-mparam.h lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/vmx/: copyd.asm copyi.asm logops_n.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/: README aix.m4 copyd.asm copyi.asm darwin.m4 elf.m4 gmp-mparam.h lshift.asm rshift.asm sqr_diagonal.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode32/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode64/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/vmx/: popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pyr/: add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/s390/: README addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/sh2/: addmul_1.s mul_1.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sparc-defs.m4 sub_n.asm submul_1.asm udiv.asm udiv_nfp.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/: addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/supersparc/: gmp-mparam.h udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v9/: README add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc64/: README add_n.asm addmul_1.asm addmul_2.asm copyd.asm copyi.asm dive_1.c divrem_1.c gmp-mparam.h lshift.asm mod_1.c mode1o.c mul_1.asm rshift.asm sparc64.h sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/thumb/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/vax/: add_n.s addmul_1.s gmp-mparam.h lshift.s mul_1.s rshift.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/: README aors_n.asm aorsmul_1.asm copyd.asm copyi.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h lshift.asm mod_1.asm mod_34lsub1.asm mul_1.asm mul_basecase.asm rshift.asm sqr_basecase.asm t-zdisp.sh t-zdisp2.pl udiv.asm umul.asm x86-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/fat/: fat.c fat_entry.asm gcd_1.c gmp-mparam.h mode1o.c cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/i486/: gmp-mparam.h cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/: README aors_n.asm aorsmul_1.asm cross.pl diveby3.asm divrem_1.asm gcd_1.asm gcd_finda.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm pre_mod_1.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/k62mmx/: copyd.asm lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/mmx/: com_n.asm dive_1.asm logops_n.asm lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/: README aors_n.asm aorsmul_1.asm dive_1.asm diveby3.asm gcd_1.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/mmx/: com_n.asm copyd.asm copyi.asm divrem_1.asm lshift.asm mod_1.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/: README aors_n.asm aorsmul_1.asm copyd.asm dive_1.asm diveby3.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/mmx/: divrem_1.asm gmp-mparam.h lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/p3mmx/: popham.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/: README aors_n.asm aorsmul_1.asm com_n.asm copyd.asm copyi.asm dive_1.asm diveby3.asm gmp-mparam.h hamdist.asm logops_n.asm lshift.asm mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_2.asm mul_basecase.asm popcount.asm rshift.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/mmx/: gmp-mparam.h hamdist.asm lshift.asm mul_1.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/: README copyd.asm copyi.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/mmx/: lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/sse2/: add_n.asm addlsh1_n.asm addmul_1.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm rsh1add_n.asm sqr_basecase.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86_64/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mode1o.asm mul_1.asm rshift.asm sub_n.asm submul_1.asm x86_64-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000/: README add_n.s gmp-mparam.h mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000x/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpq/: Makefile.am Makefile.in abs.c aors.c canonicalize.c clear.c cmp.c cmp_si.c cmp_ui.c div.c equal.c get_d.c get_den.c get_num.c get_str.c init.c inp_str.c inv.c md_2exp.c mul.c neg.c out_str.c set.c set_d.c set_den.c set_f.c set_num.c set_si.c set_str.c set_ui.c set_z.c swap.c cm3/m3-sys/m3cc/gcc/gmp/mpz/: abs.c and.c aorsmul.c aorsmul_i.c array_init.c bin_ui.c bin_uiui.c cdiv_q.c cdiv_q_ui.c cdiv_qr.c cdiv_qr_ui.c cdiv_r.c cdiv_r_ui.c cdiv_ui.c cfdiv_q_2exp.c cfdiv_r_2exp.c clrbit.c cmp_d.c cmp_si.c cmp_ui.c cmpabs.c cmpabs_d.c cmpabs_ui.c com.c combit.c cong.c cong_2exp.c cong_ui.c dive_ui.c divegcd.c divexact.c divis.c divis_2exp.c divis_ui.c dump.c fac_ui.c fdiv_q_ui.c fdiv_qr.c fdiv_qr_ui.c fdiv_r.c fdiv_r_ui.c fdiv_ui.c fib2_ui.c fib_ui.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_uint.c fits_ulong.c fits_ushort.c gcd.c gcd_ui.c gcdext.c get_d.c get_d_2exp.c get_si.c get_str.c get_ui.c getlimbn.c hamdist.c init2.c inp_raw.c inp_str.c invert.c ior.c iset_d.c iset_si.c iset_str.c iset_ui.c jacobi.c kronsz.c kronuz.c kronzs.c kronzu.c lcm.c lcm_ui.c lucnum2_ui.c lucnum_ui.c millerrabin.c mod.c mul.c mul_2exp.c mul_i.h mul_si.c mul_ui.c n_pow_ui.c nextprime.c out_raw.c perfpow.c perfsqr.c popcount.c pow_ui.c powm.c powm_ui.c pprime_p.c random.c random2.c realloc2.c remove.c root.c rootrem.c rrandomb.c scan0.c scan1.c set_d.c set_f.c set_q.c set_si.c set_str.c setbit.c size.c sqrt.c sqrtrem.c tdiv_q.c tdiv_q_2exp.c tdiv_q_ui.c tdiv_qr_ui.c tdiv_r.c tdiv_r_2exp.c tdiv_r_ui.c tdiv_ui.c tstbit.c ui_pow_ui.c ui_sub.c urandomb.c urandomm.c xor.c cm3/m3-sys/m3cc/gcc/gmp/printf/: Makefile.am Makefile.in asprintf.c asprntffuns.c doprnt.c doprntf.c doprnti.c fprintf.c obprintf.c obprntffuns.c obvprintf.c printf.c printffuns.c repl-vsnprintf.c snprintf.c snprntffuns.c sprintf.c sprintffuns.c vasprintf.c vfprintf.c vprintf.c vsnprintf.c vsprintf.c cm3/m3-sys/m3cc/gcc/gmp/scanf/: Makefile.am Makefile.in doscan.c fscanf.c fscanffuns.c scanf.c sscanf.c sscanffuns.c vfscanf.c vscanf.c vsscanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/: Makefile.am Makefile.in amd64call.asm amd64check.c memory.c misc.c refmpf.c refmpn.c refmpq.c refmpz.c spinner.c t-bswap.c t-constants.c t-count_zeros.c t-gmpmax.c t-hightomask.c t-modlinv.c t-parity.c t-popc.c t-sub.c tests.h trace.c x86call.asm x86check.c cm3/m3-sys/m3cc/gcc/gmp/tests/cxx/: Makefile.am Makefile.in clocale.c t-assign.cc t-binary.cc t-cast.cc t-constr.cc t-headers.cc t-istream.cc t-locale.cc t-misc.cc t-ops.cc t-ostream.cc t-prec.cc t-rand.cc t-ternary.cc t-unary.cc cm3/m3-sys/m3cc/gcc/gmp/tests/devel/: Makefile.am Makefile.in README addmul_N.c anymul_1.c aors_n.c copy.c divmod_1.c divrem.c logops_n.c mul_N.c shift.c try.c cm3/m3-sys/m3cc/gcc/gmp/tests/misc/: Makefile.am Makefile.in t-locale.c t-printf.c t-scanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpbsd/: Makefile.am Makefile.in allfuns.c t-itom.c t-mtox.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpf/: Makefile.am Makefile.in reuse.c t-add.c t-cmp_d.c t-cmp_si.c t-conv.c t-div.c t-dm2exp.c t-fits.c t-get_d.c t-get_d_2exp.c t-get_si.c t-get_ui.c t-gsprec.c t-inp_str.c t-int_p.c t-mul_ui.c t-muldiv.c t-set.c t-set_q.c t-set_si.c t-set_ui.c t-sqrt.c t-sqrt_ui.c t-sub.c t-trunc.c t-ui_div.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpn/: Makefile.am Makefile.in t-aors_1.c t-asmtype.c t-divrem_1.c t-fat.c t-get_d.c t-instrument.c t-iord_u.c t-mp_bases.c t-perfsqr.c t-scan.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpq/: Makefile.am Makefile.in t-aors.c t-cmp.c t-cmp_si.c t-cmp_ui.c t-equal.c t-get_d.c t-get_str.c t-inp_str.c t-md_2exp.c t-set_f.c t-set_str.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpz/: Makefile.am Makefile.in bit.c convert.c dive.c dive_ui.c io.c logic.c reuse.c t-addsub.c t-aorsmul.c t-bin.c t-cdiv_ui.c t-cmp.c t-cmp_d.c t-cmp_si.c t-cong.c t-cong_2exp.c t-div_2exp.c t-divis.c t-divis_2exp.c t-export.c t-fac_ui.c t-fdiv.c t-fdiv_ui.c t-fib_ui.c t-fits.c t-gcd.c t-gcd_ui.c t-get_d.c t-get_d_2exp.c t-get_si.c t-hamdist.c t-import.c t-inp_str.c t-io_raw.c t-jac.c t-lcm.c t-lucnum_ui.c t-mul.c t-mul_i.c t-oddeven.c t-perfsqr.c t-popcount.c t-pow.c t-powm.c t-powm_ui.c t-pprime_p.c t-root.c t-scan.c t-set_d.c t-set_f.c t-set_si.c t-set_str.c t-sizeinbase.c t-sqrtrem.c t-tdiv.c t-tdiv_ui.c cm3/m3-sys/m3cc/gcc/gmp/tests/rand/: Makefile.am Makefile.in findlc.c gen.c gmpstat.h spect.c stat.c statlib.c t-iset.c t-lc2exp.c t-mt.c t-rand.c t-urbui.c t-urmui.c t-urndmm.c zdiv_round.c cm3/m3-sys/m3cc/gcc/gmp/tune/: Makefile.am Makefile.in README alpha.asm common.c divrem1div.c divrem1inv.c divrem2div.c divrem2inv.c freq.c gcd_bin.c gcd_finda_gen.c gcdext_double.c gcdext_single.c gcdextod.c gcdextos.c hppa.asm hppa2.asm hppa2w.asm ia64.asm jacbase1.c jacbase2.c jacbase3.c many.pl mod_1_div.c mod_1_inv.c modlinv.c noop.c pentium.asm powerpc.asm powerpc64.asm powm_mod.c powm_redc.c pre_divrem_1.c sb_div.c sb_inv.c set_strb.c set_strs.c sparcv9.asm speed-ext.c speed.c speed.h time.c tuneup.c x86_64.asm cm3/m3-sys/m3cc/gcc/mpc/: AUTHORS COPYING.LIB ChangeLog INSTALL Makefile.am Makefile.in Makefile.vc NEWS README TODO acinclude.m4 aclocal.m4 config.guess config.h.in config.sub configure configure.ac depcomp install-sh ltmain.sh missing cm3/m3-sys/m3cc/gcc/mpc/doc/: Makefile.am Makefile.in mdate-sh mpc.texi stamp-vti texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/mpc/src/: Makefile.am Makefile.in abs.c acos.c acosh.c add.c add_fr.c add_ui.c arg.c asin.c asinh.c atan.c atanh.c clear.c cmp.c cmp_si_si.c conj.c cos.c cosh.c div.c div_2exp.c div_fr.c div_ui.c exp.c fr_div.c fr_sub.c get_prec.c get_prec2.c get_str.c get_version.c imag.c init2.c init3.c inp_str.c log.c mem.c mpc-impl.h mpc.h mul.c mul_2exp.c mul_fr.c mul_i.c mul_si.c mul_ui.c neg.c norm.c out_str.c pow.c pow_d.c pow_fr.c pow_ld.c pow_si.c pow_ui.c pow_z.c proj.c real.c set.c set_prec.c set_str.c set_x.c set_x_x.c sin.c sinh.c sqr.c sqrt.c strtoc.c sub.c sub_fr.c sub_ui.c swap.c tan.c tanh.c uceil_log2.c ui_div.c ui_ui_sub.c urandom.c cm3/m3-sys/m3cc/gcc/mpc/tests/: Makefile.am Makefile.in abs.dat acos.dat acosh.dat add.dat add_fr.dat arg.dat asin.dat asinh.dat atan.dat atanh.dat comparisons.c conj.dat cos.dat cosh.dat div.dat div_fr.dat exp.dat fr_div.dat fr_sub.dat inp_str.dat log.dat memory.c mpc-tests.h mul.dat mul_fr.dat neg.dat norm.dat pow.dat proj.dat random.c read_data.c sin.dat sinh.dat sqr.dat sqrt.dat strtoc.dat sub.dat sub_fr.dat tabs.c tacos.c tacosh.c tadd.c tadd_fr.c tadd_ui.c tan.dat tanh.dat targ.c tasin.c tasinh.c tatan.c tatanh.c tconj.c tcos.c tcosh.c tdiv.c tdiv_2exp.c tdiv_fr.c tdiv_ui.c texp.c tfr_div.c tfr_sub.c tgeneric.c tget_version.c timag.c tio_str.c tlog.c tmul.c tmul_2exp.c tmul_fr.c tmul_i.c tmul_si.c tmul_ui.c tneg.c tnorm.c tpow.c tpow_d.c tpow_fr.c tpow_ld.c tpow_si.c tpow_ui.c tpow_z.c tprec.c tproj.c treal.c treimref.c tset.c tsin.c tsinh.c tsqr.c tsqrt.c tstrtoc.c tsub.c tsub_fr.c tsub_ui.c ttan.c ttanh.c tui_div.c tui_ui_sub.c cm3/m3-sys/m3cc/gcc-4.5/libcpp/po/: ChangeLog be.gmo ca.gmo cpplib.pot da.gmo de.gmo el.gmo es.gmo fi.gmo fi.po fr.gmo id.gmo ja.gmo nl.gmo sv.gmo tr.gmo uk.gmo vi.gmo zh_CN.gmo zh_TW.gmo cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/: decBasic.c decCommon.c decContext.c decDouble.c decExcept.c decLibrary.c decNumber.c decPacked.c decQuad.c decRound.c decSingle.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/bid/: bid2dpd_dpd2bid.c decimal128.c decimal32.c decimal64.c host-ieee128.c host-ieee32.c host-ieee64.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/dpd/: decimal128.c decimal32.c decimal64.c cm3/m3-sys/m3cc/gcc-4.5/zlib/: adler32.c compress.c crc32.c deflate.c example.c gzio.c infback.c inffast.c inflate.c inftrees.c minigzip.c trees.c uncompr.c zutil.c Log message: mpc is only for complex numbers useless to us change the gcc code to not reference mpc mpfr is entirely or almost entirely for implementing "builtin" functions, like sin/cos, etc. also useless to us change the gcc code to not reference mpfr Only a small amount of gmp is used. In particular, the following are not used: *rand*, mpbsd, mpf (float), mpq (rational), printf, scanf, none of the assembly code So drastically trim gmp. While at it, also remove the zlib dependency that we don't use. It is for compressing LTO objects. We don't make those. And trim libdecnumber. Trim configure options in gmp, like how to allocate, building shared, asserts, etc. Todo: look into the "dumbmp.c" subset. dumbmp.c is an existant file in gmp used by the "generator" programs, with a simple portable subset of gmp. From jkrell at elego.de Sun Sep 26 15:55:00 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135500.150A32474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:55:00 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h gmp-h.in Log message: go back a version From jkrell at elego.de Sun Sep 26 15:56:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:56:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135638.E08B72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:56:38 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h Log message: remove #include fib_table.h again (very late edits weren't tested, but the vast vast majority was) From jkrell at elego.de Sun Sep 26 16:02:02 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140202.D21CB2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:02 Removed files: cm3/m3-sys/m3cc/gcc/mpc/doc/: mpc.info cm3/m3-sys/m3cc/gcc/mpfr/: AUTHORS BUGS COPYING COPYING.LIB ChangeLog FAQ.html INSTALL Makefile.am Makefile.in NEWS PATCHES README TODO VERSION abort_prec_max.c acinclude.m4 aclocal.m4 acos.c acosh.c add.c add1.c add1sp.c add_ui.c agm.c ansi2knr.1 ansi2knr.c asin.c asinh.c atan.c atan2.c atanh.c cache.c cbrt.c check.c clear.c clears.c cmp.c cmp2.c cmp_abs.c cmp_d.c cmp_ld.c cmp_si.c cmp_ui.c comparisons.c config.guess config.sub configure configure.in const_catalan.c const_euler.c const_log2.c const_pi.c constant.c copysign.c cos.c cosh.c cot.c coth.c csc.c csch.c depcomp dim.c div.c div_2exp.c div_2si.c div_2ui.c div_ui.c dump.c eint.c eq.c erf.c erfc.c exceptions.c exp.c exp10.c exp2.c exp3.c exp_2.c expm1.c extract.c factorial.c fdl.texi fits_intmax.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_uintmax.c fits_ulong.c fits_ushort.c fma.c fms.c frac.c free_cache.c gamma.c gen_inverse.h generic.c get_d.c get_d64.c get_exp.c get_f.c get_ld.c get_patches.c get_patches.sh get_si.c get_sj.c get_str.c get_ui.c get_uj.c get_z.c get_z_exp.c gmp_op.c hypot.c init.c init2.c inits.c inits2.c inp_str.c install-sh int_ceil_log2.c isinf.c isinteger.c isnan.c isnum.c isqrt.c iszero.c jn.c jyn_asympt.c lngamma.c log.c log10.c log1p.c log2.c logging.c ltmain.sh minmax.c missing mp_clz_tab.c mparam_h.in mpf2mpfr.h mpfr-gmp.c mpfr-gmp.h mpfr-impl.h mpfr-longlong.h mpfr-thread.h mpfr.h mpfr.info mpfr.texi mpn_exp.c mul.c mul_2exp.c mul_2si.c mul_2ui.c mul_ui.c mulders.c neg.c next.c out_str.c pow.c pow_si.c pow_ui.c pow_z.c powerof2.c print_raw.c print_rnd_mode.c random.c random2.c reldiff.c remquo.c rint.c root.c round_near_x.c round_p.c round_prec.c round_raw_generic.c sec.c sech.c set.c set_d.c set_d64.c set_dfl_prec.c set_exp.c set_f.c set_inf.c set_ld.c set_nan.c set_prc_raw.c set_prec.c set_q.c set_rnd.c set_si.c set_si_2exp.c set_sj.c set_str.c set_str_raw.c set_ui.c set_ui_2exp.c set_uj.c set_z.c setmax.c setmin.c setsign.c sgn.c si_op.c signbit.c sin.c sin_cos.c sinh.c sqr.c sqrt.c sqrt_ui.c stack_interface.c strtofr.c sub.c sub1.c sub1sp.c sub_ui.c subnormal.c sum.c swap.c tan.c tanh.c texinfo.tex tuneup.c uceil_exp2.c uceil_log2.c ufloor_log2.c ui_div.c ui_pow.c ui_pow_ui.c ui_sub.c urandomb.c version.c volatile.c yn.c zeta.c zeta_ui.c cm3/m3-sys/m3cc/gcc/mpfr/tests/: Makefile.am Makefile.in cmp_str.c inp_str.data memory.c mpf_compat.c mpf_compat.h mpfr-test.h mpfr_compat.c reuse.c rnd_mode.c tabs.c tacos.c tacosh.c tadd.c tadd1sp.c tadd_ui.c tagm.c tasin.c tasinh.c tatan.c tatanh.c tcan_round.c tcbrt.c tcheck.c tcmp.c tcmp2.c tcmp_d.c tcmp_ld.c tcmp_ui.c tcmpabs.c tcomparisons.c tconst_catalan.c tconst_euler.c tconst_log2.c tconst_pi.c tcopysign.c tcos.c tcosh.c tcot.c tcoth.c tcsc.c tcsch.c tdim.c tdiv.c tdiv_ui.c teint.c teq.c terf.c tests.c texceptions.c texp.c texp10.c texp2.c texpm1.c tfactorial.c tfits.c tfma.c tfms.c tfrac.c tgamma.c tgeneric.c tgeneric_ui.c tget_d.c tget_d_2exp.c tget_f.c tget_ld_2exp.c tget_set_d64.c tget_sj.c tget_str.c tget_z.c tgmpop.c thyperbolic.c thypot.c tinits.c tinp_str.c tinternals.c tisnan.c tisqrt.c tj0.c tj1.c tjn.c tl2b.c tlgamma.c tlngamma.c tlog.c tlog10.c tlog1p.c tlog2.c tminmax.c tmul.c tmul_2exp.c tmul_ui.c tnext.c tout_str.c toutimpl.c tpow.c tpow3.c tpow_all.c tpow_z.c trandom.c tremquo.c trint.c troot.c tround_prec.c tsec.c tsech.c tset.c tset_d.c tset_exp.c tset_f.c tset_ld.c tset_q.c tset_si.c tset_sj.c tset_str.c tset_z.c tsgn.c tsi_op.c tsin.c tsin_cos.c tsinh.c tsqr.c tsqrt.c tsqrt_ui.c tstckintc.c tstrtofr.c tsub.c tsub1sp.c tsub_ui.c tsubnormal.c tsum.c tswap.c ttan.c ttanh.c ttrunc.c tui_div.c tui_pow.c tui_sub.c tversion.c ty0.c ty1.c tyn.c tzeta.c tzeta_ui.c Log message: forgotten deletes From jkrell at elego.de Sun Sep 26 16:02:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140224.C60472474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:24 Modified files: cm3/m3-sys/m3cc/src/: clean_marker.txt Log message: trigger clean build From jkrell at elego.de Sun Sep 26 16:35:15 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:35:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926143516.082752474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:35:15 Modified files: cm3/m3-sys/m3cc/gcc/: configure configure.ac cm3/m3-sys/m3cc/gcc/gcc/: builtins.c real.c real.h toplev.c Log message: remove mpfr dependency from 4.3 as well, and it successfully links with the reduce gmp From jkrell at elego.de Sun Sep 26 16:48:03 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:48:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926144804.062692474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:48:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa-ccp.c Log message: Go back a version -- preserve builtins for the C compiler. No affect on gmp/mpfr/mpc dependency. From jkrell at elego.de Sun Sep 26 16:52:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:52:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926145238.7FEF72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:52:38 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: fold-const.c Log message: go back a version, the #define for do_mpc_arg2 should make it equivalent From jkrell at elego.de Tue Sep 28 12:55:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105507.D8BF42474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:07 Removed files: cm3/m3-sys/m3gdb/gdb/sim/: Makefile.in README-HACKING configure.ac ChangeLog MAINTAINERS configure cm3/m3-sys/m3gdb/gdb/sim/mips/: Makefile.in m16.dc config.in m16.igen mips3264r2.igen cp1.h vr.igen configure.ac m16run.c interp.c dv-tx3904tmr.c cp1.c tconfig.in acconfig.h dv-tx3904sio.c mdmx.igen tx.igen m16e.igen sim-main.c sim-main.h dv-tx3904cpu.c mips.dc dv-tx3904irc.c ChangeLog mips3d.igen mips.igen sb1.igen configure mdmx.c cm3/m3-sys/m3gdb/gdb/sim/frv/: profile-fr550.c arch.c profile-fr500.c Makefile.in profile-fr500.h frv-sim.h config.in README configure.ac pipeline.c decode.h cache.h TODO traps.c profile-fr450.c tconfig.in options.c cpuall.h profile.c frv.c cache.c cpu.c arch.h sim-main.h profile-fr400.h sem.c mloop.in profile.h registers.h registers.c interrupts.c cpu.h profile-fr550.h profile-fr400.c ChangeLog reset.c configure sim-if.c decode.c model.c devices.c memory.c cm3/m3-sys/m3gdb/gdb/sim/ppc/: psim.h ld-cache.c idecode_branch.h cap.h emul_unix.c emul_netbsd.c Makefile.in altivec_registers.h lf.h emul_bugapi.c pk_disklabel.c ld-decode.c hw_cpu.h idecode_fields.h bits.h aclocal.m4 dc-complex hw_cpu.c BUGS config.in table.h filter_filename.h inline.c gen-icache.h hw_vm.c README INSTALL device_table.c gen-support.h vm.c hw_memory.c gen-model.h filter.c vm_n.h emul_generic.h .gdbinit configure.ac hw_disk.c ld-decode.h e500.igen device_table.h corefile-n.h mon.c debug.h gdb-sim.c tree.h ppc.mt dc-stupid dgen.c sim-endian.h igen.c sim-endian.c filter.h mon.h hw_core.c ppc-spr-table acconfig.h hw_htab.c options.c gen-itable.h idecode_expression.h ppc-instructions os_emul.c emul_bugapi.h hw_com.c dc-test.01 corefile.c dc-simple debug.c hw_glue.c interrupts.h gen-model.c misc.h corefile.h sim_calls.c gen-support.c ld-insn.c events.h ChangeLog.00 words.h gen-idecode.c tree.c cpu.c device.c std-config.h gen-idecode.h hw_trace.c igen.h altivec_expression.h table.c ld-cache.h sim-main.h gen-semantics.c sim-endian-n.h hw_eeprom.c hw_nvram.c COPYING.LIB filter_filename.c bits.c os_emul.h inline.h hw_opic.c cap.c emul_chirp.h hw_phb.c emul_chirp.c hw_init.c registers.h gen-icache.c emul_generic.c registers.c interrupts.c RUN cpu.h emul_netbsd.h ChangeLog main.c hw_register.c hw_iobus.c sim_callbacks.h dc-test.02 events.c gen-semantics.h ld-insn.h configure hw_ide.c lf.c psim.c gen-itable.c double.c misc.c e500_registers.h device.h psim.texinfo dp-bit.c altivec.igen e500_expression.h options.h basics.h hw_phb.h vm.h COPYING hw_pal.c emul_unix.h cm3/m3-sys/m3gdb/gdb/sim/v850/: Makefile.in simops.c config.in configure.ac v850-dc interp.c acconfig.h v850_sim.h sim-main.h ChangeLog v850.igen simops.h configure cm3/m3-sys/m3gdb/gdb/sim/d10v/: Makefile.in simops.c config.in endian.c configure.ac interp.c acconfig.h d10v_sim.h ChangeLog configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/sh/: Makefile.in config.in configure.ac interp.c tconfig.in acconfig.h ChangeLog syscall.h configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/m32r/: arch.c Makefile.in m32r.c traps-linux.c cpux.h config.in README mloop2.in semx-switch.c modelx.c decodex.h model2.c m32r2.c configure.ac decode.h TODO traps.c tconfig.in acconfig.h decodex.c decode2.c cpuall.h decode2.h cpux.c cpu.c arch.h m32rx.c sim-main.h sem2-switch.c cpu2.c sem.c mloop.in cpu.h ChangeLog syscall.h configure sim-if.c decode.c model.c mloopx.in cpu2.h sem-switch.c devices.c m32r-sim.h cm3/m3-sys/m3gdb/gdb/sim/mn10300/: Makefile.in config.in dv-mn103int.c configure.ac interp.c tconfig.in acconfig.h op_utils.c am33-2.igen sim-main.c sim-main.h mn10300_sim.h dv-mn103tim.c dv-mn103ser.c ChangeLog dv-mn103iop.c am33.igen configure dv-mn103cpu.c mn10300.dc mn10300.igen cm3/m3-sys/m3gdb/gdb/sim/common/: cgen-trace.h sim-utils.h sim-utils.c Makefile.in sim-base.h hw-alloc.c sim-run.c sim-module.c cgen-par.h hw-properties.h sim-events.c sim-config.h hw-alloc.h sim-bits.c aclocal.m4 cgen-scache.h sim-info.c config.in cgen-scache.c sim-bits.h hw-handles.h sim-module.h cgen-utils.c hw-properties.c sim-load.c sim-io.c gentvals.sh sim-reg.c dv-core.c hw-instances.h nltvals.def callback.c configure.ac cgen-trace.c hw-tree.c sim-options.h sim-n-core.h gdbinit.in cgen-fpu.c Make-common.in hw-base.c sim-inline.c hw-events.h sim-endian.h sim-core.h sim-endian.c cgen.sh sim-watch.h tconfig.in acconfig.h sim-hload.c sim-trace.c sim-hrw.c sim-signal.h sim-reason.c sim-memopt.c sim-assert.h sim-abort.c sim-profile.h sim-cpu.h cgen-run.c sim-profile.c genmloop.sh cgen-sim.h sim-cpu.c sim-alu.h sim-options.c sim-model.h sim-model.c sim-inline.h run.1 cgen-fpu.h hw-device.h sim-stop.c gennltvals.sh sim-config.c dv-pal.c sim-engine.c cgen-types.h cgen-par.c gentmap.c sim-n-bits.h run-sim.h hw-ports.h cgen-cpu.h sim-signal.c dv-sockser.h sim-events.h cgen-engine.h sim-arange.h hw-instances.c cgen-ops.h sim-memopt.h ChangeLog sim-types.h nrun.c cgen-mem.h dv-sockser.c sim-hw.c sim-basics.h sim-fpu.c hw-ports.c sim-engine.h sim-trace.h sim-hw.h configure hw-handles.c sim-n-endian.h sim-resume.c hw-base.h hw-tree.h common.m4 syscall.c hw-main.h dv-glue.c sim-core.c hw-events.c hw-device.c sim-watch.c cgen-defs.h run.c sim-io.h cgen-accfp.c sim-arange.c sim-fpu.h cm3/m3-sys/m3gdb/gdb/sim/mcore/: Makefile.in config.in configure.ac interp.c sysdep.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/cris/: arch.c Makefile.in cris-opc.h modelv32.c crisv32f.c config.in semcrisv32f-switch.c cris-desc.c cris-desc.h configure.ac decodev32.c traps.c crisv10f.c tconfig.in decodev32.h cpuall.h cpuv10.h cpuv32.h decodev10.h arch.h sim-main.h mloop.in cpuv32.c semcrisv10f-switch.c cpuv10.c configure sim-if.c cris-tmpl.c modelv10.c decodev10.c devices.c cris-sim.h cm3/m3-sys/m3gdb/gdb/sim/h8300/: inst.h Makefile.in compile.c config.in configure.ac tconfig.in acconfig.h writecode.c sim-main.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/d10v-elf/: t-ae-st-i.s t-ae-st-d.s t-ae-ld2w-id.s Makefile.in t-ae-ld-id.s t-ld-st.s t-rac.s t-sub2w.s t-rdt.s t-ae-st2w-d.s t-macros.i t-ae-ld2w-ip.s loop.s t-subi.s t-slae.s t-mulxu.s configure.ac t-rep.s t-ae-ld2w-im.s t-mac.s t-mvtc.s t-ae-ld2w-i.s t-msbu.s t-sac.s t-dbt.s t-ae-st2w-id.s hello.s t-ae-st-is.s t-rie-xx.s t-sub.s t-ae-ld-i.s t-ae-ld2w-d.s t-mvtac.s t-mod-ld-pre.s t-ae-st-id.s t-trap.s t-ae-ld-im.s t-ae-st-ip.s t-rte.s t-ae-st-im.s t-sachi.s t-sp.s t-ae-ld-ip.s t-ae-ld-d.s ChangeLog t-rachi.s exit47.s configure t-ae-st2w-i.s t-ae-st2w-is.s t-ae-st2w-ip.s t-ae-st2w-im.s t-sadd.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/lib/: sim-defs.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/m32r-elf/: Makefile.in loop.s configure.ac hello.s ChangeLog exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/mips/: mdmx-ob.s testutils.inc fpu64-ps-sb1.s utils-mdmx.inc fpu64-ps.s hilo-hazard-1.s hilo-hazard-2.s utils-fpu.inc basic.exp sanity.s hilo-hazard-3.s mdmx-ob-sb1.s ChangeLog cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/: cldsh.cgs bclslr.cgs fcku.cgs mcutss.cgs mqsllhi.cgs ldi.cgs bgelr.cgs nandcr.cgs umulicc.cgs cor.cgs nfadds.cgs fdmovs.cgs fcbolr.cgs cmmulhs.cgs orncr.cgs ftino.cgs cfckle.cgs clrfr.cgs cldhfu.cgs teq.cgs cmcpxiu.cgs scani.cgs commitfr.cgs stf.cgs nfdcmps.cgs csth.cgs setlos.cgs ftug.cgs jmpl.pcgs swapi.cgs stqc.cgs ftiu.cgs csthf.cgs corcc.cgs nlduhu.cgs stbfu.cgs stc.cgs tils.cgs ldfu.cgs fcbuelr.cgs cfmas.cgs fmsubd.cgs bcnclr.cgs cstdf.cgs mmulxhu.cgs mcmpuh.cgs fcbugelr.cgs bno.cgs cadd.cgs scan.cgs bra.cgs stqf.cgs ftiug.cgs testutils.inc fbuglr.cgs fcbulelr.cgs stfi.cgs ldqi.cgs fbule.cgs tin.cgs fckne.cgs fcbuglr.cgs tilt.cgs fbge.cgs lddi.cgs xor.cgs dci.cgs cfckno.cgs cldfu.cgs sll.cgs call.pcgs fitos.cgs tls.cgs cldbfu.cgs tira.cgs fnop.cgs mcpxiu.cgs nldqf.cgs mtrap.cgs mpackh.cgs csllcc.cgs maddhus.cgs cknc.cgs cstu.cgs sllcc.cgs cldshu.cgs or.cgs cfmss.cgs cmovfgd.cgs cmovfg.cgs cmpba.cgs ble.cgs fbue.cgs ldshu.cgs bclr.cgs fcbnelr.cgs fddivs.cgs tnc.cgs cfadds.cgs ldubu.cgs stqfi.cgs mand.cgs cldubu.cgs fsqrts.cgs movgs.cgs mqxmacxhs.cgs umuli.cgs fmad.cgs tno.cgs ccalll.cgs st.cgs subi.cgs cldf.cgs msrlhi.cgs ftilt.cgs ftlg.cgs bnelr.cgs mrdaccg.cgs cmsubhus.cgs movfgq.cgs mcplhi.cgs fbuge.cgs ftgt.cgs cfcmps.cgs xoricc.cgs lduhi.cgs candcc.cgs sracc.cgs notcr.cgs fcmpd.cgs mqmachu.cgs cldsb.cgs bp.cgs nldbfu.cgs tge.cgs stdc.cgs movgfd.cgs cnot.cgs blt.cgs ldf.cgs stbi.cgs ckls.cgs cckne.cgs nldubi.cgs cfdivs.cgs cldu.cgs mcut.cgs addxcc.cgs caddcc.cgs mexpdhw.cgs mqcpxis.cgs srlcc.cgs mwcut.cgs bge.cgs mhdsets.cgs add.pcgs addicc.cgs ftue.cgs rett.cgs nfdivs.cgs ldcu.cgs msubhus.cgs nfstoi.cgs mdaddaccs.cgs fdtoi.cgs cldhf.cgs fckeq.cgs nfsqrts.cgs mmulhs.cgs nldhfi.cgs cmpb.cgs csll.cgs fdsqrts.cgs cklt.cgs mbtohe.cgs nldfu.cgs cckge.cgs bcltlr.cgs umul.cgs fbug.cgs cudiv.cgs cmsubhss.cgs lddu.cgs mxor.cgs blelr.cgs mqmulxhu.cgs nlddfi.cgs fckul.cgs fmuls.cgs ldbfu.cgs lddfi.cgs bcralr.cgs subicc.cgs ckno.cgs nldsh.cgs cstb.cgs tige.cgs cckn.cgs thi.cgs fckra.cgs ldqu.cgs fdmuls.cgs mrdacc.cgs csdiv.cgs dcef.cgs nfitos.cgs addcc.cgs addxicc.cgs sthu.cgs cfcklg.cgs msrahi.cgs ckle.cgs calll.cgs nfditos.cgs blslr.cgs jmpil.cgs stdfi.cgs fdsads.cgs stq.pcgs mqcpxru.cgs fmuld.cgs stfu.cgs cfcklt.cgs fdivs.cgs ftine.cgs cmbtohe.cgs mmulhu.cgs nldf.cgs nlddu.cgs mcmpsh.cgs cfmovs.cgs ldsbi.cgs movsg.cgs tinv.cgs smulcc.cgs nldqu.cgs ccknv.cgs nldshi.cgs fto.cgs movgf.cgs stdf.pcgs cldqu.cgs mqsaths.cgs sthf.cgs stdfu.cgs fbgtlr.cgs tgt.cgs cop1.cgs nfmadds.cgs udiv.cgs cmcpxru.cgs nldsbi.cgs fbul.cgs callil.cgs tiv.cgs addx.cgs fblelr.cgs faddd.cgs msllhi.cgs cckgt.cgs mcuti.cgs mqmulhu.cgs nlddi.cgs fbnolr.cgs fckno.cgs mmachs.cgs ldqcu.cgs stu.cgs mnop.cgs nlddfu.cgs nfdsads.cgs fblg.cgs ret.cgs andicc.cgs clddu.cgs stq.cgs fbra.cgs smulicc.cgs mhtob.cgs and.cgs cstf.cgs subxi.cgs nfdadds.cgs mrotli.cgs csrlcc.cgs addi.cgs cmqmulhu.cgs cfckeq.cgs stbfi.cgs parallel.exp cfmsubs.cgs ldsb.cgs cckeq.cgs mabshs.cgs tinc.cgs nfdsubs.cgs cld.cgs csubcc.cgs tp.cgs cfsqrts.cgs bcnelr.cgs bnvlr.cgs branch.pcgs fcko.cgs clrgr.cgs sethi.cgs mqmulxhs.cgs ftiul.cgs mdunpackh.cgs nfdsqrts.cgs mqlclrhs.cgs mmulxhs.cgs fbulr.cgs xorcr.cgs ldubi.cgs cstbu.cgs fsubs.cgs fbuelr.cgs ld.cgs cfcko.cgs fcbullr.cgs cmmachu.cgs mmrdhs.cgs bctrlr.cgs bgt.cgs cmcpxis.cgs fditos.cgs cmov.cgs csra.cgs ftra.cgs srl.cgs srli.cgs fadds.cgs fcklt.cgs cfsubs.cgs fbralr.cgs subx.cgs cmpi.cgs tile.cgs fmas.cgs subcc.cgs mnot.cgs stqu.cgs tlt.cgs fmsd.cgs nldbfi.cgs cfitos.cgs nfsubs.cgs mcpxis.cgs add.cgs fnegd.cgs sdivi.cgs tc.cgs sthfu.cgs mdasaccs.cgs cfckul.cgs cldbf.cgs nfmsubs.cgs ldqc.cgs ldqfu.cgs nld.cgs fnegs.cgs clduhu.cgs bnc.cgs nfmss.cgs nandncr.cgs ldc.cgs fdmss.cgs lddf.cgs lddcu.cgs mmachu.cgs nldhfu.cgs cckc.cgs cmovgf.cgs cckls.cgs call.cgs smul.cgs cckle.cgs ckc.cgs sthfi.cgs bn.cgs mexpdhd.cgs bc.cgs fckge.cgs andcr.cgs bv.cgs cstd.cgs ldhfu.cgs fdmulcs.cgs fmaddd.cgs mqcpxiu.cgs bcclr.cgs mwtaccg.cgs not.cgs fcbeqlr.cgs ftge.cgs nlduhi.cgs fdivd.cgs stdcu.cgs cmaddhus.cgs fbgelr.cgs mov.cgs stdi.cgs ldsbu.cgs swap.cgs lduhu.cgs ftige.cgs bls.cgs mmrdhu.cgs cstbf.cgs stdf.cgs bgtlr.cgs tine.cgs cckv.cgs mhsethih.cgs ccknc.cgs cfckue.cgs cstdu.cgs nsdivi.cgs fbullr.cgs umulcc.cgs cmhtob.cgs sraicc.cgs nudivi.cgs cmqmachu.cgs fcbgtlr.cgs csmulcc.cgs ldub.cgs mcpxru.cgs cmbtoh.cgs cjmpl.cgs norncr.cgs fbugelr.cgs fcbnolr.cgs beqlr.cgs fitod.cgs nfdmuls.cgs fdstoi.cgs srai.cgs ldqf.cgs fabss.cgs mqsrahi.cgs lddfu.cgs tihi.cgs mqcpxrs.cgs mor.cgs ldd.cgs bcvlr.cgs nldq.cgs ldhf.cgs icei.cgs cst.cgs bceqlr.cgs srlicc.cgs ccmp.cgs mdcutssi.cgs cfckne.cgs lddc.cgs ldsh.cgs sub.cgs mdpackh.cgs fckue.cgs ori.cgs cmqmachs.cgs ftne.cgs nldub.cgs cand.cgs nldi.cgs mqmulhs.cgs ckp.cgs norcr.cgs cxor.cgs cldd.cgs nop.cgs mdrotli.cgs xorcc.cgs fckule.cgs dcf.cgs mcop2.cgs tnv.cgs clrfa.cgs fbno.cgs slli.cgs ldqfi.cgs stqi.cgs icpl.cgs nldqfi.cgs bnolr.cgs movfg.cgs cfabss.cgs stbu.cgs orcr.cgs bnv.cgs ici.cgs ftuge.cgs movgfq.cgs ckgt.cgs cxorcc.cgs nldfi.cgs nfddivs.cgs tra.cgs stdu.cgs mqlmths.cgs mqmachs.cgs bnlr.cgs ccklt.cgs ftlt.cgs fcbralr.cgs ckeq.cgs cstdfu.cgs bhi.cgs fsqrtd.cgs stbf.cgs fbgt.cgs cckhi.cgs fdcmps.cgs msathu.cgs fbne.cgs tne.cgs andi.cgs fdnegs.cgs bar.cgs ftile.cgs fdmas.cgs bvlr.cgs jmpl.cgs sllicc.cgs bcnolr.cgs bhilr.cgs fsubd.cgs cknv.cgs nlduh.cgs msubhss.cgs cldub.cgs cfstoi.cgs ldbfi.cgs mcpxrs.cgs ftule.cgs nldubu.cgs munpackh.cgs bcnlr.cgs tn.cgs clrga.cgs stqc.pcgs stdc.pcgs mqxmachs.cgs nfdmadds.cgs fckuge.cgs stqf.pcgs sthi.cgs cmor.cgs ldu.cgs cmmachs.cgs sdiv.cgs cstbfu.cgs fcbgelr.cgs ftieq.cgs oricc.cgs cfmuls.cgs csub.cgs cmp.cgs movfgd.cgs nldhf.cgs mwtacc.cgs fteq.cgs smuli.cgs fcblelr.cgs cfckgt.cgs andncr.cgs fstoi.cgs csthu.cgs cfckug.cgs mhsetloh.cgs maveh.cgs ckhi.cgs fcblglr.cgs mhsethis.cgs cscan.cgs fdsubs.cgs tino.cgs stqcu.cgs csmul.cgs fbulelr.cgs subxcc.cgs ftiuge.cgs nfdmulcs.cgs ftiue.cgs fmadds.cgs ftu.cgs tic.cgs nudiv.cgs cmexpdhw.cgs stb.cgs ldhfi.cgs fbeqlr.cgs ldshi.cgs clddfu.cgs break.cgs bcnvlr.cgs cldq.cgs setlo.cgs lrbranch.pcgs subxicc.cgs ftio.cgs ckra.cgs nldd.cgs bcgelr.cgs nfdmas.cgs cmaddhss.cgs fble.cgs bnclr.cgs ckne.cgs cfckge.cgs cfckule.cgs addxi.cgs cfckuge.cgs sth.cgs ftno.cgs fdabss.cgs cop2.cgs fblglr.cgs fbolr.cgs sra.cgs ldq.cgs commitga.cgs cmexpdhd.cgs nfdstoi.cgs cstq.cgs maddhss.cgs interrupts.exp mwcuti.cgs nfmuls.cgs csthfu.cgs cmnot.cgs tieq.cgs ckn.cgs mclracc.cgs fcmps.cgs std.pcgs bchilr.cgs nlddf.cgs ldbf.cgs bltlr.cgs cswap.cgs cldsbu.cgs ftul.cgs fabsd.cgs commitfa.cgs fbltlr.cgs tv.cgs ftilg.cgs cfckra.cgs fbnelr.cgs fcklg.cgs bclelr.cgs ckge.cgs sti.cgs fdadds.cgs fckug.cgs nldshu.cgs udivi.cgs nldsb.cgs std.cgs ftigt.cgs clduh.cgs fblt.cgs mcutssi.cgs tip.cgs csracc.cgs fcbulr.cgs cmand.cgs csrl.cgs clddf.cgs ftira.cgs fmovs.cgs nldbf.cgs mcpli.cgs fckgt.cgs tigt.cgs nfmas.cgs fmss.cgs cmmulhu.cgs cmcpxrs.cgs bne.cgs bcplr.cgs stcu.cgs lduh.cgs fdmadds.cgs cckp.cgs tle.cgs allinsn.exp ldfi.cgs fbo.cgs mrotri.cgs andcc.cgs cckra.cgs fmovd.cgs cmqmulhs.cgs fmsubs.cgs dcei.cgs nldqfu.cgs orcc.cgs nfdmss.cgs bcgtlr.cgs mhsetlos.cgs cfnegs.cgs sethilo.pcgs fckle.cgs mdsubaccs.cgs fcbltlr.cgs membar.cgs beq.cgs mbtoh.cgs ftle.cgs stqfu.cgs icul.cgs mhdseth.cgs nldsbu.cgs bralr.cgs msaths.cgs nsdiv.cgs cmovgfd.cgs nldu.cgs cckno.cgs mqmacxhs.cgs commitgr.cgs fbeq.cgs cfmadds.cgs cstfu.cgs ckv.cgs cmxor.cgs xori.cgs fbu.cgs mcop1.cgs cfcku.cgs bplr.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/interrupts/: fp_exception.cgs data_store_error-fr550.cgs Ipipe-fr400.cgs shadow_regs.cgs timer.cgs compound.cgs illinsn.cgs badalign.cgs data_store_error.cgs regalign.cgs mp_exception.cgs compound-fr550.cgs insn_access_error.cgs badalign-fr550.cgs reset.cgs insn_access_error-fr550.cgs privileged_instruction.cgs Ipipe-fr500.cgs fp_exception-fr550.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr400/: smu.cgs slass.cgs movgs.cgs subss.cgs masaccs.cgs mhdsets.cgs smass.cgs csdiv.cgs movsg.cgs udiv.cgs sdivi.cgs scutss.cgs mhsethih.cgs addss.cgs sdiv.cgs mhsetloh.cgs maveh.cgs mhsethis.cgs maddaccs.cgs mclracc.cgs udivi.cgs msubaccs.cgs allinsn.exp smsss.cgs mhsetlos.cgs mhdseth.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr550/: cmcpxiu.cgs mqaddhss.cgs mtrap.cgs maddhus.cgs mqaddhus.cgs mqxmacxhs.cgs cmsubhus.cgs mqmachu.cgs masaccs.cgs msubhus.cgs mdaddaccs.cgs cmsubhss.cgs cmqaddhss.cgs udiv.cgs cmcpxru.cgs mmachs.cgs mabshs.cgs mqsubhus.cgs cmmachu.cgs mmrdhs.cgs mdasaccs.cgs mmachu.cgs cmaddhus.cgs cmqsubhss.cgs mmrdhu.cgs cmqmachu.cgs cmqmachs.cgs mqmachs.cgs mqsubhss.cgs msubhss.cgs dcul.cgs mqxmachs.cgs dcpl.cgs cmmachs.cgs cmqaddhus.cgs cmqsubhus.cgs cmaddhss.cgs maddaccs.cgs maddhss.cgs udivi.cgs msubaccs.cgs allinsn.exp mdsubaccs.cgs mqmacxhs.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr500/: mqaddhss.cgs mqaddhus.cgs cmqaddhss.cgs mqsubhus.cgs cmqsubhss.cgs mqsubhss.cgs dcul.cgs dcpl.cgs cmqaddhus.cgs cmqsubhus.cgs mclracc.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/fr30/: cmp2.cgs addsp.cgs copld.cgs borl.cgs stm0.cgs ldi32.cgs extsh.cgs mulh.cgs bno.cgs bra.cgs testutils.inc eorh.cgs jmp.cgs addn.cgs or.cgs ble.cgs st.cgs subc.cgs eorb.cgs asr.cgs stm1.cgs bp.cgs asr2.cgs blt.cgs ldm1.cgs bge.cgs lsr2.cgs subn.cgs ldres.cgs stilm.cgs eor.cgs copst.cgs ret.cgs and.cgs div0u.cgs misc.exp div0s.cgs ld.cgs bgt.cgs btsth.cgs div.ms reti.cgs add.cgs mul.cgs div1.cgs extub.cgs bnc.cgs call.cgs bn.cgs bc.cgs ldi20.cgs bv.cgs bandl.cgs mov.cgs orccr.cgs dmovh.cgs bls.cgs add2.cgs ldub.cgs lsl2.cgs bandh.cgs leave.cgs addc.cgs sub.cgs nop.cgs ldm0.cgs copop.cgs lsr.cgs bnv.cgs mulu.cgs add.ms extsb.cgs div3.cgs andccr.cgs bhi.cgs div4s.cgs orb.cgs lsl.cgs extuh.cgs btstl.cgs cmp.cgs xchb.cgs muluh.cgs andb.cgs hello.ms stb.cgs div2.cgs sth.cgs ldi8.cgs beorl.cgs dmov.cgs stres.cgs enter.cgs copsv.cgs borh.cgs bne.cgs lduh.cgs dmovb.cgs allinsn.exp int.cgs addn2.cgs inte.cgs orh.cgs beq.cgs beorh.cgs andh.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/sh/: fpchg.s fcmpeq.s swap.s pshar.s macw.s fmov.s fail.s testutils.inc fcmpgt.s fsub.s shlr2.s pdmsb.s shlr16.s fcnvsd.s bst.s pshai.s fldi1.s mov.s div.s fdiv.s frchg.s loop.s macl.s fadd.s fcnvds.s shll.s padd.s clip.s pmuls.s add.s movxy.s pswap.s bset.s pabs.s bclr.s fneg.s movua.s movi.s mulr.s sett.s fsca.s prnd.s ldrc.s bxor.s pshli.s pushpop.s paddc.s fmul.s pshlr.s fipr.s fsqrt.s shll2.s dmxy.s pand.s pinc.s fldi0.s fschg.s shlr8.s shll16.s ftrc.s shlr.s movli.s ChangeLog bldnot.s pclr.s and.s pdec.s bandornot.s flds.s psub.s bandor.s resbank.s allinsn.exp pass.s fsrra.s bld.s shll8.s fabs.s fmac.s float.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/m32r/: mvfachi.cgs lock.cgs ld-d.cgs rem.cgs sra3.cgs testutils.inc jmp.cgs xor.cgs sll.cgs sll3.cgs bnez.cgs mvfc.cgs rac.cgs or.cgs bc8.cgs st.cgs st-minus.cgs subv.cgs cmpu.cgs srl3.cgs bl8.cgs lduh-d.cgs bra8.cgs st-d.cgs ldh-d.cgs bc24.cgs bgez.cgs mulwlo.cgs bra24.cgs uread32.ms addv3.cgs addx.cgs bltz.cgs ldi16.cgs and.cgs hw-trap.ms misc.exp seth.cgs addi.cgs mullo.cgs machi.cgs ld-plus.cgs ldb-d.cgs div.cgs jl.cgs ld.cgs srl.cgs srli.cgs subx.cgs cmpi.cgs remu.cgs rte.cgs add.cgs and3.cgs mul.cgs cmpui.cgs mvtaclo.cgs rach.cgs not.cgs macwhi.cgs ldb.cgs mvfaclo.cgs bnc24.cgs blez.cgs ldub.cgs srai.cgs add3.cgs stb-d.cgs mvtc.cgs sub.cgs divu.cgs nop.cgs slli.cgs ldh.cgs bnc8.cgs mv.cgs uwrite32.ms xor3.cgs bl24.cgs maclo.cgs cmp.cgs or3.cgs ld24.cgs mulhi.cgs hello.ms stb.cgs bgtz.cgs st-plus.cgs unlock.cgs sth.cgs sra.cgs ldi8.cgs sth-d.cgs macwlo.cgs uwrite16.ms trap.cgs neg.cgs mulwhi.cgs ldub-d.cgs bne.cgs lduh.cgs mvfacmi.cgs allinsn.exp mvtachi.cgs addv.cgs beqz.cgs beq.cgs uread16.ms cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/h8300/: orw.s subx.s movmd.s brabc.s testutils.inc addw.s mul.s subb.s subs.s xorl.s div.s dec.s subl.s inc.s tas.s adds.s shll.s rotxl.s bra.s movb.s biand.s shar.s addx.s bset.s ldm.s nop.s jmp.s movsd.s rotl.s extw.s andl.s mac.s shal.s movl.s neg.s subw.s stack.s not.s xorb.s stc.s movw.s band.s orl.s rotxr.s bfld.s xorw.s addb.s das.s cmpl.s shlr.s ChangeLog daa.s andw.s addl.s extl.s ldc.s cmpb.s orb.s cmpw.s allinsn.exp mova.s andb.s rotr.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/: teq.cgs rsb.cgs misaligned3.ms bx.cgs misaligned2.ms mrs.cgs testutils.inc umlal.cgs tst.cgs umull.cgs swi.cgs eor.cgs misaligned1.ms cmn.cgs ldm.cgs smlal.cgs ldrb.cgs bl.cgs and.cgs bic.cgs misc.exp b.cgs ldrsb.cgs add.cgs ldrsh.cgs mul.cgs swpb.cgs ldrh.cgs mvn.cgs mov.cgs stm.cgs ldr.cgs orr.cgs sub.cgs str.cgs msr.cgs sbc.cgs cmp.cgs strb.cgs strh.cgs hello.ms swp.cgs adc.cgs rsc.cgs mla.cgs smull.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/iwmmxt/: wror.cgs wsll.cgs tmia.cgs wmin.cgs testutils.inc wsad.cgs wsub.cgs tmiaxy.cgs wsrl.cgs wunpckel.cgs tmovmsk.cgs tbcst.cgs wcmpeq.cgs tinsr.cgs wzero.cgs textrm.cgs wxor.cgs wmax.cgs wsra.cgs wmul.cgs walignr.cgs wunpckil.cgs wpack.cgs wadd.cgs wmac.cgs wshufh.cgs wmadd.cgs wunpckih.cgs waligni.cgs wacc.cgs wcmpgt.cgs iwmmxt.exp wunpckeh.cgs wor.cgs wavg2.cgs wandn.cgs wmov.cgs wand.cgs tmiaph.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/thumb/: ldrb-imm.cgs ldr-sprel.cgs testutils.inc ble.cgs pop.cgs subi.cgs tst.cgs asr.cgs add-hd-rs.cgs swi.cgs blt.cgs bge.cgs mov-hd-rs.cgs pop-pc.cgs lda-pc.cgs eor.cgs push.cgs cmn.cgs ldr-imm.cgs str-sprel.cgs ldrb.cgs bcs.cgs bx-rs.cgs and.cgs bic.cgs cmp-hd-hs.cgs addi.cgs ldsb.cgs cmp-hd-rs.cgs b.cgs bgt.cgs bl-lo.cgs add.cgs bmi.cgs mul.cgs lda-sp.cgs ldrh.cgs mvn.cgs mov.cgs bls.cgs bvc.cgs ldr.cgs bvs.cgs orr.cgs ldsh.cgs sub.cgs strb-imm.cgs str.cgs push-lr.cgs lsr.cgs ldrh-imm.cgs subi8.cgs bhi.cgs strh-imm.cgs bl-hi.cgs bpl.cgs sbc.cgs lsl.cgs cmp-rd-hs.cgs add-rd-hs.cgs add-sp.cgs addi8.cgs sub-sp.cgs cmp.cgs strb.cgs strh.cgs bx-hs.cgs allthumb.exp adc.cgs ldmia.cgs stmia.cgs mov-hd-hs.cgs neg.cgs mov-rd-hs.cgs bcc.cgs bne.cgs ldr-pc.cgs str-imm.cgs add-hd-hs.cgs beq.cgs ror.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/xscale/: testutils.inc xscale.exp mra.cgs miaxy.cgs miaph.cgs blx.cgs mia.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/common/: alu-tst.c Makefile.in bits-gen.c Make-common.in fpu-tst.c bits-tst.c alu-n-tst.h cm3/m3-sys/m3gdb/gdb/sim/testsuite/config/: default.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/frv-elf/: Makefile.in loop.s configure.ac hello.s cache.s ChangeLog grloop.s exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/mips64el-elf/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/arm/: Makefile.in armfpe.h dbg_hif.h dbg_conf.h gdbhost.c armemu.c config.in README communicate.h bag.h communicate.c wrapper.c armsupp.c dbg_cp.h configure.ac arminit.c tconfig.in acconfig.h thumbemu.c armvirt.c armcopro.c armrdi.c maverick.c kid.c bag.c parent.c armdefs.h iwmmxt.c armos.c iwmmxt.h ChangeLog main.c armos.h configure armemu.h dbg_rdi.h armopts.h COPYING gdbhost.h cm3/m3-sys/m3gdb/gdb/sim/igen/: ld-cache.c Makefile.in lf.h gen-engine.h ld-decode.c gen.c filter_host.c config.in filter_host.h table.h gen-icache.h gen-support.h gen-model.h filter.c configure.ac ld-decode.h igen.c filter.h acconfig.h gen-itable.h gen-model.c misc.h gen-support.c ld-insn.c gen-idecode.c gen-idecode.h gen-engine.c igen.h table.c ld-cache.h gen-semantics.c gen.h gen-icache.c ChangeLog compare_igen_models gen-semantics.h ld-insn.h configure lf.c gen-itable.c misc.c cm3/m3-sys/m3gdb/gdb/sim/m68hc11/: Makefile.in dv-m68hc11eepr.c config.in dv-m68hc11tim.c configure.ac interp.c dv-m68hc11.c dv-m68hc11sio.c interrupts.h dv-nvram.c sim-main.h interrupts.c ChangeLog dv-m68hc11spi.c configure emulos.c gencode.c m68hc11_sim.c cm3/m3-sys/m3gdb/gdb/sim/erc32/: Makefile.in help.c config.in end.c README.sis configure.ac sis.h README.erc32 exec.c interf.c acconfig.h sis.c float.c erc32.c README.gdb ChangeLog NEWS startsim configure func.c cm3/m3-sys/m3gdb/gdb/sim/iq2000/: arch.c Makefile.in iq2000.c config.in configure.ac decode.h tconfig.in acconfig.h cpuall.h cpu.c arch.h sim-main.h iq2000-sim.h sem.c mloop.in cpu.h ChangeLog configure sim-if.c decode.c model.c sem-switch.c Log message: delete 30MB unused From jkrell at elego.de Tue Sep 28 12:55:19 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105519.D778D2474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:19 Removed files: cm3/m3-sys/m3cc/gcc/: MD5SUMS cm3/m3-sys/m3cc/gcc-4.5/: MD5SUMS Log message: delete 10MB unused From jkrell at elego.de Tue Sep 28 12:58:02 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:58:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105802.DA5C82474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:58:02 Removed files: cm3/m3-sys/m3gdb/gdb/: md5.sum Log message: delete paltry 300K unused From jkrell at elego.de Thu Sep 30 10:07:47 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 10:07:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930080747.B6ADECC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 10:07:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Let enums show properly in stock gdb. But disabled still, as it also leads to a crash. Oh the perils of the frontend/backend being oddly interfaced and both doing layout? From jkrell at elego.de Thu Sep 30 12:06:57 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:06:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930100657.EA3C82474003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:06:57 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: cm3cfg.common Log message: Reduce cm3cg probing to just INSTALL_ROOT/bin/cm3cg for native builds ROOT/m3-sys/m3cc/HOST/TARGET/cm3cg for cross builds "Later" (never?) we can think about "installed" cross builds. In particular, when I make m3cg interface changes, I get burned by reaching in for ROOT/m3-sys/m3cc/x/cm3cg. From jkrell at elego.de Thu Sep 30 12:55:16 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:55:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930105516.30182CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:55:16 Modified files: cm3/m3-sys/m3front/src/types/: ObjectType.m3 RefType.m3 Log message: make the comments unique From jkrell at elego.de Wed Sep 1 01:35:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:35:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831233535.B37C824740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:35:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: disable more new typing code at least for now; prototype (commented out) making all records addressable so they won't be passed in registers (given how we access the fields..), but before that I think we need to give types to temporaries From jkrell at elego.de Wed Sep 1 01:49:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:49:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831235002.15BE324740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:49:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only records/objects addressable, not all the other private stuff passed to m3gdb, suplib still not working From jkrell at elego.de Wed Sep 1 09:05:24 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 9:05:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901070524.345272474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 09:05:24 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 RegExpParse.m3 m3makefile Removed files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpTok.i3 RegExpTok.m3 Log message: reduce test case: a record with just integers is enough, we don't need opaque types From jkrell at elego.de Wed Sep 1 11:35:58 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:35:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093558.470F02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:35:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_boolstr => boolstr m3cg_typestr => typestr From jkrell at elego.de Wed Sep 1 11:36:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:36:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093654.753C02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:36:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove TREE_ADDRESSABLE prototype, working fix coming shortly From jkrell at elego.de Wed Sep 1 11:48:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:48:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094829.CA5AC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:48:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: just tracing changes From jkrell at elego.de Wed Sep 1 11:49:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:49:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094952.410362474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:49:52 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: try again: better type information -- this time remember to call layout_type, so that when passing a struct by value, the entire thing is passed! From jkrell at elego.de Wed Sep 1 11:53:17 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:53:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901095317.9AAEC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:53:17 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: arg, don't yet assert that frontend and backend agree on record sizes -- they don't! From jkrell at elego.de Wed Sep 1 13:53:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 13:53:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901115347.A17642474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 13:53:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Still trying to get well-typed trees, and record sizes that agree between backend and frontend. They don't agree currently for multiple reasons, so remove the types again. They don't agree: - undefined types are used - types are used before defined (e.g. RT0.TypeDefn is seen in RT0.Typecell before it defined, compiling RTType.m3) - backend seems to be giving an entire word where just a byte is wanted (e.g. RT0.Typecell.traced, kind, link_state, dataAlignment From jkrell at elego.de Wed Sep 1 14:09:09 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 14:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901120909.337B62474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 14:09:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Two of the missing types were boolean and char, because I wasn't sure how to handle them. For now set them to t_word_8. Though boolean is actually [0..1] and char is actually [0..255] I believe. There are still problems, types used before defined. I think there are circularities and this is unavoidable though. We may need to make a second pass over the data in m3cc. From jkrell at elego.de Wed Sep 1 15:14:07 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:14:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901131407.C8ECE2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:14:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: cleaner, largely undo previous, "debug" is m3gdb for normal types that lead to normal gdb, use other paths in particular, the one_field/one_gap stuff shows it's not difficult, and we can reuse them not change in result: backend and frontend still disagree, so this code is not yet enabled; I have to find out why layout_type gets such different results, even when all the constituent types are known and I have to see if we can get an order that puts defines before uses, or if this all needs to be multi-pass.. change many "int" to "long", so that 64bit hosts can deal with types larger than 2GB We already read long or unsigned long from the m3cg binary file. From jkrell at elego.de Wed Sep 1 15:21:27 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:21:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132127.E52E22474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:21:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int M3_TYPES = 0; at the top and then if that From jkrell at elego.de Wed Sep 1 15:25:26 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:25:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132526.24C832474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:25:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT From jkrell at elego.de Wed Sep 1 15:26:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:26:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132643.18F0B2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:26:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT = 0 or 1 or 2 From jkrell at elego.de Wed Sep 1 18:24:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 18:24:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901162420.772232474027@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 18:24:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: progress; this version should: work pass records by value in registers per the ABI have good type information for records in stock gdb probably work on SPARC64_SOLARIS verifies that the frontend and backend agree on record size, though not necessarily the fields therein (but it is likely) as a bonus, the field names in stock gdb are no longer mangled debug information fed to m3gdb should be unchanged, as the code to feed it private data vs. code to construct types for the trees is separate still to do: fix and test debugging of: packed types (I just make these a record with size and no fields, and indeed passing them by value on SPARC64_SOLARIS isn't likely to work, needs more test cases) objects (written but not tested, and I think m3front isn't passing the size information) enums ensure all fields are typed -- a few are missing (some of this was my fault earlier missing builtins like MUTEX) cleanup -- should be able to share code between one_gap/m3_gap, one_field/m3_field, etc. From jkrell at elego.de Fri Sep 3 12:17:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903101718.85430CC37A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:17:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: This is odd, but minor. I386_LINUX says: parse.c: In function 'scan_type': parse.c:1686:5: warning: unknown conversion type character 'X' in format parse.c:1686:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1686:5: warning: too many arguments for format parse.c: In function 'scan_sign': parse.c:1721:5: warning: unknown conversion type character 'X' in format parse.c:1721:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1721:5: warning: too many arguments for format but it looks right. Put it back to release -- %lX => %lx. Leave %d alone. Something is off here? From jkrell at elego.de Fri Sep 3 12:55:43 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:55:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903105543.C8262247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:55:43 Modified files: cm3/m3-sys/m3cc/src/: m3makefile clean_marker.txt Log message: untested: move AMD64_FREEBSD to gcc 4.5.1 backend From jkrell at elego.de Fri Sep 3 13:11:21 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:11:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111121.1DE19CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:11:21 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: call stat first, if it fails call lstat, not great, really (stat and I suspect lstat are probably particularly expensive on Cygwin, as they probably open the file) From jkrell at elego.de Fri Sep 3 13:12:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:12:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111255.866BF247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:12:55 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: use AND instead of nested IF From jkrell at elego.de Wed Sep 8 12:30:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:30:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103053.2891C247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:30:52 Modified files: cm3/doc/notes/: todo.txt Log message: add a few, mainly to remind of priority: fix O1/O2/O3 e.g. on I386_LINUX, setup AMD64_OPENBSD, AMD64_NETBSD Hudson (actually AMD64_OPENBSD might still need porting work) From jkrell at elego.de Wed Sep 8 12:31:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:31:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103136.3D2A0247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:31:36 Added files: cm3/doc/notes/: object-model.txt Log message: to be filled in From jkrell at elego.de Wed Sep 8 12:36:56 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:36:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103656.4C627247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:36:56 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: adjust comment: the more specific it is, the more it tends to be or become wrong, so be less specific From jkrell at elego.de Thu Sep 9 12:24:38 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102438.43ACBCC12C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:24:38 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpParse.m3 Log message: slightly reduce From jkrell at elego.de Thu Sep 9 12:25:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:25:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102536.2967D247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:25:36 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: RTLink.i3 RTLink.m3 Log message: add drastically reduced form of RTLinker.m3 that demonstrates the current miscompile on I386_LINUX, I386_DARWIN, probably others. The loop in RTLinker.FixImports is removed under optimization! From jkrell at elego.de Thu Sep 9 12:45:46 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:45:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909104546.723ADCC12B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:45:46 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira-color.c Log message: ira-color.c: In function ???ira_reassign_conflict_allocnos???: ira-color.c: warning: ???conflict_a??? may be used uninitialized in this function From jkrell at elego.de Thu Sep 9 13:48:06 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 13:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909114806.80011247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 13:48:06 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Don't let flag_split_wide_types make us avoid using bitfields. This seems to fix the optimized I386 problems. More testing to do. From jkrell at elego.de Thu Sep 9 21:48:41 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 21:48:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909194841.63568247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 21:48:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: flag_tree_ccp of m3core breaks cm3 on I386_DARWIN hopefully this also fixes I386_LINUX more investigation to do clearly, try to find which code is altered, how, and how to form our trees so optimizations all work (I'm guessing that complete type information would work, but that partial type information is a problem) From jkrell at elego.de Fri Sep 10 08:26:48 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:26:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910062648.F1D9F2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:26:48 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int to long From jkrell at elego.de Fri Sep 10 08:52:50 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:52:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910065250.E92D12474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:52:50 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: reformat a little From jkrell at elego.de Fri Sep 10 09:49:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:49:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910074958.BFA332474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:49:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some int to long much long to HOST_WIDE_INT_PRINT_DEC this should make little difference but might improve some cross situations -- e.g. defining arrays/structs larger than 2GB From jkrell at elego.de Fri Sep 10 09:51:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:51:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910075158.4ACFA2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:51:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove some but not all #if 0'ed code From jkrell at elego.de Fri Sep 10 10:47:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 10:47:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910084758.E89C02474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 10:47:58 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: FPrint.i3 FPrint.m3 Log message: add reduced form of Fingerprint.m3 that hits assertion failure in backend on I386_DARWIN if we allow inlining From jkrell at elego.de Fri Sep 10 14:41:26 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:41:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910124126.B4BC32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:41:26 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reload1.c Log message: fix from gcc-4.5 branch for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45312 From jkrell at elego.de Fri Sep 10 14:51:34 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:51:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125134.90469CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:51:34 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-nested.c Log message: partial merge from gcc-4_5-branch From jkrell at elego.de Fri Sep 10 14:54:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:54:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125457.6BABFCC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:54:57 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5 branch fix for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40386 From jkrell at elego.de Fri Sep 10 14:56:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:56:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125656.070832474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:56:55 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44554 From jkrell at elego.de Fri Sep 10 15:04:04 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910130404.BA5C72474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:04:04 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/config/sparc/: sparc.c Log message: partial merge from gcc-4_5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44942 From jkrell at elego.de Fri Sep 10 15:12:35 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:12:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131235.DC2222474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:12:35 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: dwarf2out.c dwarf2out.h cm3/m3-sys/m3cc/gcc-4.5/gcc/config/i386/: i386.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45484 From jkrell at elego.de Fri Sep 10 15:16:28 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:16:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131628.93AAD2474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:16:28 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: function.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44632 From jkrell at elego.de Fri Sep 10 15:21:16 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132116.8DFA32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:21:16 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: optabs.c Log message: partial merge from 4.5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45292 From jkrell at elego.de Fri Sep 10 15:26:10 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:26:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132610.288C42474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:26:10 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reginfo.c Log message: partial merge from gcc-4_5-branchh, fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45296, no matter From jkrell at elego.de Sat Sep 11 00:01:53 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 0:01:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910220155.E6B3B247420A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 00:01:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca instead of xmalloc remove most strlen calls From jkrell at elego.de Sat Sep 11 10:11:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 10:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911081128.32E60247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 10:11:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: oops From jay.krell at cornell.edu Sat Sep 11 10:32:48 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:32:48 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911081128.32E60247403C@birch.elegosoft.com> References: <20100911081128.32E60247403C@birch.elegosoft.com> Message-ID: Thanks. I should probably put these on Facebook. ok? ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 10:11:27 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 10:11:27 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > oops > From jay.krell at cornell.edu Sat Sep 11 10:35:10 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:35:10 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100911081128.32E60247403C@birch.elegosoft.com>, Message-ID: > Thanks. I should probably put these on Facebook. ok? Arg, I click one message but a different one comes up. Sorry. From jkrell at elego.de Sat Sep 11 11:14:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 11:14:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911091441.02882247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 11:14:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: keep each "instruction" on one line when tracing This touches many lines, all tracing related. The newline is removed from many places and then put at the start of the instruction instead of the end xstrdup a *little* bit since the alloca change source line and imported units initialize some locals some "int" to long, but capacity limited to 100 anyway for now should change to VEC though add a little tracing (exit_proc) From jay.krell at cornell.edu Sat Sep 11 11:16:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 09:16:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911091441.02882247403C@birch.elegosoft.com> References: <20100911091441.02882247403C@birch.elegosoft.com> Message-ID: This also moves some of the tracing under "-y -y" instead of just -y (like -v -v in other tools, verbose verbose). ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 11:14:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 11:14:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > keep each "instruction" on one line when tracing > This touches many lines, all tracing related. > The newline is removed from many places and then > put at the start of the instruction instead of the end > > xstrdup a *little* bit since the alloca change > source line and imported units > > initialize some locals > > some "int" to long, but capacity limited to 100 anyway for now > should change to VEC though > > add a little tracing (exit_proc) > From jkrell at elego.de Sat Sep 11 13:06:55 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:06:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110655.34A4E247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:06:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: fix some garbage collector problems including roll own growable vector instead of using VEC This does not necessarily fix the two problems reported, as I haven't seen them (haven't tried yet). From jkrell at elego.de Sat Sep 11 13:07:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:07:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110740.AC9AE247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:07:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Remove the use of bitfields in load/store. configure -enable-checking flags them as a problem. From jkrell at elego.de Sat Sep 11 15:18:31 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 15:18:31 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911131831.32202247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 15:18:31 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: hack more errors to warnings, until such time as they are all fixed From jay.krell at cornell.edu Sun Sep 12 03:43:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sun, 12 Sep 2010 01:43:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911110740.AC9AE247403C@birch.elegosoft.com> References: <20100911110740.AC9AE247403C@birch.elegosoft.com> Message-ID: I'm aware that this broke everything. I'm testing stuff more now.. ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 13:07:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 13:07:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Remove the use of bitfields in load/store. > configure -enable-checking flags them as a problem. > From jkrell at elego.de Sun Sep 12 08:24:46 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 8:24:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912062446.86A0524740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 08:24:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: work in progress: some tree repair per configure -enable-checking RETURN_EXPR in particular and some types [disabled pending more testing] restore bitfield use we crash without it even though it triggers -enable-checking errors to be investigated.. tracing: add some newlines for multi-line things like records/proctypes/procedures probably should indent instead tweak garbage collector interaction and provide 3 ways to implement the type table: fixed size, growable, VEC These changes fixing some of the breakage from inlining, but not enough to enable it. We no longer get backend assertion failures, and inlining seemed to work in m3core+libm3+sysutils, but a full upgrade still produced a crashing cm3. probably the problem was either RETURN_EXPR or the garbage collection some debugging aids: m3_break_lineno, m3_breakpoint restore old type-less m3gdb stuff now that I changed the proper typed tree stuff to use different code From jkrell at elego.de Sun Sep 12 10:27:43 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:27:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082743.6F3BF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:27:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove whitespace from ends of lines From jkrell at elego.de Sun Sep 12 10:29:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:29:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082924.C47DF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:29:24 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Reformat, particularly with regard to braces. Open braces go on their own line. Braces can be omited for single statement blocks. From jkrell at elego.de Sun Sep 12 12:23:37 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 12:23:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912102337.B876CCC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 12:23:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Rewrite m3cg_fill_hex_value so that I understand it more easily. Hopefully I understood it correctly in the first place. Also make the buffer overflow case fatal instead of silently truncating. (Granted, this is for debugging information only.) From jkrell at elego.de Sun Sep 12 13:44:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 13:44:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912114430.4797D24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 13:44:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add indentation to tracing The result is quite nice. The code is a little gnarly how to decides to insert newlines but the result is good. Because sometimes outdent is because the operation is marked as such, e.g. call_direct or end_procedure and sometimes it is by getting the tail operations like params or fields (notice that params are counted, locals are not, and some locals follow params, e.g. "_result" so the formating is a bit off) probably the multiplier shouldn't be sprinkled around either and the space string construction could be more general and efficient, i.e. grow it as needed instead of hardcoded size e.g. (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... when what you want is: (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... ... Rewrite fmt_uid, for brevity and to avoid signed math. (table lookup instead of if ladder) (bikeshed perhaps) a little cleanup/cosmetic: memcpy instead of strcpy a constant (zzz) remove comparisons to zero in boolean context remove some braces remove spaces at ends of lines (thought I already had) forgot to mention earlier: start, barely, consolidating the trace options From jkrell at elego.de Sun Sep 12 15:08:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912130808.0AC912474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:08:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: work in progress but far along and working well: have the macros the tracing instead of each function as part of this: a => align s => size n, etc. => name quoted_string => string double spaces => single space historically this was indent at start of line, but now it is within the line the previous tricky version was still outputting too many newlines, so simplify and reduce, but not ideal? one nagging point is that the mangled identifiers can't easily be printed by the macros so in a few cases I have deliberately left in separate printing this work isn't done because I generally review the manual trace and the automatic one and make sure the automatic is adequate, I haven't done that for each operand From jkrell at elego.de Sun Sep 12 15:11:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:11:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912131130.6BA492474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:11:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove manual tracing of object and method as the macros do good enough job (almost identical, not sub-standard or anything) From jkrell at elego.de Sun Sep 12 21:23:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 21:23:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912192310.9274A2474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 21:23:10 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some more tracing; rename m => offset n => count remove more manual tracing indent enums add missing outdent fix trees with regard to RETURN_EXPR based on configure -enable-checking feedback notice that I'm ignoring other -enable-checking feedback, if I handle it all, there are problems; eventually we'd like it to work but it isn't easy allow inlining!! switch type table to fixed size is this needed?? It is quite lame. will try again without From jkrell at elego.de Mon Sep 13 00:01:39 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:01:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912220140.BE628CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:01:39 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: back to a growable table (VEC) introduce #defines for the builtin uids, put them in an array, loop over that for initialization, use a switch to optimize common ones (only two but could be extended) From jkrell at elego.de Mon Sep 13 00:28:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:28:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912222846.301F82474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:28:45 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix C++ warnings from gcc 4.5 fix undefined warnings from gcc 4.5 fix simple recent typo that triggered warning from gcc 4.5 (the real reason I was going to try gcc 4.5 was for its #pragma diagnostic feature, so I could say T foo = { 0 } but I gave up on that, so unfortunate the gcc warning there and the historical lack of a way to supress it, it greatly decreases what you can do with portable warning-free C) From jkrell at elego.de Mon Sep 13 01:43:05 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 1:43:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912234305.B05022474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 01:43:05 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c tree-cfg.c Log message: configure -enable-checking hacking turn some checks unconditionally on turn some reports off Long term no reports should be off, and what we enable when/how needs more thought. From jkrell at elego.de Mon Sep 13 02:17:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001731.737BE247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:30 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From jkrell at elego.de Mon Sep 13 02:17:54 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001754.769C5247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:54 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From rcoleburn at elego.de Mon Sep 13 04:22:51 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:22:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022251.51FD124741F4@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:22:51 Modified files: cm3/scripts/install/windows/: cm3CommandShell.CMD Log message: Make Visual Studio 2010 Express the default. Adjust to deal with Vista and Windows7 OS identification. From rcoleburn at elego.de Mon Sep 13 04:29:08 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:29:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022909.0BAB52474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From rcoleburn at elego.de Mon Sep 13 04:33:32 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:33:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913023332.99D5F2474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:33:32 Modified files: cm3/scripts/dev/windows/: do-cm3.cmd Log message: add Windows7 OS detection From rcolebur at SCIRES.COM Mon Sep 13 04:45:57 2010 From: rcolebur at SCIRES.COM (Coleburn, Randy) Date: Sun, 12 Sep 2010 22:45:57 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913022909.0BAB52474033@birch.elegosoft.com> References: <20100913022909.0BAB52474033@birch.elegosoft.com> Message-ID: Sorry, the dependency should have read "...being present in C:\cm3\bin" --Randy -----Original Message----- From: Randy Coleburn [mailto:rcoleburn at elego.de] Sent: Monday, September 13, 2010 12:29 AM To: m3commit at elegosoft.com Subject: [M3commit] CVS Update: cm3 CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From jkrell at elego.de Mon Sep 13 06:57:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 6:57:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913045727.C50C32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 06:57:27 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: untested: split up cc and ld parameters to avoid warnings from cc about ld parameters, that show up as a diff running the tests From jkrell at elego.de Mon Sep 13 07:06:35 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:06:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913050635.9CEE42474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:06:35 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: use correct comment character From jkrell at elego.de Mon Sep 13 07:15:03 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:15:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051503.E02322474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:15:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: sel-sched.c Log message: sel-sched.c:2495:8: warning: enum conversion in initialization is invalid in C++ From jkrell at elego.de Mon Sep 13 07:16:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:16:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051651.C5AA92474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:16:51 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: restore original From jkrell at elego.de Mon Sep 13 07:22:15 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:22:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052215.8CF0B2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:22:15 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c Log message: restore original, mostly From jkrell at elego.de Mon Sep 13 07:23:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:23:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052307.5EC4C2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:23:07 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: restore original From jkrell at elego.de Mon Sep 13 09:29:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 9:29:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913072951.54CA32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 09:29:51 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: mark all non-bitfield fields as addressable This was part of a not yet very successful attempt at dealing with configure -enable-checking, and its flagging of our heavy use of bitfield refs. Hopefully we get something that isn't as bad as volatile. Hopefully we can remove this addressability actually, though I'll probably add more first (objects, arrays, etc.) Lots of cosmetic/cleanup. o => offset n => name len, n_len => name_length val => value p => proc l => label a, b, c, aren't terrible identifers, but l is particularly onerous due to resembles to 1 t => type more to do here some functions have v and val, can't both be value tree *f => out_f, and use local f to avoid repeated derefs tree *v => out_v consolidate all tracing options There is just one variable now, option_trace_all, and all the options increment it. Almost all of the tracing is at level 1, a little is at 2. call one_gap/m3_gap unconditionally and have it do the check some missing spaces on function calls (really I'd just as soon remove them all, but they are fairly consistently present, so I'm following that style) remove the list of optimizations to possibly disable if need be, regain them from where they came tweak the options a little less; ongoing experimentation to reduce them, but some of them require a lot of debugging and fixing work in progress to synthesize field accesses on loads/stores From jay.krell at cornell.edu Mon Sep 13 09:40:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 07:40:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: Darn it, it turns out, I didn't run that version, but hopefully something close to it. Because building in m3cc always succeeds, because of the pipeline vs. status thing. I'll have to do something about this. I really don't want to lose the log though. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 09:29:51 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > From jkrell at elego.de Mon Sep 13 10:15:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081526.B80A1247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:26 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Disable the logging. It hurts too much. So lame. From jkrell at elego.de Mon Sep 13 10:15:53 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081553.32D41247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:53 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: add commented out -enable-checking without =all, as a 'suggestin' From jkrell at elego.de Mon Sep 13 10:17:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:17:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081746.02D10247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:17:45 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Stop using -static on OpenBSD. Seems pretty lame either way. Perhaps they have compat libraries, just not installed by default?? Perhaps -static was the better tradeoff? Perhaps nobody used Modula-3 on OpenBSD? Hopefully we'll have a distribution format that is slightly or very sourcey, that will address this, though that is also lame. From jkrell at elego.de Mon Sep 13 10:28:18 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:28:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913082818.5A454247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:28:18 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: I believe configure/autoconf does an adequate job of figuring out cc and cflags, so remove nearly all that mechanism here. CC and CFLAGS will still be honored. There is some supposition that you don't have a need to set CC one way for m3cc and another way for e.g. m3core and the m3 config files. Since m3core/config files don't honor CC, that is reasonable. We may or may not have a very pressing need to restore this, so that we can remove -g on SPARC32_LINUX to save diskspace. I'd like to just replace that machine with one with more space. The one part that is left is that for Solaris we are willing to add /usr/sfw/bin or /opt/csw/gcc4/bin to $PATH. We should probably put them at the end, or only do so if cc is not available (gcc is buildable with cc). From jkrell at elego.de Mon Sep 13 10:30:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:30:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083026.1EC9F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:30:26 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove the CC and CFLAGS stuff here too From jkrell at elego.de Mon Sep 13 10:32:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:32:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083213.DF613247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:32:13 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: cleanup as-yet unused stuff From jkrell at elego.de Mon Sep 13 10:39:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:39:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083927.F2673247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:39:27 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove "quick" option don't specific host/target for native builds That was an experiment of mine, that failed largely for m3cc. This is all quite unfortunate though..probing for build system, on the assumption that the eventual host will match, and it being too difficult to do otherwise, to give os/version and have it encoded somewhere that that means, or to build highly portable executables that probe at runtime (e.g. Win32 LoadLibrary/GetProcAddress) From jkrell at elego.de Mon Sep 13 10:42:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:42:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084230.64D54247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:42:30 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: run configure only if Makefile doesn't exist, kind of like m3cc does (the cross story is less refined here, should probably just remove it? From jkrell at elego.de Mon Sep 13 10:45:17 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:45:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084517.67C33247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:45:17 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: update m3gdb_Run based on current m3gdb_Run From jkrell at elego.de Mon Sep 13 10:53:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:53:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913085345.32560247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:53:45 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile cm3/m3-sys/m3cc/src/: gnucc.common Log message: Drop notion of cross building m3gdb. It is never done. From jay.krell at cornell.edu Mon Sep 13 10:50:51 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 08:50:51 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913084517.67C33247401A@birch.elegosoft.com> References: <20100913084517.67C33247401A@birch.elegosoft.com> Message-ID: (er, based on current m3cc_Run) ---------------------------------------- > Date: Mon, 13 Sep 2010 10:45:17 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 10:45:17 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > > Log message: > update m3gdb_Run based on current m3gdb_Run > From jkrell at elego.de Mon Sep 13 11:12:41 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:12:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091241.2DD2F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:12:41 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: Drop notion of build != host. Nobody around here does that. I.e. not building "canadian" or cross building a native compiler, or "cross back". Just either native (build=host=target), or build=host and host!=target. That's all I do and I expect nobody else has done other for a long time and nobody ever will. But maybe.n From jkrell at elego.de Mon Sep 13 11:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091436.4F90F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:14:36 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: Replace bunch of comparisons with one table lookup. From jkrell at elego.de Mon Sep 13 11:15:55 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:15:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091555.6C4D0247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:15:55 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: remove cross gdb stuff From jkrell at elego.de Mon Sep 13 11:26:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:26:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913092607.23CB2247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:26:07 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake-old Log message: oops: fix a typos, and cleanup more From jkrell at elego.de Mon Sep 13 11:38:42 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:38:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913093842.E5332247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:38:42 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix typos so that it builds now replace parallel set of FOO & UNUSED_FOO with just FOO that produces no warning whether or not the data is used I like that. replace gcc specific attribute_unused syntax with something that likely portably fools all compilers and should be cheap enough Maybe this one is dubious. replace "cc" with "calling_convention" "n" => "name" but note, I forgot, there's a feature of my new tracing stuff that doesn't print names if they are one character, to consider using! count_t => count_type mem_t => mem_type (should be memory_type) remove more manual tracing remove more futzing with optimizations: flag_strict_aliasing (dangerous?) flag_strict_overflow (dangerous?) flag_reorder_functions (looks safe) still more to do here, as stuff is found or made to work From jkrell at elego.de Mon Sep 13 11:58:19 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:58:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095819.40263247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:58:19 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "v" => "var" redisable flag_strict_aliasing and flag_strict_overflow pending double checking From jkrell at elego.de Mon Sep 13 11:59:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:59:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095926.2500A247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:59:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "o" => "offset" From jkrell at elego.de Mon Sep 13 14:04:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:04:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913120413.8FC962474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:04:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: separate get_int into get_int and trace_int This way: - no more passing of 0 to suppress trace (somewhat reversion of earlier changes) - macros that multiply can trace the multiplied value That is the real point, it seems more correct this way, though the serialized value is what was traced and wasn't entirely illegitimate. - get_int less changed vs. historical version, if that matters eliminate temporaries from min and max (but not check_eq) combine min and max implementations into minmax eliminate more manual tracing (I only eliminate them after looking at the new auto+manual version, make sure auto has parity) eliminate several cases of multiplication by BITS_PER_UNIT almost immediately followed by division by BITS_PER_UNIT It seems kind of confusing either way. I guess "BYTEOFFSET" is an indication that a number of bytes is serialized, and the macro would then convert to the usual bit offset, but then a bunch of code really wants byte offsets anyway. And there I was starting to think that bitoffsets were a much better currency. And yes, I know that division and multiplication by constant power of 2 (eh, really any 32 bit constant, these days) is super duper fast) I certainly be comfortable passing bit offsets here in the first place, and then doing just the divide as needed. From jkrell at elego.de Mon Sep 13 14:48:02 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:48:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913124802.F24092474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:48:02 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: eliminate more manual tracing capitalize hex, yucky code trace_int => m3_trace_int more consistently skip single char names From rodney_bates at lcwb.coop Mon Sep 13 23:09:51 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:09:51 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913091555.6C4D0247401A@birch.elegosoft.com> References: <20100913091555.6C4D0247401A@birch.elegosoft.com> Message-ID: <4C8E931F.80209@lcwb.coop> Not sure what you mean here. If you mean m3gdb will only be built on the same machine it runs on, I think that is entirely reasonable. If you mean no cross-debuggers (which run on one machine and debug a different one), we should preserve these. Especially with the proliferation of small embedded devices, etc. Probably not much need to be able to build such a cross debugger until somebody has a specific need, but existing separation between HOST (machine gdb runs on) and TARGET (where the debugee program runs) should be preserved in the code so we don't lose the work that went into it. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 11:15:55 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > Removed files: > cm3/m3-sys/m3gdb/src/: platforms.quake > > Log message: > remove cross gdb stuff > > From rodney_bates at lcwb.coop Mon Sep 13 23:15:09 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:15:09 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: <4C8E945D.6010408@lcwb.coop> Is there any documentation that tells what the invariants are on the trees gdb can handle? One would hope there would be. Discovering such by reading code in something as big as gcc is a very difficult and error-prone job. It sounds like you are having to discover them by trial-and-error experiments, which is very much the hard way. One would hope it exists, but then, from sad experiences, not necessarily realistically expect so. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > > From jay.krell at cornell.edu Tue Sep 14 01:45:01 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:45:01 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E945D.6010408@lcwb.coop> References: <20100913072951.54CA32474016@birch.elegosoft.com>, <4C8E945D.6010408@lcwb.coop> Message-ID: I don't know. tree.h and tree.def are useful. I suspect the main problem is we generate obviously dubious trees. For example, let's say you had: struct { int a,b; } c; void F() { ? printf("%d%d\n", c.a, c.b); } There is a notion of "component ref" ie. "field ref" in union or struct/record. This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. However what parse.c I believe generates is equivalent to either: printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) or: typedef struct { int a:32; } BF1; typedef struct { int a,b:32; } BF2; printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); As well, historically, c itself might have been to have no fields, but a size: struct {? } c; // size = 8 That is what set off this whole adventure, as that construct causes problems specifically on SPARC64, when it tries to figure out how to pass the struct/record as a parameter. Though I only recently found a likely easy workaround for that. Parameter types and how they are passed can be separately specified, presumably letting us always pass by address. I speculate that if we made something much closer to "obviously" correct trees, our problems would go away. The trees support fairly high level operations. And strong typing. But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:15:09 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Is there any documentation that tells what the invariants are on the > trees gdb can handle? One would hope there would be. Discovering > such by reading code in something as big as gcc is a very difficult > and error-prone job. It sounds like you are having to discover them > by trial-and-error experiments, which is very much the hard way. > > One would hope it exists, but then, from sad experiences, not necessarily > realistically expect so. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > mark all non-bitfield fields as addressable > > This was part of a not yet very successful attempt at > > dealing with configure -enable-checking, and its flagging > > of our heavy use of bitfield refs. > > Hopefully we get something that isn't as bad as volatile. > > Hopefully we can remove this addressability actually, > > though I'll probably add more first (objects, arrays, etc.) > > > > Lots of cosmetic/cleanup. > > o => offset > > n => name > > len, n_len => name_length > > val => value > > p => proc > > l => label > > a, b, c, aren't terrible identifers, but l is particularly > > onerous due to resembles to 1 > > t => type > > more to do here > > some functions have v and val, can't both be value > > tree *f => out_f, and use local f to avoid repeated derefs > > tree *v => out_v > > consolidate all tracing options > > There is just one variable now, option_trace_all, and > > all the options increment it. Almost all of the tracing > > is at level 1, a little is at 2. > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > some missing spaces on function calls > > (really I'd just as soon remove them all, but they are > > fairly consistently present, so I'm following that style) > > > > remove the list of optimizations to possibly disable > > if need be, regain them from where they came > > > > tweak the options a little less; ongoing experimentation > > to reduce them, but some of them require a lot of > > debugging and fixing > > > > work in progress to synthesize field accesses on loads/stores > > > > From jay.krell at cornell.edu Tue Sep 14 01:47:49 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:47:49 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E931F.80209@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: Let's put it back when we need it, if m3gdb supports such target. ? (e.g. it doesn't support ARM_DARWIN anyway). Maybe by then the trees in the backen will be good enough that gdb will suffice. I use the recent release as a good easy source of getting older code from. ? (easier than cvsweb, which is also available) Or if you insist I can put it back immediately. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:09:51 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Not sure what you mean here. If you mean m3gdb will only be built > on the same machine it runs on, I think that is entirely reasonable. > > If you mean no cross-debuggers (which run on one machine and debug > a different one), we should preserve these. Especially with the > proliferation of small embedded devices, etc. > > Probably not much need to be able to build such a cross debugger > until somebody has a specific need, but existing separation between > HOST (machine gdb runs on) and TARGET (where the debugee program runs) > should be preserved in the code so we don't lose the work that went > into it. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 11:15:55 > > > > Modified files: > > cm3/m3-sys/m3gdb/src/: m3makefile > > Removed files: > > cm3/m3-sys/m3gdb/src/: platforms.quake > > > > Log message: > > remove cross gdb stuff > > > > From jay.krell at cornell.edu Tue Sep 14 01:53:41 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:53:41 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913072951.54CA32474016@birch.elegosoft.com>, , <4C8E945D.6010408@lcwb.coop>, Message-ID: ps: configure -enable-checking points out lots of problems, or at least countless instances of a small number of problems, with our trees. For example, trees apparently don't support adding any two different types together, e.g. int8 + int32. But we do it, and it seems to work. The bitfield refs we generate seem to cause a specific error. But changing to the other form generates bad code somewhere under -O3. It also doesn't like something about how we use static chains. configure -enable-checking never should have gone bad imho. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: rodney_bates at lcwb.coop; m3commit at elegosoft.com > Date: Mon, 13 Sep 2010 23:45:01 +0000 > Subject: Re: [M3commit] CVS Update: cm3 > > > I don't know. > tree.h and tree.def are useful. > I suspect the main problem is we generate obviously dubious trees. > > > For example, let's say you had: > > > struct { int a,b; } c; > void F() > { > printf("%d%d\n", c.a, c.b); > } > > > There is a notion of "component ref" ie. "field ref" in union or struct/record. > This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. > > > However what parse.c I believe generates is equivalent to either: > > > printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) > > > or: > > typedef struct { int a:32; } BF1; > typedef struct { int a,b:32; } BF2; > > > > printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); > > > As well, historically, c itself might have been to have no fields, but a size: > > > struct { } c; // size = 8 > > > > That is what set off this whole adventure, as that construct causes > problems specifically on SPARC64, when it tries to figure out how > to pass the struct/record as a parameter. Though I only recently found > a likely easy workaround for that. Parameter types and how they are > passed can be separately specified, presumably letting us always > pass by address. > > > > I speculate that if we made something much closer to "obviously" correct trees, > our problems would go away. > > > The trees support fairly high level operations. And strong typing. > But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. > > > - Jay > > ---------------------------------------- > > Date: Mon, 13 Sep 2010 16:15:09 -0500 > > From: rodney_bates at lcwb.coop > > To: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Is there any documentation that tells what the invariants are on the > > trees gdb can handle? One would hope there would be. Discovering > > such by reading code in something as big as gcc is a very difficult > > and error-prone job. It sounds like you are having to discover them > > by trial-and-error experiments, which is very much the hard way. > > > > One would hope it exists, but then, from sad experiences, not necessarily > > realistically expect so. > > > > Jay Krell wrote: > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > mark all non-bitfield fields as addressable > > > This was part of a not yet very successful attempt at > > > dealing with configure -enable-checking, and its flagging > > > of our heavy use of bitfield refs. > > > Hopefully we get something that isn't as bad as volatile. > > > Hopefully we can remove this addressability actually, > > > though I'll probably add more first (objects, arrays, etc.) > > > > > > Lots of cosmetic/cleanup. > > > o => offset > > > n => name > > > len, n_len => name_length > > > val => value > > > p => proc > > > l => label > > > a, b, c, aren't terrible identifers, but l is particularly > > > onerous due to resembles to 1 > > > t => type > > > more to do here > > > some functions have v and val, can't both be value > > > tree *f => out_f, and use local f to avoid repeated derefs > > > tree *v => out_v > > > consolidate all tracing options > > > There is just one variable now, option_trace_all, and > > > all the options increment it. Almost all of the tracing > > > is at level 1, a little is at 2. > > > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > > > some missing spaces on function calls > > > (really I'd just as soon remove them all, but they are > > > fairly consistently present, so I'm following that style) > > > > > > remove the list of optimizations to possibly disable > > > if need be, regain them from where they came > > > > > > tweak the options a little less; ongoing experimentation > > > to reduce them, but some of them require a lot of > > > debugging and fixing > > > > > > work in progress to synthesize field accesses on loads/stores > > > > > > > From jkrell at elego.de Tue Sep 14 15:54:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 15:54:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914135408.20270247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 15:54:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: more tracing work, and an 'int' to 'bool' From rodney_bates at lcwb.coop Tue Sep 14 17:48:14 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 10:48:14 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8F993E.7060903@lcwb.coop> I am still not sure just what you took out. I guess I need to look at it to be sure what I think. As a principle, putting stuff back in later is often *far* more difficult that one might think or than just leaving it in. Even with a system that preserves all the old versions, you have to comb through many old versions/updates to see which ones are relevant. Then you have to comb through each to see which changes are relevant. Even if the remover kept all relevant changes in separate updates and gave them good comments, you don't really know this, and have to review it all. Then you have to find where the code has moved to in the latest version. And then the actual editing. All this has to be done manually, and can be very tedious. And finally, it's unusually error-prone precisely because it's so boring, yet picky. Note that you don't have to maintain it all in working condition. You can disable it in various ways, at build time, runtime, etc., or even just comment stuff out, but leave it in the files. Good comments as to what you have done are, of course, always appropriate. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From rodney_bates at lcwb.coop Tue Sep 14 22:23:47 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 15:23:47 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8FD9D3.8040602@lcwb.coop> Please put it back. I am about to use it myself to debug on an older computer that is using PM3. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From jkrell at elego.de Tue Sep 14 22:46:44 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:46:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914204644.96C0B247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:46:44 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Added files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: bring back equivalent of cross functionality that was here which isn't clearly what anyone wants anyway From jay.krell at cornell.edu Tue Sep 14 22:50:39 2010 From: jay.krell at cornell.edu (Jay K) Date: Tue, 14 Sep 2010 20:50:39 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8FD9D3.8040602@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, , <4C8E931F.80209@lcwb.coop>, , <4C8FD9D3.8040602@lcwb.coop> Message-ID: Rodney, The code was there was precious little and did next to nothing, but has that obnoxous platforms.quake, and appears to be altering the gdb host, not the target. All you have to do is: ? mkdir /foo? ? cd /foo? ? /cvsroot/m3-sys/m3gdb/gdb/configure .... ? make The entire m3cc/src/m3makefile and m3gdb/src/m3makefile are just meant to be thin wrappers around that, though m3cc I have thickened. Anyway, I put back what should be equivalent to what it was. I would still like to remove it, esp. because of platforms.quake. Please look at it, decide if you need it, and consider removing it. Again there is almost nothing there either way, but platforms.quake is not a good thing to keep around. I want as little platform-specific code/data as possible, and probably to locate it differently -- like only in config files, not even in Target.m3 if I can help it. Thanks, ?- Jay ---------------------------------------- > Date: Tue, 14 Sep 2010 15:23:47 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Please put it back. I am about to use it myself to debug on an older > computer that is using PM3. > > Jay K wrote: > > Let's put it back when we need it, if m3gdb supports such target. > > (e.g. it doesn't support ARM_DARWIN anyway). > > Maybe by then the trees in the backen will be good enough that gdb will suffice. > > I use the recent release as a good easy source of getting older code from. > > (easier than cvsweb, which is also available) > > > > Or if you insist I can put it back immediately. > > > > > > - Jay > > > > > > ---------------------------------------- > >> Date: Mon, 13 Sep 2010 16:09:51 -0500 > >> From: rodney_bates at lcwb.coop > >> To: m3commit at elegosoft.com > >> Subject: Re: [M3commit] CVS Update: cm3 > >> > >> Not sure what you mean here. If you mean m3gdb will only be built > >> on the same machine it runs on, I think that is entirely reasonable. > >> > >> If you mean no cross-debuggers (which run on one machine and debug > >> a different one), we should preserve these. Especially with the > >> proliferation of small embedded devices, etc. > >> > >> Probably not much need to be able to build such a cross debugger > >> until somebody has a specific need, but existing separation between > >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) > >> should be preserved in the code so we don't lose the work that went > >> into it. > >> > >> Jay Krell wrote: > >>> CVSROOT: /usr/cvs > >>> Changes by: jkrell at birch. 10/09/13 11:15:55 > >>> > >>> Modified files: > >>> cm3/m3-sys/m3gdb/src/: m3makefile > >>> Removed files: > >>> cm3/m3-sys/m3gdb/src/: platforms.quake > >>> > >>> Log message: > >>> remove cross gdb stuff > >>> > >>> > > From jkrell at elego.de Tue Sep 14 22:55:05 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:55:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914205505.BC63F247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:55:05 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: redefine M3GDB_HOST to be the GNU platform, not the Modula-3 platform, so we don't have to carry around a translation From jkrell at elego.de Wed Sep 15 13:59:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 13:59:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915115943.C3C36247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 13:59:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: trace integers more consistently only mangle names if -gstabs or -gstabs+ specified, and not Macho From jkrell at elego.de Wed Sep 15 14:05:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:05:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120529.D60D8247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:05:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix warning comparing unsigned >=0 is always true From jkrell at elego.de Wed Sep 15 14:07:41 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:07:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120741.A10E3247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:07:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix trace From jkrell at elego.de Wed Sep 15 14:17:22 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:17:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121722.A4405247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:17:22 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comments/tracing From jkrell at elego.de Wed Sep 15 14:19:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:19:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121937.8D9EC247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:19:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: smush out a line via style From jkrell at elego.de Wed Sep 15 14:20:12 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122012.24571247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:12 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:20:32 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122032.39130247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:32 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: really remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:27:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:27:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122754.19112247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:27:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comment/whitespace From jkrell at elego.de Wed Sep 15 14:40:46 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:40:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124046.92A59247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:40:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use input_location instead of UNKNOWN_LOCATION in build_decl for gcc 4.5, to fix crash in -g/-gdb, my fault in moving to 4.5 From jkrell at elego.de Wed Sep 15 14:42:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:42:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124220.8CDB1247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:42:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only print m3name if m3gdb is true, since otherwise it is the same as an already printed name From jkrell at elego.de Wed Sep 15 14:44:44 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:44:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124444.7DC87247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:44:44 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: one space From jkrell at elego.de Wed Sep 15 14:49:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:49:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124918.C25DE247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:49:18 Added files: cm3/m3-sys/m3tests/src/p2/p248/: m3makefile Main.m3 Log message: a place to experiment with object model, learn m3front=>m3back patterns, etc. maybe not really a test case, maybe need not be checked in From jkrell at elego.de Wed Sep 15 14:51:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125136.13892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:36 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: fix somewhat bad sounding typo, add more stuff, wouldn't have commited but the typo was a little bad From jkrell at elego.de Wed Sep 15 14:51:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125147.B9F05247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:47 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: copy of the typo From jkrell at elego.de Wed Sep 15 15:24:15 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 15:24:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915132416.06892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 15:24:15 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: add 2 byte and whopping 4 byte enum (64K elements) From jkrell at elego.de Thu Sep 16 12:58:18 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 16 Sep 2010 12:58:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100916105818.B31852474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/16 12:58:18 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: Be sure to keep in mind that types, er, typenames, are block scoped. We can have multiple enums named Color. Need to handle that correctly in the debug information. From jkrell at elego.de Sun Sep 19 16:50:29 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 16:50:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919145030.0C11C2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 16:50:29 Added files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: Provide RTDebug.IsDebuggerPresent and RTDebug.DebugBreak. Win32: RTDebug.IsDebuggerPresent => IsDebuggerPresent RTDebug.DebugBreak => DebugBreak Apple: RTDebug.IsDebuggerPresent => experimentally derived on my Intel 10.5 system. (could also test ppc emulation) sigaction(sigtrap, 0, &sa); peek at sa RTDebug.DebugBreak => works sigaction(sigtrap, 0, &old); signal(sigtrap, sigign); raise(sigtrap); sigaction(sigtrap, &old, 0); others: RTDebug.IsDebuggerPresent => false experimented on Linux and found Apple approach not viable RTDebug.DebugBreak => works, same as Apple smaller alternative would be definitely appreciated note that DebugBreak must be trivially continuable in debugger abort() is not it! bonus points if it is macro or builtin and small for C so the break occurs right in the code; on Win32 there is also __debugbreak() which generates one instruction right there, very nice (though notice that Win32 DebugBreak is "fatal" not in a debuger, whereas my Posix version isn't, because I can't implement IsDebuggerPresent) bonus points also if IsDebuggerPresent is fast, and updates itself as debugger is detached/reattached, though current version doesn't; Win32 does From jkrell at elego.de Sun Sep 19 17:17:49 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:17:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151749.B779D2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:17:49 Modified files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: forgot call to raise(sigtrap) From jkrell at elego.de Sun Sep 19 17:18:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:18:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151827.B161F2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:18:27 Modified files: cm3/m3-libs/m3core/src/runtime//common/: m3makefile RTDebug.i3 Log message: add RTDebug.IsDebuggerPresent/DebugBreak From jkrell at elego.de Wed Sep 22 14:33:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 22 Sep 2010 14:33:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100922123340.0FEDB247401C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/22 14:33:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add tracing to scan_var, reformat scan_var and varray_extend From jkrell at elego.de Thu Sep 23 14:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 14:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923121436.608C0CC123@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 14:14:36 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_revstr => m3_revstr m3cg_unsigned_wide_to_hex_full => m3_unsigned_wide_to_hex_full m3cg_signed_wide_to_hex_shortest => m3_signed_wide_to_hex_shortest m3cg_fill_hex_value => m3_fill_hex_value move these functions earlier in file add m3_unsigned_wide_to_dec_shortest to be used probably soon From jkrell at elego.de Thu Sep 23 15:52:53 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:52:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135253.780DACC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:52:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca in places to allocate correctly sized buffers rework m3_push_type_decl slightly to reduce duplication and slightly increase data-driven-ness before: m3_push_type_decl (get_identifier ("int"), t_int) after: m3_push_type_decl (t_int, "int") #define t_int_8 intQI_type_node instead of tree t_int_8; t_int_8 = intQI_type_node; and so on nothing significant here (bikeshedding and stone polishing, stuff noticed en route to more useful stuff) From jkrell at elego.de Thu Sep 23 15:53:28 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:53:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135328.8D8C4CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:53:28 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: initialize local From jkrell at elego.de Thu Sep 23 15:54:21 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:54:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135421.4DB77CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:54:21 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fold tiny bit of common code From jkrell at elego.de Fri Sep 24 09:46:37 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 9:46:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924074637.BD9B0CC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 09:46:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more crashes with plain -g -- use BUILTINS_LOCATION or input_location instead of UNKNOWN_LOCATION UNKNOWN_LOCATION always crashes From jkrell at elego.de Fri Sep 24 10:24:30 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 10:24:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924082430.75075CC397@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 10:24:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: alignment cannot be 0, it must be at least 1 bit, else plain -g does a divide by zero, crash From jkrell at elego.de Fri Sep 24 13:50:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 13:50:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924115057.DC78FCC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 13:50:57 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more of configure -enable-checking in particular, widen return types both at the implementation and the call (and then narrow after the call) From jkrell at elego.de Fri Sep 24 14:29:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 14:29:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924122918.A0CCA247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 14:29:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c Makefile.in cm3/m3-sys/m3cc/src/: m3makefile Log message: don't need libdecnumber From dabenavidesd at yahoo.es Sat Sep 25 02:03:13 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:03:13 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100924122918.A0CCA247400E@birch.elegosoft.com> Message-ID: <181251.85043.qm@web29701.mail.ird.yahoo.com> Hi all: why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. Thanks in advance --- El vie, 24/9/10, Jay Krell escribi?: > De: Jay Krell > Asunto: [M3commit] CVS Update: cm3 > Para: m3commit at elegosoft.com > Fecha: viernes, 24 de septiembre, 2010 09:29 > CVSROOT: /usr/cvs > Changes by: > jkrell at birch. 10/09/24 14:29:18 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > dfp.c > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > Makefile.in dfp.c > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > Makefile.in > cm3/m3-sys/m3cc/src/: m3makefile > > Log message: > don't need libdecnumber > > From jkrell at elego.de Sat Sep 25 02:16:13 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 2:16:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925001613.3543E247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 02:16:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: tighten up some asserts size and align >= 1, not just >= 0 er, no, size can be 0, for empty records or fields of their type, so leave it alone and align >= !!size work in progress types/debugging for enums and typedefs (when you say TYPE a = {b,c}; {b,c} is anonymous enum and a is a typedef/typename for. consider you can say: TYPE a = {b,c}; TYPE a2 = {b,c}; it is equivalent to typedef enum {b,c} a, a2;) not yet working, not yet enabled don't widen return types leave the mechanism though because this might be where we adjust struct vs. struct*, which is another thing configure -enable-checking complains about, though that is specific to module initializers I think, not all functions in general set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) part of attempted work in progress to generate decent trees instead of obviously poor ones; aka to actually maybe finish this backend instead of leaving it very incomplete for years (not yet enabled) Do a better job of skipping the prefix of module/segment names. M_Main => "Main" instead of "ain". Instead of always skipping 3, skip up to the first underscore, if it is at position 0, 1, or 2. Right? Or did I regress this somewhere since release? layout_decl(var, 0) => layout_decl(var, 1) alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:17:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:17:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <181251.85043.qm@web29701.mail.ird.yahoo.com> References: <20100924122918.A0CCA247400E@birch.elegosoft.com>, <181251.85043.qm@web29701.mail.ird.yahoo.com> Message-ID: It's not related to exception handling. It is "decimal floating point". It is some type that gcc adds to C, at least on some platforms, that we don't expose in Modula-3, and I doubt we ever would. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 00:03:13 +0000 > From: dabenavidesd at yahoo.es > To: m3commit at elegosoft.com; jkrell at elego.de > Subject: Re: [M3commit] CVS Update: cm3 > > Hi all: > why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. > Thanks in advance > > --- El vie, 24/9/10, Jay Krell escribi?: > > > De: Jay Krell > > Asunto: [M3commit] CVS Update: cm3 > > Para: m3commit at elegosoft.com > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > CVSROOT: /usr/cvs > > Changes by: > > jkrell at birch. 10/09/24 14:29:18 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > dfp.c > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > Makefile.in dfp.c > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > Makefile.in > > cm3/m3-sys/m3cc/src/: m3makefile > > > > Log message: > > don't need libdecnumber > > > > > > > From hosking at cs.purdue.edu Sat Sep 25 02:23:56 2010 From: hosking at cs.purdue.edu (Tony Hosking) Date: Fri, 24 Sep 2010 20:23:56 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> On 25 Sep 2010, at 02:16, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? This must have been a regression! > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:19:28 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:19:28 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: diff attached I keep finding other things to fix while trying to get enums/typedefs to work. So this let me save stuff at an ok place. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 02:16:13 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 02:40:18 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:40:18 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> References: <20100925001613.3543E247400D@birch.elegosoft.com>, <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> Message-ID: > This must have been a regression! Ok I'll have to see what the release branch did then. Probably not just by reading the code, which I already did a bit. Debugging it. - Jay ---------------------------------------- > From: hosking at cs.purdue.edu > Date: Fri, 24 Sep 2010 20:23:56 -0400 > To: jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > tighten up some asserts > > size and align >= 1, not just >= 0 > > er, no, size can be 0, for empty records > > or fields of their type, so leave it alone and align >= !!size > > > > work in progress > > types/debugging for enums and typedefs > > (when you say TYPE a = {b,c}; > > {b,c} is anonymous enum > > and a is a typedef/typename for. > > consider you can say: > > TYPE a = {b,c}; > > TYPE a2 = {b,c}; > > it is equivalent to typedef enum {b,c} a, a2;) > > not yet working, not yet enabled > > > > don't widen return types > > leave the mechanism though because > > this might be where we adjust struct vs. struct*, which > > is another thing configure -enable-checking complains about, > > though that is specific to module initializers I think, > > not all functions in general > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > part of attempted work in progress to generate decent trees > > instead of obviously poor ones; aka to actually maybe finish > > this backend instead of leaving it very incomplete for years > > (not yet enabled) > > > > Do a better job of skipping the prefix of module/segment names. > > M_Main => "Main" instead of "ain". > > Instead of always skipping 3, skip up to the first > > underscore, if it is at position 0, 1, or 2. > > Right? Or did I regress this somewhere since release? > > This must have been a regression! > > > > > layout_decl(var, 0) > > => layout_decl(var, 1) > > alignment = 0 is bad, causes divide by zero with plain -g > From jay.krell at cornell.edu Sat Sep 25 02:44:57 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:44:57 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, Message-ID: To be clear though, what I think I saw was: declare_segment(name = "_Main", typeid = NO_UID) => fix_name ?=> M_Main ?=> + 3 ?=> "ain" If those are the parameters to declare_segment, then the rest seems to follow, in release. But I'll have to check it all. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > Date: Sat, 25 Sep 2010 00:40:18 +0000 > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > This must have been a regression! > > Ok I'll have to see what the release branch did then. > Probably not just by reading the code, which I already did a bit. > Debugging it. > > - Jay > ---------------------------------------- > > From: hosking at cs.purdue.edu > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > To: jkrell at elego.de > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > tighten up some asserts > > > size and align >= 1, not just >= 0 > > > er, no, size can be 0, for empty records > > > or fields of their type, so leave it alone and align >= !!size > > > > > > work in progress > > > types/debugging for enums and typedefs > > > (when you say TYPE a = {b,c}; > > > {b,c} is anonymous enum > > > and a is a typedef/typename for. > > > consider you can say: > > > TYPE a = {b,c}; > > > TYPE a2 = {b,c}; > > > it is equivalent to typedef enum {b,c} a, a2;) > > > not yet working, not yet enabled > > > > > > don't widen return types > > > leave the mechanism though because > > > this might be where we adjust struct vs. struct*, which > > > is another thing configure -enable-checking complains about, > > > though that is specific to module initializers I think, > > > not all functions in general > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > part of attempted work in progress to generate decent trees > > > instead of obviously poor ones; aka to actually maybe finish > > > this backend instead of leaving it very incomplete for years > > > (not yet enabled) > > > > > > Do a better job of skipping the prefix of module/segment names. > > > M_Main => "Main" instead of "ain". > > > Instead of always skipping 3, skip up to the first > > > underscore, if it is at position 0, 1, or 2. > > > Right? Or did I regress this somewhere since release? > > > > This must have been a regression! > > > > > > > > layout_decl(var, 0) > > > => layout_decl(var, 1) > > > alignment = 0 is bad, causes divide by zero with plain -g > > > From dabenavidesd at yahoo.es Sat Sep 25 02:47:54 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:47:54 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: Message-ID: <66881.63033.qm@web29716.mail.ird.yahoo.com> Te registers for div by 0 exceptions are shared for both he ALU with the FPU, so you know. That's the actual way of doing better exception handling perhaps this is not supported in it, so maybe I'm wrong, right? Ok. Unfortunately this is not true for a number of other platforms Thanks in advance --- El vie, 24/9/10, Jay K escribi?: > De: Jay K > Asunto: RE: [M3commit] CVS Update: cm3 > Para: "Daniel (M3)" , m3commit at elegosoft.com, "Jay Krell" > Fecha: viernes, 24 de septiembre, 2010 19:17 > > It's not related to exception handling. > It is "decimal floating point". > It is some type that gcc adds to C, at least on some > platforms, that we don't > expose in Modula-3, and I doubt we ever would. > > - Jay > > ---------------------------------------- > > Date: Sat, 25 Sep 2010 00:03:13 +0000 > > From: dabenavidesd at yahoo.es > > To: m3commit at elegosoft.com; > jkrell at elego.de > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Hi all: > > why not, are you sure you want to be ride of the > exception capabilities? Or Do I miss something, don't I? > Perhaps I do. > > Thanks in advance > > > > --- El vie, 24/9/10, Jay Krell escribi?: > > > > > De: Jay Krell > > > Asunto: [M3commit] CVS Update: cm3 > > > Para: m3commit at elegosoft.com > > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > > CVSROOT: /usr/cvs > > > Changes by: > > > jkrell at birch. 10/09/24 14:29:18 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > > dfp.c > > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > > Makefile.in dfp.c > > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > > Makefile.in > > > cm3/m3-sys/m3cc/src/: m3makefile > > > > > > Log message: > > > don't need libdecnumber > > > > > > > > > > > > > > > > From hosking at elego.de Sat Sep 25 03:43:34 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:43:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925014334.F10852474038@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:43:34 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:53:51 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:53:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015351.EF776247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:53:51 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Ops.i3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:54:53 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:54:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015453.32B5B247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:54:53 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Check.m3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From jkrell at elego.de Sat Sep 25 12:25:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 12:25:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925102507.D64F4CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 12:25:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Propery fix for getting the current unit name from declare_segment. The problem was that on Darwin I no longer mangle names, since there is no m3gdb to consume the mangled names, so the identifier was M_Main instead of MM_Main. In this revised code, I just strip 2 characters from the unmangled name instead of dealing with the mangled name. This probably costs us an extra heap copy, ok. I also no longer use the anonymous names that do come through here (e.g. L_1 with its first 3 characters removed!) From jay.krell at cornell.edu Sat Sep 25 12:25:59 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:25:59 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, , Message-ID: indeed, release: declare_segment ? name = M_Main ? fix_name => MM_Main ? +3 => Main I fixed it, attached. Thanks for the chiding. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: RE: [M3commit] CVS Update: cm3 > Date: Sat, 25 Sep 2010 00:44:57 +0000 > > > To be clear though, what I think I saw was: > > declare_segment(name = "_Main", typeid = NO_UID) > => fix_name > => M_Main > => + 3 > => "ain" > > If those are the parameters to declare_segment, > then the rest seems to follow, in release. But I'll have to check it all. > > - Jay > > ---------------------------------------- > > From: jay.krell at cornell.edu > > To: hosking at cs.purdue.edu; jkrell at elego.de > > Date: Sat, 25 Sep 2010 00:40:18 +0000 > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > This must have been a regression! > > > > Ok I'll have to see what the release branch did then. > > Probably not just by reading the code, which I already did a bit. > > Debugging it. > > > > - Jay > > ---------------------------------------- > > > From: hosking at cs.purdue.edu > > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > > To: jkrell at elego.de > > > CC: m3commit at elegosoft.com > > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > > > CVSROOT: /usr/cvs > > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > > > Modified files: > > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > > > Log message: > > > > tighten up some asserts > > > > size and align >= 1, not just >= 0 > > > > er, no, size can be 0, for empty records > > > > or fields of their type, so leave it alone and align >= !!size > > > > > > > > work in progress > > > > types/debugging for enums and typedefs > > > > (when you say TYPE a = {b,c}; > > > > {b,c} is anonymous enum > > > > and a is a typedef/typename for. > > > > consider you can say: > > > > TYPE a = {b,c}; > > > > TYPE a2 = {b,c}; > > > > it is equivalent to typedef enum {b,c} a, a2;) > > > > not yet working, not yet enabled > > > > > > > > don't widen return types > > > > leave the mechanism though because > > > > this might be where we adjust struct vs. struct*, which > > > > is another thing configure -enable-checking complains about, > > > > though that is specific to module initializers I think, > > > > not all functions in general > > > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > > part of attempted work in progress to generate decent trees > > > > instead of obviously poor ones; aka to actually maybe finish > > > > this backend instead of leaving it very incomplete for years > > > > (not yet enabled) > > > > > > > > Do a better job of skipping the prefix of module/segment names. > > > > M_Main => "Main" instead of "ain". > > > > Instead of always skipping 3, skip up to the first > > > > underscore, if it is at position 0, 1, or 2. > > > > Right? Or did I regress this somewhere since release? > > > > > > This must have been a regression! > > > > > > > > > > > layout_decl(var, 0) > > > > => layout_decl(var, 1) > > > > alignment = 0 is bad, causes divide by zero with plain -g > > > > > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 12:28:56 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:28:56 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925102507.D64F4CC3AC@birch.elegosoft.com> References: <20100925102507.D64F4CC3AC@birch.elegosoft.com> Message-ID: ? /* do not use "name", it is from alloca; skip the 'I_' or 'M_' prefix. */ ? if (name_length > 2) ? { ??? gcc_assert (name); ??? gcc_assert (name[0] == 'I' || name[0] == 'M'); ??? gcc_assert (name[1] == '_'); ??? gcc_assert (name[2]); ??? current_unit_name = xstrdup (name + 2); ??? current_unit_name_length = name_length - 2; ? } Another approach would be ? current_unit_name = IDENTIFIER_POINTER (DECL_NAME (v)) + 2 + m3gdb; m3gdb is the new boolean I introduced which is false unless gstabs and not Darwin. Which would save the heap alloc. Notice that we always get declare_segment(null) also and it was acting dubiously. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 12:25:07 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 12:25:07 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Propery fix for getting the current unit name from declare_segment. > The problem was that on Darwin I no longer mangle names, > since there is no m3gdb to consume the mangled names, > so the identifier was M_Main instead of MM_Main. > > In this revised code, I just strip 2 characters from the > unmangled name instead of dealing with the mangled name. > > This probably costs us an extra heap copy, ok. > > I also no longer use the anonymous names that do > come through here (e.g. L_1 with its first 3 characters removed!) > From jkrell at elego.de Sat Sep 25 13:22:59 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 13:22:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925112259.28E76CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 13:22:59 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: replace m3_convert with convert m3core seemed to have no real change don't bother "copying" memset/memcpy/memmove/etc, just use #define From hosking at elego.de Sat Sep 25 16:47:01 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 16:47:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925144701.B1E8DCC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 16:47:01 Modified files: cm3/m3-libs/m3core/src/: m3makefile Log message: Disable building of atomic until I fix the compiler front-end. From jkrell at elego.de Sun Sep 26 14:28:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 14:28:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926122811.0A2B62474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 14:28:10 Modified files: cm3/scripts/python/: pylib.py Log message: fix I386_NT boot support (filter out m3cc and restore copying the *.io and *.mo files) From jkrell at elego.de Sun Sep 26 15:48:45 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:48:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926134845.A95CE2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:48:45 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: Makefile.am Makefile.in acinclude.m4 aclocal.m4 configure configure.in gmp-h.in gmp-impl.h longlong.h cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc/gmp/mpz/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc-4.5/: Makefile.def Makefile.in configure configure.ac cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in builtins.c fold-const.c lto-compress.c real.c real.h toplev.c tree-ssa-ccp.c cm3/m3-sys/m3cc/src/: m3makefile Removed files: cm3/m3-sys/m3cc/gcc/gmp/: compat.c extract-dbl.c gen-fac_ui.c gen-fib.c gen-psqr.c gmpxx.h invalid.c libmp.sym mp-h.in mp_dv_tab.c mp_get_fns.c mp_minv_tab.c mp_set_fns.c rand.c randbui.c randclr.c randdef.c randiset.c randlc2s.c randlc2x.c randmt.c randmt.h randmts.c randmui.c rands.c randsd.c randsdui.c tal-debug.c tal-notreent.c cm3/m3-sys/m3cc/gcc/gmp/cxx/: Makefile.am Makefile.in dummy.cc isfuns.cc ismpf.cc ismpq.cc ismpz.cc ismpznw.cc osdoprnti.cc osfuns.cc osmpf.cc osmpq.cc osmpz.cc cm3/m3-sys/m3cc/gcc/gmp/demos/: Makefile.am Makefile.in factorize.c isprime.c pexpr-config-h.in pexpr.c primes.c qcn.c cm3/m3-sys/m3cc/gcc/gmp/demos/calc/: Makefile.am Makefile.in README calc-common.h calc-config-h.in calc.c calc.h calc.y calclex.c calclex.l calcread.c cm3/m3-sys/m3cc/gcc/gmp/demos/expr/: Makefile.am Makefile.in README expr-impl.h expr.c expr.h exprf.c exprfa.c exprq.c exprqa.c exprv.c exprz.c exprza.c run-expr.c t-expr.c cm3/m3-sys/m3cc/gcc/gmp/demos/perl/: GMP.pm GMP.xs INSTALL Makefile.PL sample.pl test.pl test2.pl typemap cm3/m3-sys/m3cc/gcc/gmp/demos/perl/GMP/: Mpf.pm Mpq.pm Mpz.pm Rand.pm cm3/m3-sys/m3cc/gcc/gmp/doc/: Makefile.am Makefile.in configuration fdl.texi gmp.info gmp.info-1 gmp.info-2 gmp.texi isa_abi_headache mdate-sh projects.html stamp-vti tasks.html texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/gmp/macos/: Makefile.in README configure unix2mac cm3/m3-sys/m3cc/gcc/gmp/mpbsd/: Makefile.am Makefile.in itom.c mfree.c min.c mout.c mtox.c rpow.c sdiv.c xtom.c cm3/m3-sys/m3cc/gcc/gmp/mpf/: Makefile.am Makefile.in abs.c add.c add_ui.c ceilfloor.c clear.c cmp.c cmp_d.c cmp_si.c cmp_ui.c div.c div_2exp.c div_ui.c dump.c eq.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_ulong.c fits_ushort.c get_d.c get_d_2exp.c get_dfl_prec.c get_prc.c get_si.c get_str.c get_ui.c init.c init2.c inp_str.c int_p.c iset.c iset_d.c iset_si.c iset_str.c iset_ui.c mul.c mul_2exp.c mul_ui.c neg.c out_str.c pow_ui.c random2.c reldiff.c set.c set_d.c set_dfl_prec.c set_prc.c set_prc_raw.c set_q.c set_si.c set_str.c set_ui.c set_z.c size.c sqrt.c sqrt_ui.c sub.c sub_ui.c swap.c trunc.c ui_div.c ui_sub.c urandomb.c cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makeasm.am asm-defs.m4 cpp-ccas m4-ccas cm3/m3-sys/m3cc/gcc/gmp/mpn/a29k/: add_n.s addmul_1.s lshift.s mul_1.s rshift.s sub_n.s submul_1.s udiv.s umul.s cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/: README add_n.asm addmul_1.asm alpha-defs.m4 aorslsh1_n.asm cntlz.asm copyd.asm copyi.asm default.m4 dive_1.c diveby3.asm gmp-mparam.h invert_limb.asm lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm unicos.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev5/: add_n.asm com_n.asm gmp-mparam.h lshift.asm rshift.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/: add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm slot.pl sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/nails/: README addmul_1.asm addmul_2.asm addmul_3.asm addmul_4.asm aors_n.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev67/: gcd_1.asm hamdist.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/arm/: add_n.asm addmul_1.asm arm-defs.m4 copyd.asm copyi.asm gmp-mparam.h invert_limb.asm mul_1.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/clipper/: add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/: README add_n.c gmp-mparam.h hamdist.c lshift.c mulww.f popcount.c rshift.c sub_n.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/cfp/: addmul_1.c mul_1.c mulwwc90.s mulwwj90.s submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/ieee/: addmul_1.c gmp-mparam.h invert_limb.c mul_1.c mul_basecase.c sqr_basecase.c submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/generic/: add.c add_1.c addsub_n.c bdivmod.c cmp.c dive_1.c divis.c divrem.c dump.c fib2_ui.c gcd.c gcd_1.c gcdext.c get_d.c jacbase.c mod_1.c mod_34lsub1.c mode1o.c mullow_basecase.c mullow_n.c perfsqr.c popham.c pow_1.c pre_mod_1.c random.c random2.c rootrem.c scan0.c scan1.c set_str.c sizeinbase.c sqrtrem.c sub.c sub_1.c udiv_w_sdiv.c cm3/m3-sys/m3cc/gcc/gmp/mpn/i960/: README add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/ia64/: README add_n.asm addmul_1.asm copyd.asm copyi.asm gcd_1.asm gmp-mparam.h ia64-defs.m4 invert_limb.asm lorrshift.asm mode1o.asm mul_1.asm popcount.asm sub_n.asm submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/lisp/: gmpasm-mode.el cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/: README aors_n.asm gmp-mparam.h lshift.asm m68k-defs.m4 rshift.asm t-m68k-defs.pl cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/mc68020/: aorsmul_1.asm mul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/: README add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/mc88110/: add_n.S addmul_1.s mul_1.s sub_n.S cm3/m3-sys/m3cc/gcc/gmp/mpn/mips32/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mips-defs.m4 mips.m4 mul_1.asm rshift.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/mips64/: README add_n.asm addmul_1.asm divrem_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/ns32k/: add_n.s addmul_1.s mul_1.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/: README add_n.asm gmp-mparam.h lshift.asm pa-defs.m4 rshift.asm sub_n.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/: addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/pa7100/: add_n.asm addmul_1.asm lshift.asm rshift.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa2_0/: add_n.asm gmp-mparam.h sqr_diagonal.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa64/: README add_n.asm addmul_1.asm aorslsh1_n.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/power/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sdiv.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/: README add_n.asm addlsh1_n.asm addmul_1.asm aix.m4 darwin.m4 diveby3.asm eabi.m4 elf.m4 gmp-mparam.h lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm powerpc-defs.m4 rshift.asm sqr_diagonal.asm sub_n.asm sublsh1_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/750/: com_n.asm gmp-mparam.h lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/vmx/: copyd.asm copyi.asm logops_n.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/: README aix.m4 copyd.asm copyi.asm darwin.m4 elf.m4 gmp-mparam.h lshift.asm rshift.asm sqr_diagonal.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode32/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode64/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/vmx/: popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pyr/: add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/s390/: README addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/sh2/: addmul_1.s mul_1.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sparc-defs.m4 sub_n.asm submul_1.asm udiv.asm udiv_nfp.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/: addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/supersparc/: gmp-mparam.h udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v9/: README add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc64/: README add_n.asm addmul_1.asm addmul_2.asm copyd.asm copyi.asm dive_1.c divrem_1.c gmp-mparam.h lshift.asm mod_1.c mode1o.c mul_1.asm rshift.asm sparc64.h sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/thumb/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/vax/: add_n.s addmul_1.s gmp-mparam.h lshift.s mul_1.s rshift.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/: README aors_n.asm aorsmul_1.asm copyd.asm copyi.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h lshift.asm mod_1.asm mod_34lsub1.asm mul_1.asm mul_basecase.asm rshift.asm sqr_basecase.asm t-zdisp.sh t-zdisp2.pl udiv.asm umul.asm x86-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/fat/: fat.c fat_entry.asm gcd_1.c gmp-mparam.h mode1o.c cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/i486/: gmp-mparam.h cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/: README aors_n.asm aorsmul_1.asm cross.pl diveby3.asm divrem_1.asm gcd_1.asm gcd_finda.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm pre_mod_1.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/k62mmx/: copyd.asm lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/mmx/: com_n.asm dive_1.asm logops_n.asm lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/: README aors_n.asm aorsmul_1.asm dive_1.asm diveby3.asm gcd_1.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/mmx/: com_n.asm copyd.asm copyi.asm divrem_1.asm lshift.asm mod_1.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/: README aors_n.asm aorsmul_1.asm copyd.asm dive_1.asm diveby3.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/mmx/: divrem_1.asm gmp-mparam.h lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/p3mmx/: popham.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/: README aors_n.asm aorsmul_1.asm com_n.asm copyd.asm copyi.asm dive_1.asm diveby3.asm gmp-mparam.h hamdist.asm logops_n.asm lshift.asm mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_2.asm mul_basecase.asm popcount.asm rshift.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/mmx/: gmp-mparam.h hamdist.asm lshift.asm mul_1.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/: README copyd.asm copyi.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/mmx/: lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/sse2/: add_n.asm addlsh1_n.asm addmul_1.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm rsh1add_n.asm sqr_basecase.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86_64/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mode1o.asm mul_1.asm rshift.asm sub_n.asm submul_1.asm x86_64-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000/: README add_n.s gmp-mparam.h mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000x/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpq/: Makefile.am Makefile.in abs.c aors.c canonicalize.c clear.c cmp.c cmp_si.c cmp_ui.c div.c equal.c get_d.c get_den.c get_num.c get_str.c init.c inp_str.c inv.c md_2exp.c mul.c neg.c out_str.c set.c set_d.c set_den.c set_f.c set_num.c set_si.c set_str.c set_ui.c set_z.c swap.c cm3/m3-sys/m3cc/gcc/gmp/mpz/: abs.c and.c aorsmul.c aorsmul_i.c array_init.c bin_ui.c bin_uiui.c cdiv_q.c cdiv_q_ui.c cdiv_qr.c cdiv_qr_ui.c cdiv_r.c cdiv_r_ui.c cdiv_ui.c cfdiv_q_2exp.c cfdiv_r_2exp.c clrbit.c cmp_d.c cmp_si.c cmp_ui.c cmpabs.c cmpabs_d.c cmpabs_ui.c com.c combit.c cong.c cong_2exp.c cong_ui.c dive_ui.c divegcd.c divexact.c divis.c divis_2exp.c divis_ui.c dump.c fac_ui.c fdiv_q_ui.c fdiv_qr.c fdiv_qr_ui.c fdiv_r.c fdiv_r_ui.c fdiv_ui.c fib2_ui.c fib_ui.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_uint.c fits_ulong.c fits_ushort.c gcd.c gcd_ui.c gcdext.c get_d.c get_d_2exp.c get_si.c get_str.c get_ui.c getlimbn.c hamdist.c init2.c inp_raw.c inp_str.c invert.c ior.c iset_d.c iset_si.c iset_str.c iset_ui.c jacobi.c kronsz.c kronuz.c kronzs.c kronzu.c lcm.c lcm_ui.c lucnum2_ui.c lucnum_ui.c millerrabin.c mod.c mul.c mul_2exp.c mul_i.h mul_si.c mul_ui.c n_pow_ui.c nextprime.c out_raw.c perfpow.c perfsqr.c popcount.c pow_ui.c powm.c powm_ui.c pprime_p.c random.c random2.c realloc2.c remove.c root.c rootrem.c rrandomb.c scan0.c scan1.c set_d.c set_f.c set_q.c set_si.c set_str.c setbit.c size.c sqrt.c sqrtrem.c tdiv_q.c tdiv_q_2exp.c tdiv_q_ui.c tdiv_qr_ui.c tdiv_r.c tdiv_r_2exp.c tdiv_r_ui.c tdiv_ui.c tstbit.c ui_pow_ui.c ui_sub.c urandomb.c urandomm.c xor.c cm3/m3-sys/m3cc/gcc/gmp/printf/: Makefile.am Makefile.in asprintf.c asprntffuns.c doprnt.c doprntf.c doprnti.c fprintf.c obprintf.c obprntffuns.c obvprintf.c printf.c printffuns.c repl-vsnprintf.c snprintf.c snprntffuns.c sprintf.c sprintffuns.c vasprintf.c vfprintf.c vprintf.c vsnprintf.c vsprintf.c cm3/m3-sys/m3cc/gcc/gmp/scanf/: Makefile.am Makefile.in doscan.c fscanf.c fscanffuns.c scanf.c sscanf.c sscanffuns.c vfscanf.c vscanf.c vsscanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/: Makefile.am Makefile.in amd64call.asm amd64check.c memory.c misc.c refmpf.c refmpn.c refmpq.c refmpz.c spinner.c t-bswap.c t-constants.c t-count_zeros.c t-gmpmax.c t-hightomask.c t-modlinv.c t-parity.c t-popc.c t-sub.c tests.h trace.c x86call.asm x86check.c cm3/m3-sys/m3cc/gcc/gmp/tests/cxx/: Makefile.am Makefile.in clocale.c t-assign.cc t-binary.cc t-cast.cc t-constr.cc t-headers.cc t-istream.cc t-locale.cc t-misc.cc t-ops.cc t-ostream.cc t-prec.cc t-rand.cc t-ternary.cc t-unary.cc cm3/m3-sys/m3cc/gcc/gmp/tests/devel/: Makefile.am Makefile.in README addmul_N.c anymul_1.c aors_n.c copy.c divmod_1.c divrem.c logops_n.c mul_N.c shift.c try.c cm3/m3-sys/m3cc/gcc/gmp/tests/misc/: Makefile.am Makefile.in t-locale.c t-printf.c t-scanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpbsd/: Makefile.am Makefile.in allfuns.c t-itom.c t-mtox.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpf/: Makefile.am Makefile.in reuse.c t-add.c t-cmp_d.c t-cmp_si.c t-conv.c t-div.c t-dm2exp.c t-fits.c t-get_d.c t-get_d_2exp.c t-get_si.c t-get_ui.c t-gsprec.c t-inp_str.c t-int_p.c t-mul_ui.c t-muldiv.c t-set.c t-set_q.c t-set_si.c t-set_ui.c t-sqrt.c t-sqrt_ui.c t-sub.c t-trunc.c t-ui_div.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpn/: Makefile.am Makefile.in t-aors_1.c t-asmtype.c t-divrem_1.c t-fat.c t-get_d.c t-instrument.c t-iord_u.c t-mp_bases.c t-perfsqr.c t-scan.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpq/: Makefile.am Makefile.in t-aors.c t-cmp.c t-cmp_si.c t-cmp_ui.c t-equal.c t-get_d.c t-get_str.c t-inp_str.c t-md_2exp.c t-set_f.c t-set_str.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpz/: Makefile.am Makefile.in bit.c convert.c dive.c dive_ui.c io.c logic.c reuse.c t-addsub.c t-aorsmul.c t-bin.c t-cdiv_ui.c t-cmp.c t-cmp_d.c t-cmp_si.c t-cong.c t-cong_2exp.c t-div_2exp.c t-divis.c t-divis_2exp.c t-export.c t-fac_ui.c t-fdiv.c t-fdiv_ui.c t-fib_ui.c t-fits.c t-gcd.c t-gcd_ui.c t-get_d.c t-get_d_2exp.c t-get_si.c t-hamdist.c t-import.c t-inp_str.c t-io_raw.c t-jac.c t-lcm.c t-lucnum_ui.c t-mul.c t-mul_i.c t-oddeven.c t-perfsqr.c t-popcount.c t-pow.c t-powm.c t-powm_ui.c t-pprime_p.c t-root.c t-scan.c t-set_d.c t-set_f.c t-set_si.c t-set_str.c t-sizeinbase.c t-sqrtrem.c t-tdiv.c t-tdiv_ui.c cm3/m3-sys/m3cc/gcc/gmp/tests/rand/: Makefile.am Makefile.in findlc.c gen.c gmpstat.h spect.c stat.c statlib.c t-iset.c t-lc2exp.c t-mt.c t-rand.c t-urbui.c t-urmui.c t-urndmm.c zdiv_round.c cm3/m3-sys/m3cc/gcc/gmp/tune/: Makefile.am Makefile.in README alpha.asm common.c divrem1div.c divrem1inv.c divrem2div.c divrem2inv.c freq.c gcd_bin.c gcd_finda_gen.c gcdext_double.c gcdext_single.c gcdextod.c gcdextos.c hppa.asm hppa2.asm hppa2w.asm ia64.asm jacbase1.c jacbase2.c jacbase3.c many.pl mod_1_div.c mod_1_inv.c modlinv.c noop.c pentium.asm powerpc.asm powerpc64.asm powm_mod.c powm_redc.c pre_divrem_1.c sb_div.c sb_inv.c set_strb.c set_strs.c sparcv9.asm speed-ext.c speed.c speed.h time.c tuneup.c x86_64.asm cm3/m3-sys/m3cc/gcc/mpc/: AUTHORS COPYING.LIB ChangeLog INSTALL Makefile.am Makefile.in Makefile.vc NEWS README TODO acinclude.m4 aclocal.m4 config.guess config.h.in config.sub configure configure.ac depcomp install-sh ltmain.sh missing cm3/m3-sys/m3cc/gcc/mpc/doc/: Makefile.am Makefile.in mdate-sh mpc.texi stamp-vti texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/mpc/src/: Makefile.am Makefile.in abs.c acos.c acosh.c add.c add_fr.c add_ui.c arg.c asin.c asinh.c atan.c atanh.c clear.c cmp.c cmp_si_si.c conj.c cos.c cosh.c div.c div_2exp.c div_fr.c div_ui.c exp.c fr_div.c fr_sub.c get_prec.c get_prec2.c get_str.c get_version.c imag.c init2.c init3.c inp_str.c log.c mem.c mpc-impl.h mpc.h mul.c mul_2exp.c mul_fr.c mul_i.c mul_si.c mul_ui.c neg.c norm.c out_str.c pow.c pow_d.c pow_fr.c pow_ld.c pow_si.c pow_ui.c pow_z.c proj.c real.c set.c set_prec.c set_str.c set_x.c set_x_x.c sin.c sinh.c sqr.c sqrt.c strtoc.c sub.c sub_fr.c sub_ui.c swap.c tan.c tanh.c uceil_log2.c ui_div.c ui_ui_sub.c urandom.c cm3/m3-sys/m3cc/gcc/mpc/tests/: Makefile.am Makefile.in abs.dat acos.dat acosh.dat add.dat add_fr.dat arg.dat asin.dat asinh.dat atan.dat atanh.dat comparisons.c conj.dat cos.dat cosh.dat div.dat div_fr.dat exp.dat fr_div.dat fr_sub.dat inp_str.dat log.dat memory.c mpc-tests.h mul.dat mul_fr.dat neg.dat norm.dat pow.dat proj.dat random.c read_data.c sin.dat sinh.dat sqr.dat sqrt.dat strtoc.dat sub.dat sub_fr.dat tabs.c tacos.c tacosh.c tadd.c tadd_fr.c tadd_ui.c tan.dat tanh.dat targ.c tasin.c tasinh.c tatan.c tatanh.c tconj.c tcos.c tcosh.c tdiv.c tdiv_2exp.c tdiv_fr.c tdiv_ui.c texp.c tfr_div.c tfr_sub.c tgeneric.c tget_version.c timag.c tio_str.c tlog.c tmul.c tmul_2exp.c tmul_fr.c tmul_i.c tmul_si.c tmul_ui.c tneg.c tnorm.c tpow.c tpow_d.c tpow_fr.c tpow_ld.c tpow_si.c tpow_ui.c tpow_z.c tprec.c tproj.c treal.c treimref.c tset.c tsin.c tsinh.c tsqr.c tsqrt.c tstrtoc.c tsub.c tsub_fr.c tsub_ui.c ttan.c ttanh.c tui_div.c tui_ui_sub.c cm3/m3-sys/m3cc/gcc-4.5/libcpp/po/: ChangeLog be.gmo ca.gmo cpplib.pot da.gmo de.gmo el.gmo es.gmo fi.gmo fi.po fr.gmo id.gmo ja.gmo nl.gmo sv.gmo tr.gmo uk.gmo vi.gmo zh_CN.gmo zh_TW.gmo cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/: decBasic.c decCommon.c decContext.c decDouble.c decExcept.c decLibrary.c decNumber.c decPacked.c decQuad.c decRound.c decSingle.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/bid/: bid2dpd_dpd2bid.c decimal128.c decimal32.c decimal64.c host-ieee128.c host-ieee32.c host-ieee64.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/dpd/: decimal128.c decimal32.c decimal64.c cm3/m3-sys/m3cc/gcc-4.5/zlib/: adler32.c compress.c crc32.c deflate.c example.c gzio.c infback.c inffast.c inflate.c inftrees.c minigzip.c trees.c uncompr.c zutil.c Log message: mpc is only for complex numbers useless to us change the gcc code to not reference mpc mpfr is entirely or almost entirely for implementing "builtin" functions, like sin/cos, etc. also useless to us change the gcc code to not reference mpfr Only a small amount of gmp is used. In particular, the following are not used: *rand*, mpbsd, mpf (float), mpq (rational), printf, scanf, none of the assembly code So drastically trim gmp. While at it, also remove the zlib dependency that we don't use. It is for compressing LTO objects. We don't make those. And trim libdecnumber. Trim configure options in gmp, like how to allocate, building shared, asserts, etc. Todo: look into the "dumbmp.c" subset. dumbmp.c is an existant file in gmp used by the "generator" programs, with a simple portable subset of gmp. From jkrell at elego.de Sun Sep 26 15:55:00 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135500.150A32474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:55:00 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h gmp-h.in Log message: go back a version From jkrell at elego.de Sun Sep 26 15:56:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:56:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135638.E08B72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:56:38 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h Log message: remove #include fib_table.h again (very late edits weren't tested, but the vast vast majority was) From jkrell at elego.de Sun Sep 26 16:02:02 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140202.D21CB2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:02 Removed files: cm3/m3-sys/m3cc/gcc/mpc/doc/: mpc.info cm3/m3-sys/m3cc/gcc/mpfr/: AUTHORS BUGS COPYING COPYING.LIB ChangeLog FAQ.html INSTALL Makefile.am Makefile.in NEWS PATCHES README TODO VERSION abort_prec_max.c acinclude.m4 aclocal.m4 acos.c acosh.c add.c add1.c add1sp.c add_ui.c agm.c ansi2knr.1 ansi2knr.c asin.c asinh.c atan.c atan2.c atanh.c cache.c cbrt.c check.c clear.c clears.c cmp.c cmp2.c cmp_abs.c cmp_d.c cmp_ld.c cmp_si.c cmp_ui.c comparisons.c config.guess config.sub configure configure.in const_catalan.c const_euler.c const_log2.c const_pi.c constant.c copysign.c cos.c cosh.c cot.c coth.c csc.c csch.c depcomp dim.c div.c div_2exp.c div_2si.c div_2ui.c div_ui.c dump.c eint.c eq.c erf.c erfc.c exceptions.c exp.c exp10.c exp2.c exp3.c exp_2.c expm1.c extract.c factorial.c fdl.texi fits_intmax.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_uintmax.c fits_ulong.c fits_ushort.c fma.c fms.c frac.c free_cache.c gamma.c gen_inverse.h generic.c get_d.c get_d64.c get_exp.c get_f.c get_ld.c get_patches.c get_patches.sh get_si.c get_sj.c get_str.c get_ui.c get_uj.c get_z.c get_z_exp.c gmp_op.c hypot.c init.c init2.c inits.c inits2.c inp_str.c install-sh int_ceil_log2.c isinf.c isinteger.c isnan.c isnum.c isqrt.c iszero.c jn.c jyn_asympt.c lngamma.c log.c log10.c log1p.c log2.c logging.c ltmain.sh minmax.c missing mp_clz_tab.c mparam_h.in mpf2mpfr.h mpfr-gmp.c mpfr-gmp.h mpfr-impl.h mpfr-longlong.h mpfr-thread.h mpfr.h mpfr.info mpfr.texi mpn_exp.c mul.c mul_2exp.c mul_2si.c mul_2ui.c mul_ui.c mulders.c neg.c next.c out_str.c pow.c pow_si.c pow_ui.c pow_z.c powerof2.c print_raw.c print_rnd_mode.c random.c random2.c reldiff.c remquo.c rint.c root.c round_near_x.c round_p.c round_prec.c round_raw_generic.c sec.c sech.c set.c set_d.c set_d64.c set_dfl_prec.c set_exp.c set_f.c set_inf.c set_ld.c set_nan.c set_prc_raw.c set_prec.c set_q.c set_rnd.c set_si.c set_si_2exp.c set_sj.c set_str.c set_str_raw.c set_ui.c set_ui_2exp.c set_uj.c set_z.c setmax.c setmin.c setsign.c sgn.c si_op.c signbit.c sin.c sin_cos.c sinh.c sqr.c sqrt.c sqrt_ui.c stack_interface.c strtofr.c sub.c sub1.c sub1sp.c sub_ui.c subnormal.c sum.c swap.c tan.c tanh.c texinfo.tex tuneup.c uceil_exp2.c uceil_log2.c ufloor_log2.c ui_div.c ui_pow.c ui_pow_ui.c ui_sub.c urandomb.c version.c volatile.c yn.c zeta.c zeta_ui.c cm3/m3-sys/m3cc/gcc/mpfr/tests/: Makefile.am Makefile.in cmp_str.c inp_str.data memory.c mpf_compat.c mpf_compat.h mpfr-test.h mpfr_compat.c reuse.c rnd_mode.c tabs.c tacos.c tacosh.c tadd.c tadd1sp.c tadd_ui.c tagm.c tasin.c tasinh.c tatan.c tatanh.c tcan_round.c tcbrt.c tcheck.c tcmp.c tcmp2.c tcmp_d.c tcmp_ld.c tcmp_ui.c tcmpabs.c tcomparisons.c tconst_catalan.c tconst_euler.c tconst_log2.c tconst_pi.c tcopysign.c tcos.c tcosh.c tcot.c tcoth.c tcsc.c tcsch.c tdim.c tdiv.c tdiv_ui.c teint.c teq.c terf.c tests.c texceptions.c texp.c texp10.c texp2.c texpm1.c tfactorial.c tfits.c tfma.c tfms.c tfrac.c tgamma.c tgeneric.c tgeneric_ui.c tget_d.c tget_d_2exp.c tget_f.c tget_ld_2exp.c tget_set_d64.c tget_sj.c tget_str.c tget_z.c tgmpop.c thyperbolic.c thypot.c tinits.c tinp_str.c tinternals.c tisnan.c tisqrt.c tj0.c tj1.c tjn.c tl2b.c tlgamma.c tlngamma.c tlog.c tlog10.c tlog1p.c tlog2.c tminmax.c tmul.c tmul_2exp.c tmul_ui.c tnext.c tout_str.c toutimpl.c tpow.c tpow3.c tpow_all.c tpow_z.c trandom.c tremquo.c trint.c troot.c tround_prec.c tsec.c tsech.c tset.c tset_d.c tset_exp.c tset_f.c tset_ld.c tset_q.c tset_si.c tset_sj.c tset_str.c tset_z.c tsgn.c tsi_op.c tsin.c tsin_cos.c tsinh.c tsqr.c tsqrt.c tsqrt_ui.c tstckintc.c tstrtofr.c tsub.c tsub1sp.c tsub_ui.c tsubnormal.c tsum.c tswap.c ttan.c ttanh.c ttrunc.c tui_div.c tui_pow.c tui_sub.c tversion.c ty0.c ty1.c tyn.c tzeta.c tzeta_ui.c Log message: forgotten deletes From jkrell at elego.de Sun Sep 26 16:02:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140224.C60472474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:24 Modified files: cm3/m3-sys/m3cc/src/: clean_marker.txt Log message: trigger clean build From jkrell at elego.de Sun Sep 26 16:35:15 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:35:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926143516.082752474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:35:15 Modified files: cm3/m3-sys/m3cc/gcc/: configure configure.ac cm3/m3-sys/m3cc/gcc/gcc/: builtins.c real.c real.h toplev.c Log message: remove mpfr dependency from 4.3 as well, and it successfully links with the reduce gmp From jkrell at elego.de Sun Sep 26 16:48:03 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:48:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926144804.062692474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:48:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa-ccp.c Log message: Go back a version -- preserve builtins for the C compiler. No affect on gmp/mpfr/mpc dependency. From jkrell at elego.de Sun Sep 26 16:52:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:52:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926145238.7FEF72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:52:38 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: fold-const.c Log message: go back a version, the #define for do_mpc_arg2 should make it equivalent From jkrell at elego.de Tue Sep 28 12:55:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105507.D8BF42474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:07 Removed files: cm3/m3-sys/m3gdb/gdb/sim/: Makefile.in README-HACKING configure.ac ChangeLog MAINTAINERS configure cm3/m3-sys/m3gdb/gdb/sim/mips/: Makefile.in m16.dc config.in m16.igen mips3264r2.igen cp1.h vr.igen configure.ac m16run.c interp.c dv-tx3904tmr.c cp1.c tconfig.in acconfig.h dv-tx3904sio.c mdmx.igen tx.igen m16e.igen sim-main.c sim-main.h dv-tx3904cpu.c mips.dc dv-tx3904irc.c ChangeLog mips3d.igen mips.igen sb1.igen configure mdmx.c cm3/m3-sys/m3gdb/gdb/sim/frv/: profile-fr550.c arch.c profile-fr500.c Makefile.in profile-fr500.h frv-sim.h config.in README configure.ac pipeline.c decode.h cache.h TODO traps.c profile-fr450.c tconfig.in options.c cpuall.h profile.c frv.c cache.c cpu.c arch.h sim-main.h profile-fr400.h sem.c mloop.in profile.h registers.h registers.c interrupts.c cpu.h profile-fr550.h profile-fr400.c ChangeLog reset.c configure sim-if.c decode.c model.c devices.c memory.c cm3/m3-sys/m3gdb/gdb/sim/ppc/: psim.h ld-cache.c idecode_branch.h cap.h emul_unix.c emul_netbsd.c Makefile.in altivec_registers.h lf.h emul_bugapi.c pk_disklabel.c ld-decode.c hw_cpu.h idecode_fields.h bits.h aclocal.m4 dc-complex hw_cpu.c BUGS config.in table.h filter_filename.h inline.c gen-icache.h hw_vm.c README INSTALL device_table.c gen-support.h vm.c hw_memory.c gen-model.h filter.c vm_n.h emul_generic.h .gdbinit configure.ac hw_disk.c ld-decode.h e500.igen device_table.h corefile-n.h mon.c debug.h gdb-sim.c tree.h ppc.mt dc-stupid dgen.c sim-endian.h igen.c sim-endian.c filter.h mon.h hw_core.c ppc-spr-table acconfig.h hw_htab.c options.c gen-itable.h idecode_expression.h ppc-instructions os_emul.c emul_bugapi.h hw_com.c dc-test.01 corefile.c dc-simple debug.c hw_glue.c interrupts.h gen-model.c misc.h corefile.h sim_calls.c gen-support.c ld-insn.c events.h ChangeLog.00 words.h gen-idecode.c tree.c cpu.c device.c std-config.h gen-idecode.h hw_trace.c igen.h altivec_expression.h table.c ld-cache.h sim-main.h gen-semantics.c sim-endian-n.h hw_eeprom.c hw_nvram.c COPYING.LIB filter_filename.c bits.c os_emul.h inline.h hw_opic.c cap.c emul_chirp.h hw_phb.c emul_chirp.c hw_init.c registers.h gen-icache.c emul_generic.c registers.c interrupts.c RUN cpu.h emul_netbsd.h ChangeLog main.c hw_register.c hw_iobus.c sim_callbacks.h dc-test.02 events.c gen-semantics.h ld-insn.h configure hw_ide.c lf.c psim.c gen-itable.c double.c misc.c e500_registers.h device.h psim.texinfo dp-bit.c altivec.igen e500_expression.h options.h basics.h hw_phb.h vm.h COPYING hw_pal.c emul_unix.h cm3/m3-sys/m3gdb/gdb/sim/v850/: Makefile.in simops.c config.in configure.ac v850-dc interp.c acconfig.h v850_sim.h sim-main.h ChangeLog v850.igen simops.h configure cm3/m3-sys/m3gdb/gdb/sim/d10v/: Makefile.in simops.c config.in endian.c configure.ac interp.c acconfig.h d10v_sim.h ChangeLog configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/sh/: Makefile.in config.in configure.ac interp.c tconfig.in acconfig.h ChangeLog syscall.h configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/m32r/: arch.c Makefile.in m32r.c traps-linux.c cpux.h config.in README mloop2.in semx-switch.c modelx.c decodex.h model2.c m32r2.c configure.ac decode.h TODO traps.c tconfig.in acconfig.h decodex.c decode2.c cpuall.h decode2.h cpux.c cpu.c arch.h m32rx.c sim-main.h sem2-switch.c cpu2.c sem.c mloop.in cpu.h ChangeLog syscall.h configure sim-if.c decode.c model.c mloopx.in cpu2.h sem-switch.c devices.c m32r-sim.h cm3/m3-sys/m3gdb/gdb/sim/mn10300/: Makefile.in config.in dv-mn103int.c configure.ac interp.c tconfig.in acconfig.h op_utils.c am33-2.igen sim-main.c sim-main.h mn10300_sim.h dv-mn103tim.c dv-mn103ser.c ChangeLog dv-mn103iop.c am33.igen configure dv-mn103cpu.c mn10300.dc mn10300.igen cm3/m3-sys/m3gdb/gdb/sim/common/: cgen-trace.h sim-utils.h sim-utils.c Makefile.in sim-base.h hw-alloc.c sim-run.c sim-module.c cgen-par.h hw-properties.h sim-events.c sim-config.h hw-alloc.h sim-bits.c aclocal.m4 cgen-scache.h sim-info.c config.in cgen-scache.c sim-bits.h hw-handles.h sim-module.h cgen-utils.c hw-properties.c sim-load.c sim-io.c gentvals.sh sim-reg.c dv-core.c hw-instances.h nltvals.def callback.c configure.ac cgen-trace.c hw-tree.c sim-options.h sim-n-core.h gdbinit.in cgen-fpu.c Make-common.in hw-base.c sim-inline.c hw-events.h sim-endian.h sim-core.h sim-endian.c cgen.sh sim-watch.h tconfig.in acconfig.h sim-hload.c sim-trace.c sim-hrw.c sim-signal.h sim-reason.c sim-memopt.c sim-assert.h sim-abort.c sim-profile.h sim-cpu.h cgen-run.c sim-profile.c genmloop.sh cgen-sim.h sim-cpu.c sim-alu.h sim-options.c sim-model.h sim-model.c sim-inline.h run.1 cgen-fpu.h hw-device.h sim-stop.c gennltvals.sh sim-config.c dv-pal.c sim-engine.c cgen-types.h cgen-par.c gentmap.c sim-n-bits.h run-sim.h hw-ports.h cgen-cpu.h sim-signal.c dv-sockser.h sim-events.h cgen-engine.h sim-arange.h hw-instances.c cgen-ops.h sim-memopt.h ChangeLog sim-types.h nrun.c cgen-mem.h dv-sockser.c sim-hw.c sim-basics.h sim-fpu.c hw-ports.c sim-engine.h sim-trace.h sim-hw.h configure hw-handles.c sim-n-endian.h sim-resume.c hw-base.h hw-tree.h common.m4 syscall.c hw-main.h dv-glue.c sim-core.c hw-events.c hw-device.c sim-watch.c cgen-defs.h run.c sim-io.h cgen-accfp.c sim-arange.c sim-fpu.h cm3/m3-sys/m3gdb/gdb/sim/mcore/: Makefile.in config.in configure.ac interp.c sysdep.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/cris/: arch.c Makefile.in cris-opc.h modelv32.c crisv32f.c config.in semcrisv32f-switch.c cris-desc.c cris-desc.h configure.ac decodev32.c traps.c crisv10f.c tconfig.in decodev32.h cpuall.h cpuv10.h cpuv32.h decodev10.h arch.h sim-main.h mloop.in cpuv32.c semcrisv10f-switch.c cpuv10.c configure sim-if.c cris-tmpl.c modelv10.c decodev10.c devices.c cris-sim.h cm3/m3-sys/m3gdb/gdb/sim/h8300/: inst.h Makefile.in compile.c config.in configure.ac tconfig.in acconfig.h writecode.c sim-main.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/d10v-elf/: t-ae-st-i.s t-ae-st-d.s t-ae-ld2w-id.s Makefile.in t-ae-ld-id.s t-ld-st.s t-rac.s t-sub2w.s t-rdt.s t-ae-st2w-d.s t-macros.i t-ae-ld2w-ip.s loop.s t-subi.s t-slae.s t-mulxu.s configure.ac t-rep.s t-ae-ld2w-im.s t-mac.s t-mvtc.s t-ae-ld2w-i.s t-msbu.s t-sac.s t-dbt.s t-ae-st2w-id.s hello.s t-ae-st-is.s t-rie-xx.s t-sub.s t-ae-ld-i.s t-ae-ld2w-d.s t-mvtac.s t-mod-ld-pre.s t-ae-st-id.s t-trap.s t-ae-ld-im.s t-ae-st-ip.s t-rte.s t-ae-st-im.s t-sachi.s t-sp.s t-ae-ld-ip.s t-ae-ld-d.s ChangeLog t-rachi.s exit47.s configure t-ae-st2w-i.s t-ae-st2w-is.s t-ae-st2w-ip.s t-ae-st2w-im.s t-sadd.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/lib/: sim-defs.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/m32r-elf/: Makefile.in loop.s configure.ac hello.s ChangeLog exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/mips/: mdmx-ob.s testutils.inc fpu64-ps-sb1.s utils-mdmx.inc fpu64-ps.s hilo-hazard-1.s hilo-hazard-2.s utils-fpu.inc basic.exp sanity.s hilo-hazard-3.s mdmx-ob-sb1.s ChangeLog cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/: cldsh.cgs bclslr.cgs fcku.cgs mcutss.cgs mqsllhi.cgs ldi.cgs bgelr.cgs nandcr.cgs umulicc.cgs cor.cgs nfadds.cgs fdmovs.cgs fcbolr.cgs cmmulhs.cgs orncr.cgs ftino.cgs cfckle.cgs clrfr.cgs cldhfu.cgs teq.cgs cmcpxiu.cgs scani.cgs commitfr.cgs stf.cgs nfdcmps.cgs csth.cgs setlos.cgs ftug.cgs jmpl.pcgs swapi.cgs stqc.cgs ftiu.cgs csthf.cgs corcc.cgs nlduhu.cgs stbfu.cgs stc.cgs tils.cgs ldfu.cgs fcbuelr.cgs cfmas.cgs fmsubd.cgs bcnclr.cgs cstdf.cgs mmulxhu.cgs mcmpuh.cgs fcbugelr.cgs bno.cgs cadd.cgs scan.cgs bra.cgs stqf.cgs ftiug.cgs testutils.inc fbuglr.cgs fcbulelr.cgs stfi.cgs ldqi.cgs fbule.cgs tin.cgs fckne.cgs fcbuglr.cgs tilt.cgs fbge.cgs lddi.cgs xor.cgs dci.cgs cfckno.cgs cldfu.cgs sll.cgs call.pcgs fitos.cgs tls.cgs cldbfu.cgs tira.cgs fnop.cgs mcpxiu.cgs nldqf.cgs mtrap.cgs mpackh.cgs csllcc.cgs maddhus.cgs cknc.cgs cstu.cgs sllcc.cgs cldshu.cgs or.cgs cfmss.cgs cmovfgd.cgs cmovfg.cgs cmpba.cgs ble.cgs fbue.cgs ldshu.cgs bclr.cgs fcbnelr.cgs fddivs.cgs tnc.cgs cfadds.cgs ldubu.cgs stqfi.cgs mand.cgs cldubu.cgs fsqrts.cgs movgs.cgs mqxmacxhs.cgs umuli.cgs fmad.cgs tno.cgs ccalll.cgs st.cgs subi.cgs cldf.cgs msrlhi.cgs ftilt.cgs ftlg.cgs bnelr.cgs mrdaccg.cgs cmsubhus.cgs movfgq.cgs mcplhi.cgs fbuge.cgs ftgt.cgs cfcmps.cgs xoricc.cgs lduhi.cgs candcc.cgs sracc.cgs notcr.cgs fcmpd.cgs mqmachu.cgs cldsb.cgs bp.cgs nldbfu.cgs tge.cgs stdc.cgs movgfd.cgs cnot.cgs blt.cgs ldf.cgs stbi.cgs ckls.cgs cckne.cgs nldubi.cgs cfdivs.cgs cldu.cgs mcut.cgs addxcc.cgs caddcc.cgs mexpdhw.cgs mqcpxis.cgs srlcc.cgs mwcut.cgs bge.cgs mhdsets.cgs add.pcgs addicc.cgs ftue.cgs rett.cgs nfdivs.cgs ldcu.cgs msubhus.cgs nfstoi.cgs mdaddaccs.cgs fdtoi.cgs cldhf.cgs fckeq.cgs nfsqrts.cgs mmulhs.cgs nldhfi.cgs cmpb.cgs csll.cgs fdsqrts.cgs cklt.cgs mbtohe.cgs nldfu.cgs cckge.cgs bcltlr.cgs umul.cgs fbug.cgs cudiv.cgs cmsubhss.cgs lddu.cgs mxor.cgs blelr.cgs mqmulxhu.cgs nlddfi.cgs fckul.cgs fmuls.cgs ldbfu.cgs lddfi.cgs bcralr.cgs subicc.cgs ckno.cgs nldsh.cgs cstb.cgs tige.cgs cckn.cgs thi.cgs fckra.cgs ldqu.cgs fdmuls.cgs mrdacc.cgs csdiv.cgs dcef.cgs nfitos.cgs addcc.cgs addxicc.cgs sthu.cgs cfcklg.cgs msrahi.cgs ckle.cgs calll.cgs nfditos.cgs blslr.cgs jmpil.cgs stdfi.cgs fdsads.cgs stq.pcgs mqcpxru.cgs fmuld.cgs stfu.cgs cfcklt.cgs fdivs.cgs ftine.cgs cmbtohe.cgs mmulhu.cgs nldf.cgs nlddu.cgs mcmpsh.cgs cfmovs.cgs ldsbi.cgs movsg.cgs tinv.cgs smulcc.cgs nldqu.cgs ccknv.cgs nldshi.cgs fto.cgs movgf.cgs stdf.pcgs cldqu.cgs mqsaths.cgs sthf.cgs stdfu.cgs fbgtlr.cgs tgt.cgs cop1.cgs nfmadds.cgs udiv.cgs cmcpxru.cgs nldsbi.cgs fbul.cgs callil.cgs tiv.cgs addx.cgs fblelr.cgs faddd.cgs msllhi.cgs cckgt.cgs mcuti.cgs mqmulhu.cgs nlddi.cgs fbnolr.cgs fckno.cgs mmachs.cgs ldqcu.cgs stu.cgs mnop.cgs nlddfu.cgs nfdsads.cgs fblg.cgs ret.cgs andicc.cgs clddu.cgs stq.cgs fbra.cgs smulicc.cgs mhtob.cgs and.cgs cstf.cgs subxi.cgs nfdadds.cgs mrotli.cgs csrlcc.cgs addi.cgs cmqmulhu.cgs cfckeq.cgs stbfi.cgs parallel.exp cfmsubs.cgs ldsb.cgs cckeq.cgs mabshs.cgs tinc.cgs nfdsubs.cgs cld.cgs csubcc.cgs tp.cgs cfsqrts.cgs bcnelr.cgs bnvlr.cgs branch.pcgs fcko.cgs clrgr.cgs sethi.cgs mqmulxhs.cgs ftiul.cgs mdunpackh.cgs nfdsqrts.cgs mqlclrhs.cgs mmulxhs.cgs fbulr.cgs xorcr.cgs ldubi.cgs cstbu.cgs fsubs.cgs fbuelr.cgs ld.cgs cfcko.cgs fcbullr.cgs cmmachu.cgs mmrdhs.cgs bctrlr.cgs bgt.cgs cmcpxis.cgs fditos.cgs cmov.cgs csra.cgs ftra.cgs srl.cgs srli.cgs fadds.cgs fcklt.cgs cfsubs.cgs fbralr.cgs subx.cgs cmpi.cgs tile.cgs fmas.cgs subcc.cgs mnot.cgs stqu.cgs tlt.cgs fmsd.cgs nldbfi.cgs cfitos.cgs nfsubs.cgs mcpxis.cgs add.cgs fnegd.cgs sdivi.cgs tc.cgs sthfu.cgs mdasaccs.cgs cfckul.cgs cldbf.cgs nfmsubs.cgs ldqc.cgs ldqfu.cgs nld.cgs fnegs.cgs clduhu.cgs bnc.cgs nfmss.cgs nandncr.cgs ldc.cgs fdmss.cgs lddf.cgs lddcu.cgs mmachu.cgs nldhfu.cgs cckc.cgs cmovgf.cgs cckls.cgs call.cgs smul.cgs cckle.cgs ckc.cgs sthfi.cgs bn.cgs mexpdhd.cgs bc.cgs fckge.cgs andcr.cgs bv.cgs cstd.cgs ldhfu.cgs fdmulcs.cgs fmaddd.cgs mqcpxiu.cgs bcclr.cgs mwtaccg.cgs not.cgs fcbeqlr.cgs ftge.cgs nlduhi.cgs fdivd.cgs stdcu.cgs cmaddhus.cgs fbgelr.cgs mov.cgs stdi.cgs ldsbu.cgs swap.cgs lduhu.cgs ftige.cgs bls.cgs mmrdhu.cgs cstbf.cgs stdf.cgs bgtlr.cgs tine.cgs cckv.cgs mhsethih.cgs ccknc.cgs cfckue.cgs cstdu.cgs nsdivi.cgs fbullr.cgs umulcc.cgs cmhtob.cgs sraicc.cgs nudivi.cgs cmqmachu.cgs fcbgtlr.cgs csmulcc.cgs ldub.cgs mcpxru.cgs cmbtoh.cgs cjmpl.cgs norncr.cgs fbugelr.cgs fcbnolr.cgs beqlr.cgs fitod.cgs nfdmuls.cgs fdstoi.cgs srai.cgs ldqf.cgs fabss.cgs mqsrahi.cgs lddfu.cgs tihi.cgs mqcpxrs.cgs mor.cgs ldd.cgs bcvlr.cgs nldq.cgs ldhf.cgs icei.cgs cst.cgs bceqlr.cgs srlicc.cgs ccmp.cgs mdcutssi.cgs cfckne.cgs lddc.cgs ldsh.cgs sub.cgs mdpackh.cgs fckue.cgs ori.cgs cmqmachs.cgs ftne.cgs nldub.cgs cand.cgs nldi.cgs mqmulhs.cgs ckp.cgs norcr.cgs cxor.cgs cldd.cgs nop.cgs mdrotli.cgs xorcc.cgs fckule.cgs dcf.cgs mcop2.cgs tnv.cgs clrfa.cgs fbno.cgs slli.cgs ldqfi.cgs stqi.cgs icpl.cgs nldqfi.cgs bnolr.cgs movfg.cgs cfabss.cgs stbu.cgs orcr.cgs bnv.cgs ici.cgs ftuge.cgs movgfq.cgs ckgt.cgs cxorcc.cgs nldfi.cgs nfddivs.cgs tra.cgs stdu.cgs mqlmths.cgs mqmachs.cgs bnlr.cgs ccklt.cgs ftlt.cgs fcbralr.cgs ckeq.cgs cstdfu.cgs bhi.cgs fsqrtd.cgs stbf.cgs fbgt.cgs cckhi.cgs fdcmps.cgs msathu.cgs fbne.cgs tne.cgs andi.cgs fdnegs.cgs bar.cgs ftile.cgs fdmas.cgs bvlr.cgs jmpl.cgs sllicc.cgs bcnolr.cgs bhilr.cgs fsubd.cgs cknv.cgs nlduh.cgs msubhss.cgs cldub.cgs cfstoi.cgs ldbfi.cgs mcpxrs.cgs ftule.cgs nldubu.cgs munpackh.cgs bcnlr.cgs tn.cgs clrga.cgs stqc.pcgs stdc.pcgs mqxmachs.cgs nfdmadds.cgs fckuge.cgs stqf.pcgs sthi.cgs cmor.cgs ldu.cgs cmmachs.cgs sdiv.cgs cstbfu.cgs fcbgelr.cgs ftieq.cgs oricc.cgs cfmuls.cgs csub.cgs cmp.cgs movfgd.cgs nldhf.cgs mwtacc.cgs fteq.cgs smuli.cgs fcblelr.cgs cfckgt.cgs andncr.cgs fstoi.cgs csthu.cgs cfckug.cgs mhsetloh.cgs maveh.cgs ckhi.cgs fcblglr.cgs mhsethis.cgs cscan.cgs fdsubs.cgs tino.cgs stqcu.cgs csmul.cgs fbulelr.cgs subxcc.cgs ftiuge.cgs nfdmulcs.cgs ftiue.cgs fmadds.cgs ftu.cgs tic.cgs nudiv.cgs cmexpdhw.cgs stb.cgs ldhfi.cgs fbeqlr.cgs ldshi.cgs clddfu.cgs break.cgs bcnvlr.cgs cldq.cgs setlo.cgs lrbranch.pcgs subxicc.cgs ftio.cgs ckra.cgs nldd.cgs bcgelr.cgs nfdmas.cgs cmaddhss.cgs fble.cgs bnclr.cgs ckne.cgs cfckge.cgs cfckule.cgs addxi.cgs cfckuge.cgs sth.cgs ftno.cgs fdabss.cgs cop2.cgs fblglr.cgs fbolr.cgs sra.cgs ldq.cgs commitga.cgs cmexpdhd.cgs nfdstoi.cgs cstq.cgs maddhss.cgs interrupts.exp mwcuti.cgs nfmuls.cgs csthfu.cgs cmnot.cgs tieq.cgs ckn.cgs mclracc.cgs fcmps.cgs std.pcgs bchilr.cgs nlddf.cgs ldbf.cgs bltlr.cgs cswap.cgs cldsbu.cgs ftul.cgs fabsd.cgs commitfa.cgs fbltlr.cgs tv.cgs ftilg.cgs cfckra.cgs fbnelr.cgs fcklg.cgs bclelr.cgs ckge.cgs sti.cgs fdadds.cgs fckug.cgs nldshu.cgs udivi.cgs nldsb.cgs std.cgs ftigt.cgs clduh.cgs fblt.cgs mcutssi.cgs tip.cgs csracc.cgs fcbulr.cgs cmand.cgs csrl.cgs clddf.cgs ftira.cgs fmovs.cgs nldbf.cgs mcpli.cgs fckgt.cgs tigt.cgs nfmas.cgs fmss.cgs cmmulhu.cgs cmcpxrs.cgs bne.cgs bcplr.cgs stcu.cgs lduh.cgs fdmadds.cgs cckp.cgs tle.cgs allinsn.exp ldfi.cgs fbo.cgs mrotri.cgs andcc.cgs cckra.cgs fmovd.cgs cmqmulhs.cgs fmsubs.cgs dcei.cgs nldqfu.cgs orcc.cgs nfdmss.cgs bcgtlr.cgs mhsetlos.cgs cfnegs.cgs sethilo.pcgs fckle.cgs mdsubaccs.cgs fcbltlr.cgs membar.cgs beq.cgs mbtoh.cgs ftle.cgs stqfu.cgs icul.cgs mhdseth.cgs nldsbu.cgs bralr.cgs msaths.cgs nsdiv.cgs cmovgfd.cgs nldu.cgs cckno.cgs mqmacxhs.cgs commitgr.cgs fbeq.cgs cfmadds.cgs cstfu.cgs ckv.cgs cmxor.cgs xori.cgs fbu.cgs mcop1.cgs cfcku.cgs bplr.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/interrupts/: fp_exception.cgs data_store_error-fr550.cgs Ipipe-fr400.cgs shadow_regs.cgs timer.cgs compound.cgs illinsn.cgs badalign.cgs data_store_error.cgs regalign.cgs mp_exception.cgs compound-fr550.cgs insn_access_error.cgs badalign-fr550.cgs reset.cgs insn_access_error-fr550.cgs privileged_instruction.cgs Ipipe-fr500.cgs fp_exception-fr550.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr400/: smu.cgs slass.cgs movgs.cgs subss.cgs masaccs.cgs mhdsets.cgs smass.cgs csdiv.cgs movsg.cgs udiv.cgs sdivi.cgs scutss.cgs mhsethih.cgs addss.cgs sdiv.cgs mhsetloh.cgs maveh.cgs mhsethis.cgs maddaccs.cgs mclracc.cgs udivi.cgs msubaccs.cgs allinsn.exp smsss.cgs mhsetlos.cgs mhdseth.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr550/: cmcpxiu.cgs mqaddhss.cgs mtrap.cgs maddhus.cgs mqaddhus.cgs mqxmacxhs.cgs cmsubhus.cgs mqmachu.cgs masaccs.cgs msubhus.cgs mdaddaccs.cgs cmsubhss.cgs cmqaddhss.cgs udiv.cgs cmcpxru.cgs mmachs.cgs mabshs.cgs mqsubhus.cgs cmmachu.cgs mmrdhs.cgs mdasaccs.cgs mmachu.cgs cmaddhus.cgs cmqsubhss.cgs mmrdhu.cgs cmqmachu.cgs cmqmachs.cgs mqmachs.cgs mqsubhss.cgs msubhss.cgs dcul.cgs mqxmachs.cgs dcpl.cgs cmmachs.cgs cmqaddhus.cgs cmqsubhus.cgs cmaddhss.cgs maddaccs.cgs maddhss.cgs udivi.cgs msubaccs.cgs allinsn.exp mdsubaccs.cgs mqmacxhs.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr500/: mqaddhss.cgs mqaddhus.cgs cmqaddhss.cgs mqsubhus.cgs cmqsubhss.cgs mqsubhss.cgs dcul.cgs dcpl.cgs cmqaddhus.cgs cmqsubhus.cgs mclracc.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/fr30/: cmp2.cgs addsp.cgs copld.cgs borl.cgs stm0.cgs ldi32.cgs extsh.cgs mulh.cgs bno.cgs bra.cgs testutils.inc eorh.cgs jmp.cgs addn.cgs or.cgs ble.cgs st.cgs subc.cgs eorb.cgs asr.cgs stm1.cgs bp.cgs asr2.cgs blt.cgs ldm1.cgs bge.cgs lsr2.cgs subn.cgs ldres.cgs stilm.cgs eor.cgs copst.cgs ret.cgs and.cgs div0u.cgs misc.exp div0s.cgs ld.cgs bgt.cgs btsth.cgs div.ms reti.cgs add.cgs mul.cgs div1.cgs extub.cgs bnc.cgs call.cgs bn.cgs bc.cgs ldi20.cgs bv.cgs bandl.cgs mov.cgs orccr.cgs dmovh.cgs bls.cgs add2.cgs ldub.cgs lsl2.cgs bandh.cgs leave.cgs addc.cgs sub.cgs nop.cgs ldm0.cgs copop.cgs lsr.cgs bnv.cgs mulu.cgs add.ms extsb.cgs div3.cgs andccr.cgs bhi.cgs div4s.cgs orb.cgs lsl.cgs extuh.cgs btstl.cgs cmp.cgs xchb.cgs muluh.cgs andb.cgs hello.ms stb.cgs div2.cgs sth.cgs ldi8.cgs beorl.cgs dmov.cgs stres.cgs enter.cgs copsv.cgs borh.cgs bne.cgs lduh.cgs dmovb.cgs allinsn.exp int.cgs addn2.cgs inte.cgs orh.cgs beq.cgs beorh.cgs andh.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/sh/: fpchg.s fcmpeq.s swap.s pshar.s macw.s fmov.s fail.s testutils.inc fcmpgt.s fsub.s shlr2.s pdmsb.s shlr16.s fcnvsd.s bst.s pshai.s fldi1.s mov.s div.s fdiv.s frchg.s loop.s macl.s fadd.s fcnvds.s shll.s padd.s clip.s pmuls.s add.s movxy.s pswap.s bset.s pabs.s bclr.s fneg.s movua.s movi.s mulr.s sett.s fsca.s prnd.s ldrc.s bxor.s pshli.s pushpop.s paddc.s fmul.s pshlr.s fipr.s fsqrt.s shll2.s dmxy.s pand.s pinc.s fldi0.s fschg.s shlr8.s shll16.s ftrc.s shlr.s movli.s ChangeLog bldnot.s pclr.s and.s pdec.s bandornot.s flds.s psub.s bandor.s resbank.s allinsn.exp pass.s fsrra.s bld.s shll8.s fabs.s fmac.s float.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/m32r/: mvfachi.cgs lock.cgs ld-d.cgs rem.cgs sra3.cgs testutils.inc jmp.cgs xor.cgs sll.cgs sll3.cgs bnez.cgs mvfc.cgs rac.cgs or.cgs bc8.cgs st.cgs st-minus.cgs subv.cgs cmpu.cgs srl3.cgs bl8.cgs lduh-d.cgs bra8.cgs st-d.cgs ldh-d.cgs bc24.cgs bgez.cgs mulwlo.cgs bra24.cgs uread32.ms addv3.cgs addx.cgs bltz.cgs ldi16.cgs and.cgs hw-trap.ms misc.exp seth.cgs addi.cgs mullo.cgs machi.cgs ld-plus.cgs ldb-d.cgs div.cgs jl.cgs ld.cgs srl.cgs srli.cgs subx.cgs cmpi.cgs remu.cgs rte.cgs add.cgs and3.cgs mul.cgs cmpui.cgs mvtaclo.cgs rach.cgs not.cgs macwhi.cgs ldb.cgs mvfaclo.cgs bnc24.cgs blez.cgs ldub.cgs srai.cgs add3.cgs stb-d.cgs mvtc.cgs sub.cgs divu.cgs nop.cgs slli.cgs ldh.cgs bnc8.cgs mv.cgs uwrite32.ms xor3.cgs bl24.cgs maclo.cgs cmp.cgs or3.cgs ld24.cgs mulhi.cgs hello.ms stb.cgs bgtz.cgs st-plus.cgs unlock.cgs sth.cgs sra.cgs ldi8.cgs sth-d.cgs macwlo.cgs uwrite16.ms trap.cgs neg.cgs mulwhi.cgs ldub-d.cgs bne.cgs lduh.cgs mvfacmi.cgs allinsn.exp mvtachi.cgs addv.cgs beqz.cgs beq.cgs uread16.ms cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/h8300/: orw.s subx.s movmd.s brabc.s testutils.inc addw.s mul.s subb.s subs.s xorl.s div.s dec.s subl.s inc.s tas.s adds.s shll.s rotxl.s bra.s movb.s biand.s shar.s addx.s bset.s ldm.s nop.s jmp.s movsd.s rotl.s extw.s andl.s mac.s shal.s movl.s neg.s subw.s stack.s not.s xorb.s stc.s movw.s band.s orl.s rotxr.s bfld.s xorw.s addb.s das.s cmpl.s shlr.s ChangeLog daa.s andw.s addl.s extl.s ldc.s cmpb.s orb.s cmpw.s allinsn.exp mova.s andb.s rotr.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/: teq.cgs rsb.cgs misaligned3.ms bx.cgs misaligned2.ms mrs.cgs testutils.inc umlal.cgs tst.cgs umull.cgs swi.cgs eor.cgs misaligned1.ms cmn.cgs ldm.cgs smlal.cgs ldrb.cgs bl.cgs and.cgs bic.cgs misc.exp b.cgs ldrsb.cgs add.cgs ldrsh.cgs mul.cgs swpb.cgs ldrh.cgs mvn.cgs mov.cgs stm.cgs ldr.cgs orr.cgs sub.cgs str.cgs msr.cgs sbc.cgs cmp.cgs strb.cgs strh.cgs hello.ms swp.cgs adc.cgs rsc.cgs mla.cgs smull.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/iwmmxt/: wror.cgs wsll.cgs tmia.cgs wmin.cgs testutils.inc wsad.cgs wsub.cgs tmiaxy.cgs wsrl.cgs wunpckel.cgs tmovmsk.cgs tbcst.cgs wcmpeq.cgs tinsr.cgs wzero.cgs textrm.cgs wxor.cgs wmax.cgs wsra.cgs wmul.cgs walignr.cgs wunpckil.cgs wpack.cgs wadd.cgs wmac.cgs wshufh.cgs wmadd.cgs wunpckih.cgs waligni.cgs wacc.cgs wcmpgt.cgs iwmmxt.exp wunpckeh.cgs wor.cgs wavg2.cgs wandn.cgs wmov.cgs wand.cgs tmiaph.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/thumb/: ldrb-imm.cgs ldr-sprel.cgs testutils.inc ble.cgs pop.cgs subi.cgs tst.cgs asr.cgs add-hd-rs.cgs swi.cgs blt.cgs bge.cgs mov-hd-rs.cgs pop-pc.cgs lda-pc.cgs eor.cgs push.cgs cmn.cgs ldr-imm.cgs str-sprel.cgs ldrb.cgs bcs.cgs bx-rs.cgs and.cgs bic.cgs cmp-hd-hs.cgs addi.cgs ldsb.cgs cmp-hd-rs.cgs b.cgs bgt.cgs bl-lo.cgs add.cgs bmi.cgs mul.cgs lda-sp.cgs ldrh.cgs mvn.cgs mov.cgs bls.cgs bvc.cgs ldr.cgs bvs.cgs orr.cgs ldsh.cgs sub.cgs strb-imm.cgs str.cgs push-lr.cgs lsr.cgs ldrh-imm.cgs subi8.cgs bhi.cgs strh-imm.cgs bl-hi.cgs bpl.cgs sbc.cgs lsl.cgs cmp-rd-hs.cgs add-rd-hs.cgs add-sp.cgs addi8.cgs sub-sp.cgs cmp.cgs strb.cgs strh.cgs bx-hs.cgs allthumb.exp adc.cgs ldmia.cgs stmia.cgs mov-hd-hs.cgs neg.cgs mov-rd-hs.cgs bcc.cgs bne.cgs ldr-pc.cgs str-imm.cgs add-hd-hs.cgs beq.cgs ror.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/xscale/: testutils.inc xscale.exp mra.cgs miaxy.cgs miaph.cgs blx.cgs mia.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/common/: alu-tst.c Makefile.in bits-gen.c Make-common.in fpu-tst.c bits-tst.c alu-n-tst.h cm3/m3-sys/m3gdb/gdb/sim/testsuite/config/: default.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/frv-elf/: Makefile.in loop.s configure.ac hello.s cache.s ChangeLog grloop.s exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/mips64el-elf/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/arm/: Makefile.in armfpe.h dbg_hif.h dbg_conf.h gdbhost.c armemu.c config.in README communicate.h bag.h communicate.c wrapper.c armsupp.c dbg_cp.h configure.ac arminit.c tconfig.in acconfig.h thumbemu.c armvirt.c armcopro.c armrdi.c maverick.c kid.c bag.c parent.c armdefs.h iwmmxt.c armos.c iwmmxt.h ChangeLog main.c armos.h configure armemu.h dbg_rdi.h armopts.h COPYING gdbhost.h cm3/m3-sys/m3gdb/gdb/sim/igen/: ld-cache.c Makefile.in lf.h gen-engine.h ld-decode.c gen.c filter_host.c config.in filter_host.h table.h gen-icache.h gen-support.h gen-model.h filter.c configure.ac ld-decode.h igen.c filter.h acconfig.h gen-itable.h gen-model.c misc.h gen-support.c ld-insn.c gen-idecode.c gen-idecode.h gen-engine.c igen.h table.c ld-cache.h gen-semantics.c gen.h gen-icache.c ChangeLog compare_igen_models gen-semantics.h ld-insn.h configure lf.c gen-itable.c misc.c cm3/m3-sys/m3gdb/gdb/sim/m68hc11/: Makefile.in dv-m68hc11eepr.c config.in dv-m68hc11tim.c configure.ac interp.c dv-m68hc11.c dv-m68hc11sio.c interrupts.h dv-nvram.c sim-main.h interrupts.c ChangeLog dv-m68hc11spi.c configure emulos.c gencode.c m68hc11_sim.c cm3/m3-sys/m3gdb/gdb/sim/erc32/: Makefile.in help.c config.in end.c README.sis configure.ac sis.h README.erc32 exec.c interf.c acconfig.h sis.c float.c erc32.c README.gdb ChangeLog NEWS startsim configure func.c cm3/m3-sys/m3gdb/gdb/sim/iq2000/: arch.c Makefile.in iq2000.c config.in configure.ac decode.h tconfig.in acconfig.h cpuall.h cpu.c arch.h sim-main.h iq2000-sim.h sem.c mloop.in cpu.h ChangeLog configure sim-if.c decode.c model.c sem-switch.c Log message: delete 30MB unused From jkrell at elego.de Tue Sep 28 12:55:19 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105519.D778D2474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:19 Removed files: cm3/m3-sys/m3cc/gcc/: MD5SUMS cm3/m3-sys/m3cc/gcc-4.5/: MD5SUMS Log message: delete 10MB unused From jkrell at elego.de Tue Sep 28 12:58:02 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:58:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105802.DA5C82474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:58:02 Removed files: cm3/m3-sys/m3gdb/gdb/: md5.sum Log message: delete paltry 300K unused From jkrell at elego.de Thu Sep 30 10:07:47 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 10:07:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930080747.B6ADECC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 10:07:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Let enums show properly in stock gdb. But disabled still, as it also leads to a crash. Oh the perils of the frontend/backend being oddly interfaced and both doing layout? From jkrell at elego.de Thu Sep 30 12:06:57 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:06:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930100657.EA3C82474003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:06:57 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: cm3cfg.common Log message: Reduce cm3cg probing to just INSTALL_ROOT/bin/cm3cg for native builds ROOT/m3-sys/m3cc/HOST/TARGET/cm3cg for cross builds "Later" (never?) we can think about "installed" cross builds. In particular, when I make m3cg interface changes, I get burned by reaching in for ROOT/m3-sys/m3cc/x/cm3cg. From jkrell at elego.de Thu Sep 30 12:55:16 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:55:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930105516.30182CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:55:16 Modified files: cm3/m3-sys/m3front/src/types/: ObjectType.m3 RefType.m3 Log message: make the comments unique From jkrell at elego.de Wed Sep 1 01:35:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:35:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831233535.B37C824740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:35:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: disable more new typing code at least for now; prototype (commented out) making all records addressable so they won't be passed in registers (given how we access the fields..), but before that I think we need to give types to temporaries From jkrell at elego.de Wed Sep 1 01:49:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 1:49:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100831235002.15BE324740AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 01:49:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only records/objects addressable, not all the other private stuff passed to m3gdb, suplib still not working From jkrell at elego.de Wed Sep 1 09:05:24 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 9:05:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901070524.345272474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 09:05:24 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 RegExpParse.m3 m3makefile Removed files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpTok.i3 RegExpTok.m3 Log message: reduce test case: a record with just integers is enough, we don't need opaque types From jkrell at elego.de Wed Sep 1 11:35:58 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:35:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093558.470F02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:35:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_boolstr => boolstr m3cg_typestr => typestr From jkrell at elego.de Wed Sep 1 11:36:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:36:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901093654.753C02474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:36:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove TREE_ADDRESSABLE prototype, working fix coming shortly From jkrell at elego.de Wed Sep 1 11:48:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:48:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094829.CA5AC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:48:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: just tracing changes From jkrell at elego.de Wed Sep 1 11:49:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:49:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901094952.410362474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:49:52 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: try again: better type information -- this time remember to call layout_type, so that when passing a struct by value, the entire thing is passed! From jkrell at elego.de Wed Sep 1 11:53:17 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 11:53:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901095317.9AAEC2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 11:53:17 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: arg, don't yet assert that frontend and backend agree on record sizes -- they don't! From jkrell at elego.de Wed Sep 1 13:53:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 13:53:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901115347.A17642474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 13:53:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Still trying to get well-typed trees, and record sizes that agree between backend and frontend. They don't agree currently for multiple reasons, so remove the types again. They don't agree: - undefined types are used - types are used before defined (e.g. RT0.TypeDefn is seen in RT0.Typecell before it defined, compiling RTType.m3) - backend seems to be giving an entire word where just a byte is wanted (e.g. RT0.Typecell.traced, kind, link_state, dataAlignment From jkrell at elego.de Wed Sep 1 14:09:09 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 14:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901120909.337B62474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 14:09:09 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Two of the missing types were boolean and char, because I wasn't sure how to handle them. For now set them to t_word_8. Though boolean is actually [0..1] and char is actually [0..255] I believe. There are still problems, types used before defined. I think there are circularities and this is unavoidable though. We may need to make a second pass over the data in m3cc. From jkrell at elego.de Wed Sep 1 15:14:07 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:14:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901131407.C8ECE2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:14:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: cleaner, largely undo previous, "debug" is m3gdb for normal types that lead to normal gdb, use other paths in particular, the one_field/one_gap stuff shows it's not difficult, and we can reuse them not change in result: backend and frontend still disagree, so this code is not yet enabled; I have to find out why layout_type gets such different results, even when all the constituent types are known and I have to see if we can get an order that puts defines before uses, or if this all needs to be multi-pass.. change many "int" to "long", so that 64bit hosts can deal with types larger than 2GB We already read long or unsigned long from the m3cg binary file. From jkrell at elego.de Wed Sep 1 15:21:27 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:21:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132127.E52E22474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:21:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int M3_TYPES = 0; at the top and then if that From jkrell at elego.de Wed Sep 1 15:25:26 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:25:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132526.24C832474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:25:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT From jkrell at elego.de Wed Sep 1 15:26:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 15:26:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901132643.18F0B2474026@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 15:26:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add M3_TYPES_STRICT = 0 or 1 or 2 From jkrell at elego.de Wed Sep 1 18:24:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 1 Sep 2010 18:24:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100901162420.772232474027@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/01 18:24:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: progress; this version should: work pass records by value in registers per the ABI have good type information for records in stock gdb probably work on SPARC64_SOLARIS verifies that the frontend and backend agree on record size, though not necessarily the fields therein (but it is likely) as a bonus, the field names in stock gdb are no longer mangled debug information fed to m3gdb should be unchanged, as the code to feed it private data vs. code to construct types for the trees is separate still to do: fix and test debugging of: packed types (I just make these a record with size and no fields, and indeed passing them by value on SPARC64_SOLARIS isn't likely to work, needs more test cases) objects (written but not tested, and I think m3front isn't passing the size information) enums ensure all fields are typed -- a few are missing (some of this was my fault earlier missing builtins like MUTEX) cleanup -- should be able to share code between one_gap/m3_gap, one_field/m3_field, etc. From jkrell at elego.de Fri Sep 3 12:17:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903101718.85430CC37A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:17:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: This is odd, but minor. I386_LINUX says: parse.c: In function 'scan_type': parse.c:1686:5: warning: unknown conversion type character 'X' in format parse.c:1686:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1686:5: warning: too many arguments for format parse.c: In function 'scan_sign': parse.c:1721:5: warning: unknown conversion type character 'X' in format parse.c:1721:5: warning: format '%d' expects type 'int', but argument 2 has type 'long int' parse.c:1721:5: warning: too many arguments for format but it looks right. Put it back to release -- %lX => %lx. Leave %d alone. Something is off here? From jkrell at elego.de Fri Sep 3 12:55:43 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 12:55:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903105543.C8262247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 12:55:43 Modified files: cm3/m3-sys/m3cc/src/: m3makefile clean_marker.txt Log message: untested: move AMD64_FREEBSD to gcc 4.5.1 backend From jkrell at elego.de Fri Sep 3 13:11:21 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:11:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111121.1DE19CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:11:21 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: call stat first, if it fails call lstat, not great, really (stat and I suspect lstat are probably particularly expensive on Cygwin, as they probably open the file) From jkrell at elego.de Fri Sep 3 13:12:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 3 Sep 2010 13:12:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100903111255.866BF247400C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/03 13:12:55 Modified files: cm3/m3-libs/libm3/src/os/POSIX/: FSPosix.m3 Log message: use AND instead of nested IF From jkrell at elego.de Wed Sep 8 12:30:52 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:30:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103053.2891C247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:30:52 Modified files: cm3/doc/notes/: todo.txt Log message: add a few, mainly to remind of priority: fix O1/O2/O3 e.g. on I386_LINUX, setup AMD64_OPENBSD, AMD64_NETBSD Hudson (actually AMD64_OPENBSD might still need porting work) From jkrell at elego.de Wed Sep 8 12:31:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:31:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103136.3D2A0247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:31:36 Added files: cm3/doc/notes/: object-model.txt Log message: to be filled in From jkrell at elego.de Wed Sep 8 12:36:56 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 8 Sep 2010 12:36:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100908103656.4C627247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/08 12:36:56 Modified files: cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 Log message: adjust comment: the more specific it is, the more it tends to be or become wrong, so be less specific From jkrell at elego.de Thu Sep 9 12:24:38 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:24:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102438.43ACBCC12C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:24:38 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: RegExpParse.m3 Log message: slightly reduce From jkrell at elego.de Thu Sep 9 12:25:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:25:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909102536.2967D247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:25:36 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: Main.m3 m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: RTLink.i3 RTLink.m3 Log message: add drastically reduced form of RTLinker.m3 that demonstrates the current miscompile on I386_LINUX, I386_DARWIN, probably others. The loop in RTLinker.FixImports is removed under optimization! From jkrell at elego.de Thu Sep 9 12:45:46 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 12:45:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909104546.723ADCC12B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 12:45:46 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira-color.c Log message: ira-color.c: In function ???ira_reassign_conflict_allocnos???: ira-color.c: warning: ???conflict_a??? may be used uninitialized in this function From jkrell at elego.de Thu Sep 9 13:48:06 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 13:48:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909114806.80011247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 13:48:06 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Don't let flag_split_wide_types make us avoid using bitfields. This seems to fix the optimized I386 problems. More testing to do. From jkrell at elego.de Thu Sep 9 21:48:41 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 9 Sep 2010 21:48:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100909194841.63568247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/09 21:48:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: flag_tree_ccp of m3core breaks cm3 on I386_DARWIN hopefully this also fixes I386_LINUX more investigation to do clearly, try to find which code is altered, how, and how to form our trees so optimizations all work (I'm guessing that complete type information would work, but that partial type information is a problem) From jkrell at elego.de Fri Sep 10 08:26:48 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:26:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910062648.F1D9F2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:26:48 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: int to long From jkrell at elego.de Fri Sep 10 08:52:50 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 8:52:50 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910065250.E92D12474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 08:52:50 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: reformat a little From jkrell at elego.de Fri Sep 10 09:49:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:49:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910074958.BFA332474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:49:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some int to long much long to HOST_WIDE_INT_PRINT_DEC this should make little difference but might improve some cross situations -- e.g. defining arrays/structs larger than 2GB From jkrell at elego.de Fri Sep 10 09:51:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 9:51:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910075158.4ACFA2474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 09:51:58 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove some but not all #if 0'ed code From jkrell at elego.de Fri Sep 10 10:47:58 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 10:47:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910084758.E89C02474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 10:47:58 Modified files: cm3/m3-sys/m3tests/src/p2/p247/: m3makefile Added files: cm3/m3-sys/m3tests/src/p2/p247/: FPrint.i3 FPrint.m3 Log message: add reduced form of Fingerprint.m3 that hits assertion failure in backend on I386_DARWIN if we allow inlining From jkrell at elego.de Fri Sep 10 14:41:26 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:41:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910124126.B4BC32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:41:26 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reload1.c Log message: fix from gcc-4.5 branch for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45312 From jkrell at elego.de Fri Sep 10 14:51:34 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:51:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125134.90469CC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:51:34 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-nested.c Log message: partial merge from gcc-4_5-branch From jkrell at elego.de Fri Sep 10 14:54:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:54:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125457.6BABFCC111@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:54:57 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5 branch fix for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40386 From jkrell at elego.de Fri Sep 10 14:56:55 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 14:56:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910125656.070832474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 14:56:55 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: ira.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44554 From jkrell at elego.de Fri Sep 10 15:04:04 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:04:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910130404.BA5C72474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:04:04 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/config/sparc/: sparc.c Log message: partial merge from gcc-4_5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44942 From jkrell at elego.de Fri Sep 10 15:12:35 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:12:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131235.DC2222474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:12:35 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: dwarf2out.c dwarf2out.h cm3/m3-sys/m3cc/gcc-4.5/gcc/config/i386/: i386.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45484 From jkrell at elego.de Fri Sep 10 15:16:28 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:16:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910131628.93AAD2474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:16:28 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: function.c Log message: partial merge from gcc-4_5-branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44632 From jkrell at elego.de Fri Sep 10 15:21:16 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:21:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132116.8DFA32474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:21:16 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: optabs.c Log message: partial merge from 4.5 branch fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45292 From jkrell at elego.de Fri Sep 10 15:26:10 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 10 Sep 2010 15:26:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910132610.288C42474031@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/10 15:26:10 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: reginfo.c Log message: partial merge from gcc-4_5-branchh, fix http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45296, no matter From jkrell at elego.de Sat Sep 11 00:01:53 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 0:01:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100910220155.E6B3B247420A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 00:01:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca instead of xmalloc remove most strlen calls From jkrell at elego.de Sat Sep 11 10:11:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 10:11:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911081128.32E60247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 10:11:27 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: oops From jay.krell at cornell.edu Sat Sep 11 10:32:48 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:32:48 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911081128.32E60247403C@birch.elegosoft.com> References: <20100911081128.32E60247403C@birch.elegosoft.com> Message-ID: Thanks. I should probably put these on Facebook. ok? ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 10:11:27 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 10:11:27 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > oops > From jay.krell at cornell.edu Sat Sep 11 10:35:10 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 08:35:10 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100911081128.32E60247403C@birch.elegosoft.com>, Message-ID: > Thanks. I should probably put these on Facebook. ok? Arg, I click one message but a different one comes up. Sorry. From jkrell at elego.de Sat Sep 11 11:14:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 11:14:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911091441.02882247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 11:14:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: keep each "instruction" on one line when tracing This touches many lines, all tracing related. The newline is removed from many places and then put at the start of the instruction instead of the end xstrdup a *little* bit since the alloca change source line and imported units initialize some locals some "int" to long, but capacity limited to 100 anyway for now should change to VEC though add a little tracing (exit_proc) From jay.krell at cornell.edu Sat Sep 11 11:16:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 11 Sep 2010 09:16:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911091441.02882247403C@birch.elegosoft.com> References: <20100911091441.02882247403C@birch.elegosoft.com> Message-ID: This also moves some of the tracing under "-y -y" instead of just -y (like -v -v in other tools, verbose verbose). ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 11:14:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 11:14:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > keep each "instruction" on one line when tracing > This touches many lines, all tracing related. > The newline is removed from many places and then > put at the start of the instruction instead of the end > > xstrdup a *little* bit since the alloca change > source line and imported units > > initialize some locals > > some "int" to long, but capacity limited to 100 anyway for now > should change to VEC though > > add a little tracing (exit_proc) > From jkrell at elego.de Sat Sep 11 13:06:55 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:06:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110655.34A4E247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:06:55 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: fix some garbage collector problems including roll own growable vector instead of using VEC This does not necessarily fix the two problems reported, as I haven't seen them (haven't tried yet). From jkrell at elego.de Sat Sep 11 13:07:40 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 13:07:40 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911110740.AC9AE247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 13:07:40 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Remove the use of bitfields in load/store. configure -enable-checking flags them as a problem. From jkrell at elego.de Sat Sep 11 15:18:31 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 11 Sep 2010 15:18:31 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100911131831.32202247403C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/11 15:18:31 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: hack more errors to warnings, until such time as they are all fixed From jay.krell at cornell.edu Sun Sep 12 03:43:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sun, 12 Sep 2010 01:43:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100911110740.AC9AE247403C@birch.elegosoft.com> References: <20100911110740.AC9AE247403C@birch.elegosoft.com> Message-ID: I'm aware that this broke everything. I'm testing stuff more now.. ?- Jay ---------------------------------------- > Date: Sat, 11 Sep 2010 13:07:40 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/11 13:07:40 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Remove the use of bitfields in load/store. > configure -enable-checking flags them as a problem. > From jkrell at elego.de Sun Sep 12 08:24:46 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 8:24:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912062446.86A0524740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 08:24:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h m3gty45.h parse.c Log message: work in progress: some tree repair per configure -enable-checking RETURN_EXPR in particular and some types [disabled pending more testing] restore bitfield use we crash without it even though it triggers -enable-checking errors to be investigated.. tracing: add some newlines for multi-line things like records/proctypes/procedures probably should indent instead tweak garbage collector interaction and provide 3 ways to implement the type table: fixed size, growable, VEC These changes fixing some of the breakage from inlining, but not enough to enable it. We no longer get backend assertion failures, and inlining seemed to work in m3core+libm3+sysutils, but a full upgrade still produced a crashing cm3. probably the problem was either RETURN_EXPR or the garbage collection some debugging aids: m3_break_lineno, m3_breakpoint restore old type-less m3gdb stuff now that I changed the proper typed tree stuff to use different code From jkrell at elego.de Sun Sep 12 10:27:43 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:27:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082743.6F3BF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:27:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove whitespace from ends of lines From jkrell at elego.de Sun Sep 12 10:29:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 10:29:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912082924.C47DF24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 10:29:24 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Reformat, particularly with regard to braces. Open braces go on their own line. Braces can be omited for single statement blocks. From jkrell at elego.de Sun Sep 12 12:23:37 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 12:23:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912102337.B876CCC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 12:23:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Rewrite m3cg_fill_hex_value so that I understand it more easily. Hopefully I understood it correctly in the first place. Also make the buffer overflow case fatal instead of silently truncating. (Granted, this is for debugging information only.) From jkrell at elego.de Sun Sep 12 13:44:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 13:44:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912114430.4797D24740D1@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 13:44:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add indentation to tracing The result is quite nice. The code is a little gnarly how to decides to insert newlines but the result is good. Because sometimes outdent is because the operation is marked as such, e.g. call_direct or end_procedure and sometimes it is by getting the tail operations like params or fields (notice that params are counted, locals are not, and some locals follow params, e.g. "_result" so the formating is a bit off) probably the multiplier shouldn't be sprinkled around either and the space string construction could be more general and efficient, i.e. grow it as needed instead of hardcoded size e.g. (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... when what you want is: (118) declare_procedure quoted_string:Text__Length ... (119) declare_local quoted_string:i ... (120) declare_param quoted_string:t ... (121) declare_local quoted_string:_result ... (122) declare_procedure quoted_string:Text__Empty ... ... Rewrite fmt_uid, for brevity and to avoid signed math. (table lookup instead of if ladder) (bikeshed perhaps) a little cleanup/cosmetic: memcpy instead of strcpy a constant (zzz) remove comparisons to zero in boolean context remove some braces remove spaces at ends of lines (thought I already had) forgot to mention earlier: start, barely, consolidating the trace options From jkrell at elego.de Sun Sep 12 15:08:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912130808.0AC912474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:08:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: work in progress but far along and working well: have the macros the tracing instead of each function as part of this: a => align s => size n, etc. => name quoted_string => string double spaces => single space historically this was indent at start of line, but now it is within the line the previous tricky version was still outputting too many newlines, so simplify and reduce, but not ideal? one nagging point is that the mangled identifiers can't easily be printed by the macros so in a few cases I have deliberately left in separate printing this work isn't done because I generally review the manual trace and the automatic one and make sure the automatic is adequate, I haven't done that for each operand From jkrell at elego.de Sun Sep 12 15:11:30 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 15:11:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912131130.6BA492474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 15:11:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove manual tracing of object and method as the macros do good enough job (almost identical, not sub-standard or anything) From jkrell at elego.de Sun Sep 12 21:23:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 12 Sep 2010 21:23:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912192310.9274A2474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/12 21:23:10 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: some more tracing; rename m => offset n => count remove more manual tracing indent enums add missing outdent fix trees with regard to RETURN_EXPR based on configure -enable-checking feedback notice that I'm ignoring other -enable-checking feedback, if I handle it all, there are problems; eventually we'd like it to work but it isn't easy allow inlining!! switch type table to fixed size is this needed?? It is quite lame. will try again without From jkrell at elego.de Mon Sep 13 00:01:39 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:01:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912220140.BE628CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:01:39 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: back to a growable table (VEC) introduce #defines for the builtin uids, put them in an array, loop over that for initialization, use a switch to optimize common ones (only two but could be extended) From jkrell at elego.de Mon Sep 13 00:28:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 0:28:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912222846.301F82474028@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 00:28:45 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix C++ warnings from gcc 4.5 fix undefined warnings from gcc 4.5 fix simple recent typo that triggered warning from gcc 4.5 (the real reason I was going to try gcc 4.5 was for its #pragma diagnostic feature, so I could say T foo = { 0 } but I gave up on that, so unfortunate the gcc warning there and the historical lack of a way to supress it, it greatly decreases what you can do with portable warning-free C) From jkrell at elego.de Mon Sep 13 01:43:05 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 1:43:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100912234305.B05022474014@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 01:43:05 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c tree-cfg.c Log message: configure -enable-checking hacking turn some checks unconditionally on turn some reports off Long term no reports should be off, and what we enable when/how needs more thought. From jkrell at elego.de Mon Sep 13 02:17:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001731.737BE247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:30 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From jkrell at elego.de Mon Sep 13 02:17:54 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 2:17:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913001754.769C5247402F@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 02:17:54 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: turn off another configure -enable-checking error.. From rcoleburn at elego.de Mon Sep 13 04:22:51 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:22:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022251.51FD124741F4@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:22:51 Modified files: cm3/scripts/install/windows/: cm3CommandShell.CMD Log message: Make Visual Studio 2010 Express the default. Adjust to deal with Vista and Windows7 OS identification. From rcoleburn at elego.de Mon Sep 13 04:29:08 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:29:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913022909.0BAB52474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From rcoleburn at elego.de Mon Sep 13 04:33:32 2010 From: rcoleburn at elego.de (Randy Coleburn) Date: Mon, 13 Sep 2010 4:33:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913023332.99D5F2474033@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:33:32 Modified files: cm3/scripts/dev/windows/: do-cm3.cmd Log message: add Windows7 OS detection From rcolebur at SCIRES.COM Mon Sep 13 04:45:57 2010 From: rcolebur at SCIRES.COM (Coleburn, Randy) Date: Sun, 12 Sep 2010 22:45:57 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913022909.0BAB52474033@birch.elegosoft.com> References: <20100913022909.0BAB52474033@birch.elegosoft.com> Message-ID: Sorry, the dependency should have read "...being present in C:\cm3\bin" --Randy -----Original Message----- From: Randy Coleburn [mailto:rcoleburn at elego.de] Sent: Monday, September 13, 2010 12:29 AM To: m3commit at elegosoft.com Subject: [M3commit] CVS Update: cm3 CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 10/09/13 04:29:08 Added files: cm3/scripts/install/windows/: CommandPromptHere.reg cm3CommandPromptHere.reg Log message: Use these 2 registry files to add context menu entries to Windows Explorer. Double-click to install. cm3CommandPromptHere.reg: Right click on a folder in explorer, choose "cm3 Command Prompt Here" and it brings up a new command prompt window ready for using cm3 in that directory. Depends on cm3CommandShell.cmd being present in C:\CM3. CommandPromptHere.reg: Right click on a folder in explorer, choose "Command Prompt Here" and it brings up a new command prompt window in that directory. From jkrell at elego.de Mon Sep 13 06:57:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 6:57:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913045727.C50C32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 06:57:27 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: untested: split up cc and ld parameters to avoid warnings from cc about ld parameters, that show up as a diff running the tests From jkrell at elego.de Mon Sep 13 07:06:35 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:06:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913050635.9CEE42474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:06:35 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: FreeBSD.common Log message: use correct comment character From jkrell at elego.de Mon Sep 13 07:15:03 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:15:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051503.E02322474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:15:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: sel-sched.c Log message: sel-sched.c:2495:8: warning: enum conversion in initialization is invalid in C++ From jkrell at elego.de Mon Sep 13 07:16:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:16:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913051651.C5AA92474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:16:51 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-cfg.c Log message: restore original From jkrell at elego.de Mon Sep 13 07:22:15 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:22:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052215.8CF0B2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:22:15 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: gimplify.c Log message: restore original, mostly From jkrell at elego.de Mon Sep 13 07:23:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 7:23:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913052307.5EC4C2474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 07:23:07 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa.c Log message: restore original From jkrell at elego.de Mon Sep 13 09:29:51 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 9:29:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913072951.54CA32474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 09:29:51 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: mark all non-bitfield fields as addressable This was part of a not yet very successful attempt at dealing with configure -enable-checking, and its flagging of our heavy use of bitfield refs. Hopefully we get something that isn't as bad as volatile. Hopefully we can remove this addressability actually, though I'll probably add more first (objects, arrays, etc.) Lots of cosmetic/cleanup. o => offset n => name len, n_len => name_length val => value p => proc l => label a, b, c, aren't terrible identifers, but l is particularly onerous due to resembles to 1 t => type more to do here some functions have v and val, can't both be value tree *f => out_f, and use local f to avoid repeated derefs tree *v => out_v consolidate all tracing options There is just one variable now, option_trace_all, and all the options increment it. Almost all of the tracing is at level 1, a little is at 2. call one_gap/m3_gap unconditionally and have it do the check some missing spaces on function calls (really I'd just as soon remove them all, but they are fairly consistently present, so I'm following that style) remove the list of optimizations to possibly disable if need be, regain them from where they came tweak the options a little less; ongoing experimentation to reduce them, but some of them require a lot of debugging and fixing work in progress to synthesize field accesses on loads/stores From jay.krell at cornell.edu Mon Sep 13 09:40:21 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 07:40:21 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: Darn it, it turns out, I didn't run that version, but hopefully something close to it. Because building in m3cc always succeeds, because of the pipeline vs. status thing. I'll have to do something about this. I really don't want to lose the log though. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 09:29:51 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > From jkrell at elego.de Mon Sep 13 10:15:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081526.B80A1247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:26 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Disable the logging. It hurts too much. So lame. From jkrell at elego.de Mon Sep 13 10:15:53 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081553.32D41247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:15:53 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: add commented out -enable-checking without =all, as a 'suggestin' From jkrell at elego.de Mon Sep 13 10:17:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:17:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913081746.02D10247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:17:45 Modified files: cm3/m3-sys/m3cc/src/: m3makefile Log message: Stop using -static on OpenBSD. Seems pretty lame either way. Perhaps they have compat libraries, just not installed by default?? Perhaps -static was the better tradeoff? Perhaps nobody used Modula-3 on OpenBSD? Hopefully we'll have a distribution format that is slightly or very sourcey, that will address this, though that is also lame. From jkrell at elego.de Mon Sep 13 10:28:18 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:28:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913082818.5A454247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:28:18 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: I believe configure/autoconf does an adequate job of figuring out cc and cflags, so remove nearly all that mechanism here. CC and CFLAGS will still be honored. There is some supposition that you don't have a need to set CC one way for m3cc and another way for e.g. m3core and the m3 config files. Since m3core/config files don't honor CC, that is reasonable. We may or may not have a very pressing need to restore this, so that we can remove -g on SPARC32_LINUX to save diskspace. I'd like to just replace that machine with one with more space. The one part that is left is that for Solaris we are willing to add /usr/sfw/bin or /opt/csw/gcc4/bin to $PATH. We should probably put them at the end, or only do so if cc is not available (gcc is buildable with cc). From jkrell at elego.de Mon Sep 13 10:30:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:30:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083026.1EC9F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:30:26 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove the CC and CFLAGS stuff here too From jkrell at elego.de Mon Sep 13 10:32:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:32:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083213.DF613247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:32:13 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: cleanup as-yet unused stuff From jkrell at elego.de Mon Sep 13 10:39:27 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:39:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913083927.F2673247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:39:27 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: remove "quick" option don't specific host/target for native builds That was an experiment of mine, that failed largely for m3cc. This is all quite unfortunate though..probing for build system, on the assumption that the eventual host will match, and it being too difficult to do otherwise, to give os/version and have it encoded somewhere that that means, or to build highly portable executables that probe at runtime (e.g. Win32 LoadLibrary/GetProcAddress) From jkrell at elego.de Mon Sep 13 10:42:30 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:42:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084230.64D54247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:42:30 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: run configure only if Makefile doesn't exist, kind of like m3cc does (the cross story is less refined here, should probably just remove it? From jkrell at elego.de Mon Sep 13 10:45:17 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:45:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913084517.67C33247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:45:17 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: update m3gdb_Run based on current m3gdb_Run From jkrell at elego.de Mon Sep 13 10:53:45 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 10:53:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913085345.32560247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 10:53:45 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile cm3/m3-sys/m3cc/src/: gnucc.common Log message: Drop notion of cross building m3gdb. It is never done. From jay.krell at cornell.edu Mon Sep 13 10:50:51 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 08:50:51 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913084517.67C33247401A@birch.elegosoft.com> References: <20100913084517.67C33247401A@birch.elegosoft.com> Message-ID: (er, based on current m3cc_Run) ---------------------------------------- > Date: Mon, 13 Sep 2010 10:45:17 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 10:45:17 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > > Log message: > update m3gdb_Run based on current m3gdb_Run > From jkrell at elego.de Mon Sep 13 11:12:41 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:12:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091241.2DD2F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:12:41 Modified files: cm3/m3-sys/m3cc/src/: gnucc.common m3makefile Log message: Drop notion of build != host. Nobody around here does that. I.e. not building "canadian" or cross building a native compiler, or "cross back". Just either native (build=host=target), or build=host and host!=target. That's all I do and I expect nobody else has done other for a long time and nobody ever will. But maybe.n From jkrell at elego.de Mon Sep 13 11:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091436.4F90F247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:14:36 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Log message: Replace bunch of comparisons with one table lookup. From jkrell at elego.de Mon Sep 13 11:15:55 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:15:55 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913091555.6C4D0247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:15:55 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: remove cross gdb stuff From jkrell at elego.de Mon Sep 13 11:26:07 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:26:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913092607.23CB2247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:26:07 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake-old Log message: oops: fix a typos, and cleanup more From jkrell at elego.de Mon Sep 13 11:38:42 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:38:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913093842.E5332247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:38:42 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix typos so that it builds now replace parallel set of FOO & UNUSED_FOO with just FOO that produces no warning whether or not the data is used I like that. replace gcc specific attribute_unused syntax with something that likely portably fools all compilers and should be cheap enough Maybe this one is dubious. replace "cc" with "calling_convention" "n" => "name" but note, I forgot, there's a feature of my new tracing stuff that doesn't print names if they are one character, to consider using! count_t => count_type mem_t => mem_type (should be memory_type) remove more manual tracing remove more futzing with optimizations: flag_strict_aliasing (dangerous?) flag_strict_overflow (dangerous?) flag_reorder_functions (looks safe) still more to do here, as stuff is found or made to work From jkrell at elego.de Mon Sep 13 11:58:19 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:58:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095819.40263247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:58:19 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "v" => "var" redisable flag_strict_aliasing and flag_strict_overflow pending double checking From jkrell at elego.de Mon Sep 13 11:59:26 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 11:59:26 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913095926.2500A247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 11:59:26 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: "o" => "offset" From jkrell at elego.de Mon Sep 13 14:04:13 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:04:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913120413.8FC962474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:04:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: separate get_int into get_int and trace_int This way: - no more passing of 0 to suppress trace (somewhat reversion of earlier changes) - macros that multiply can trace the multiplied value That is the real point, it seems more correct this way, though the serialized value is what was traced and wasn't entirely illegitimate. - get_int less changed vs. historical version, if that matters eliminate temporaries from min and max (but not check_eq) combine min and max implementations into minmax eliminate more manual tracing (I only eliminate them after looking at the new auto+manual version, make sure auto has parity) eliminate several cases of multiplication by BITS_PER_UNIT almost immediately followed by division by BITS_PER_UNIT It seems kind of confusing either way. I guess "BYTEOFFSET" is an indication that a number of bytes is serialized, and the macro would then convert to the usual bit offset, but then a bunch of code really wants byte offsets anyway. And there I was starting to think that bitoffsets were a much better currency. And yes, I know that division and multiplication by constant power of 2 (eh, really any 32 bit constant, these days) is super duper fast) I certainly be comfortable passing bit offsets here in the first place, and then doing just the divide as needed. From jkrell at elego.de Mon Sep 13 14:48:02 2010 From: jkrell at elego.de (Jay Krell) Date: Mon, 13 Sep 2010 14:48:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100913124802.F24092474016@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/13 14:48:02 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: eliminate more manual tracing capitalize hex, yucky code trace_int => m3_trace_int more consistently skip single char names From rodney_bates at lcwb.coop Mon Sep 13 23:09:51 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:09:51 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913091555.6C4D0247401A@birch.elegosoft.com> References: <20100913091555.6C4D0247401A@birch.elegosoft.com> Message-ID: <4C8E931F.80209@lcwb.coop> Not sure what you mean here. If you mean m3gdb will only be built on the same machine it runs on, I think that is entirely reasonable. If you mean no cross-debuggers (which run on one machine and debug a different one), we should preserve these. Especially with the proliferation of small embedded devices, etc. Probably not much need to be able to build such a cross debugger until somebody has a specific need, but existing separation between HOST (machine gdb runs on) and TARGET (where the debugee program runs) should be preserved in the code so we don't lose the work that went into it. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 11:15:55 > > Modified files: > cm3/m3-sys/m3gdb/src/: m3makefile > Removed files: > cm3/m3-sys/m3gdb/src/: platforms.quake > > Log message: > remove cross gdb stuff > > From rodney_bates at lcwb.coop Mon Sep 13 23:15:09 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Mon, 13 Sep 2010 16:15:09 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100913072951.54CA32474016@birch.elegosoft.com> References: <20100913072951.54CA32474016@birch.elegosoft.com> Message-ID: <4C8E945D.6010408@lcwb.coop> Is there any documentation that tells what the invariants are on the trees gdb can handle? One would hope there would be. Discovering such by reading code in something as big as gcc is a very difficult and error-prone job. It sounds like you are having to discover them by trial-and-error experiments, which is very much the hard way. One would hope it exists, but then, from sad experiences, not necessarily realistically expect so. Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/13 09:29:51 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > mark all non-bitfield fields as addressable > This was part of a not yet very successful attempt at > dealing with configure -enable-checking, and its flagging > of our heavy use of bitfield refs. > Hopefully we get something that isn't as bad as volatile. > Hopefully we can remove this addressability actually, > though I'll probably add more first (objects, arrays, etc.) > > Lots of cosmetic/cleanup. > o => offset > n => name > len, n_len => name_length > val => value > p => proc > l => label > a, b, c, aren't terrible identifers, but l is particularly > onerous due to resembles to 1 > t => type > more to do here > some functions have v and val, can't both be value > tree *f => out_f, and use local f to avoid repeated derefs > tree *v => out_v > consolidate all tracing options > There is just one variable now, option_trace_all, and > all the options increment it. Almost all of the tracing > is at level 1, a little is at 2. > > call one_gap/m3_gap unconditionally and have it do the check > > some missing spaces on function calls > (really I'd just as soon remove them all, but they are > fairly consistently present, so I'm following that style) > > remove the list of optimizations to possibly disable > if need be, regain them from where they came > > tweak the options a little less; ongoing experimentation > to reduce them, but some of them require a lot of > debugging and fixing > > work in progress to synthesize field accesses on loads/stores > > From jay.krell at cornell.edu Tue Sep 14 01:45:01 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:45:01 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E945D.6010408@lcwb.coop> References: <20100913072951.54CA32474016@birch.elegosoft.com>, <4C8E945D.6010408@lcwb.coop> Message-ID: I don't know. tree.h and tree.def are useful. I suspect the main problem is we generate obviously dubious trees. For example, let's say you had: struct { int a,b; } c; void F() { ? printf("%d%d\n", c.a, c.b); } There is a notion of "component ref" ie. "field ref" in union or struct/record. This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. However what parse.c I believe generates is equivalent to either: printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) or: typedef struct { int a:32; } BF1; typedef struct { int a,b:32; } BF2; printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); As well, historically, c itself might have been to have no fields, but a size: struct {? } c; // size = 8 That is what set off this whole adventure, as that construct causes problems specifically on SPARC64, when it tries to figure out how to pass the struct/record as a parameter. Though I only recently found a likely easy workaround for that. Parameter types and how they are passed can be separately specified, presumably letting us always pass by address. I speculate that if we made something much closer to "obviously" correct trees, our problems would go away. The trees support fairly high level operations. And strong typing. But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:15:09 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Is there any documentation that tells what the invariants are on the > trees gdb can handle? One would hope there would be. Discovering > such by reading code in something as big as gcc is a very difficult > and error-prone job. It sounds like you are having to discover them > by trial-and-error experiments, which is very much the hard way. > > One would hope it exists, but then, from sad experiences, not necessarily > realistically expect so. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > mark all non-bitfield fields as addressable > > This was part of a not yet very successful attempt at > > dealing with configure -enable-checking, and its flagging > > of our heavy use of bitfield refs. > > Hopefully we get something that isn't as bad as volatile. > > Hopefully we can remove this addressability actually, > > though I'll probably add more first (objects, arrays, etc.) > > > > Lots of cosmetic/cleanup. > > o => offset > > n => name > > len, n_len => name_length > > val => value > > p => proc > > l => label > > a, b, c, aren't terrible identifers, but l is particularly > > onerous due to resembles to 1 > > t => type > > more to do here > > some functions have v and val, can't both be value > > tree *f => out_f, and use local f to avoid repeated derefs > > tree *v => out_v > > consolidate all tracing options > > There is just one variable now, option_trace_all, and > > all the options increment it. Almost all of the tracing > > is at level 1, a little is at 2. > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > some missing spaces on function calls > > (really I'd just as soon remove them all, but they are > > fairly consistently present, so I'm following that style) > > > > remove the list of optimizations to possibly disable > > if need be, regain them from where they came > > > > tweak the options a little less; ongoing experimentation > > to reduce them, but some of them require a lot of > > debugging and fixing > > > > work in progress to synthesize field accesses on loads/stores > > > > From jay.krell at cornell.edu Tue Sep 14 01:47:49 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:47:49 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8E931F.80209@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: Let's put it back when we need it, if m3gdb supports such target. ? (e.g. it doesn't support ARM_DARWIN anyway). Maybe by then the trees in the backen will be good enough that gdb will suffice. I use the recent release as a good easy source of getting older code from. ? (easier than cvsweb, which is also available) Or if you insist I can put it back immediately. ?- Jay ---------------------------------------- > Date: Mon, 13 Sep 2010 16:09:51 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Not sure what you mean here. If you mean m3gdb will only be built > on the same machine it runs on, I think that is entirely reasonable. > > If you mean no cross-debuggers (which run on one machine and debug > a different one), we should preserve these. Especially with the > proliferation of small embedded devices, etc. > > Probably not much need to be able to build such a cross debugger > until somebody has a specific need, but existing separation between > HOST (machine gdb runs on) and TARGET (where the debugee program runs) > should be preserved in the code so we don't lose the work that went > into it. > > Jay Krell wrote: > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/13 11:15:55 > > > > Modified files: > > cm3/m3-sys/m3gdb/src/: m3makefile > > Removed files: > > cm3/m3-sys/m3gdb/src/: platforms.quake > > > > Log message: > > remove cross gdb stuff > > > > From jay.krell at cornell.edu Tue Sep 14 01:53:41 2010 From: jay.krell at cornell.edu (Jay K) Date: Mon, 13 Sep 2010 23:53:41 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913072951.54CA32474016@birch.elegosoft.com>, , <4C8E945D.6010408@lcwb.coop>, Message-ID: ps: configure -enable-checking points out lots of problems, or at least countless instances of a small number of problems, with our trees. For example, trees apparently don't support adding any two different types together, e.g. int8 + int32. But we do it, and it seems to work. The bitfield refs we generate seem to cause a specific error. But changing to the other form generates bad code somewhere under -O3. It also doesn't like something about how we use static chains. configure -enable-checking never should have gone bad imho. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: rodney_bates at lcwb.coop; m3commit at elegosoft.com > Date: Mon, 13 Sep 2010 23:45:01 +0000 > Subject: Re: [M3commit] CVS Update: cm3 > > > I don't know. > tree.h and tree.def are useful. > I suspect the main problem is we generate obviously dubious trees. > > > For example, let's say you had: > > > struct { int a,b; } c; > void F() > { > printf("%d%d\n", c.a, c.b); > } > > > There is a notion of "component ref" ie. "field ref" in union or struct/record. > This code can be represented in a fairly straightforward typeful highlevel way with gcc trees. > > > However what parse.c I believe generates is equivalent to either: > > > printf("%d%d\n", *(int*)(((char*)&c)), , *(int*)(((char*)&c) + 4) > > > or: > > typedef struct { int a:32; } BF1; > typedef struct { int a,b:32; } BF2; > > > > printf("%d%d\n", ((BF1)c).a, , ((BF2)c).b); > > > As well, historically, c itself might have been to have no fields, but a size: > > > struct { } c; // size = 8 > > > > That is what set off this whole adventure, as that construct causes > problems specifically on SPARC64, when it tries to figure out how > to pass the struct/record as a parameter. Though I only recently found > a likely easy workaround for that. Parameter types and how they are > passed can be separately specified, presumably letting us always > pass by address. > > > > I speculate that if we made something much closer to "obviously" correct trees, > our problems would go away. > > > The trees support fairly high level operations. And strong typing. > But we generate fairly low level operations. And weak, incomplete (incorrect?) typing. > > > - Jay > > ---------------------------------------- > > Date: Mon, 13 Sep 2010 16:15:09 -0500 > > From: rodney_bates at lcwb.coop > > To: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Is there any documentation that tells what the invariants are on the > > trees gdb can handle? One would hope there would be. Discovering > > such by reading code in something as big as gcc is a very difficult > > and error-prone job. It sounds like you are having to discover them > > by trial-and-error experiments, which is very much the hard way. > > > > One would hope it exists, but then, from sad experiences, not necessarily > > realistically expect so. > > > > Jay Krell wrote: > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/13 09:29:51 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > mark all non-bitfield fields as addressable > > > This was part of a not yet very successful attempt at > > > dealing with configure -enable-checking, and its flagging > > > of our heavy use of bitfield refs. > > > Hopefully we get something that isn't as bad as volatile. > > > Hopefully we can remove this addressability actually, > > > though I'll probably add more first (objects, arrays, etc.) > > > > > > Lots of cosmetic/cleanup. > > > o => offset > > > n => name > > > len, n_len => name_length > > > val => value > > > p => proc > > > l => label > > > a, b, c, aren't terrible identifers, but l is particularly > > > onerous due to resembles to 1 > > > t => type > > > more to do here > > > some functions have v and val, can't both be value > > > tree *f => out_f, and use local f to avoid repeated derefs > > > tree *v => out_v > > > consolidate all tracing options > > > There is just one variable now, option_trace_all, and > > > all the options increment it. Almost all of the tracing > > > is at level 1, a little is at 2. > > > > > > call one_gap/m3_gap unconditionally and have it do the check > > > > > > some missing spaces on function calls > > > (really I'd just as soon remove them all, but they are > > > fairly consistently present, so I'm following that style) > > > > > > remove the list of optimizations to possibly disable > > > if need be, regain them from where they came > > > > > > tweak the options a little less; ongoing experimentation > > > to reduce them, but some of them require a lot of > > > debugging and fixing > > > > > > work in progress to synthesize field accesses on loads/stores > > > > > > > From jkrell at elego.de Tue Sep 14 15:54:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 15:54:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914135408.20270247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 15:54:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: more tracing work, and an 'int' to 'bool' From rodney_bates at lcwb.coop Tue Sep 14 17:48:14 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 10:48:14 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8F993E.7060903@lcwb.coop> I am still not sure just what you took out. I guess I need to look at it to be sure what I think. As a principle, putting stuff back in later is often *far* more difficult that one might think or than just leaving it in. Even with a system that preserves all the old versions, you have to comb through many old versions/updates to see which ones are relevant. Then you have to comb through each to see which changes are relevant. Even if the remover kept all relevant changes in separate updates and gave them good comments, you don't really know this, and have to review it all. Then you have to find where the code has moved to in the latest version. And then the actual editing. All this has to be done manually, and can be very tedious. And finally, it's unusually error-prone precisely because it's so boring, yet picky. Note that you don't have to maintain it all in working condition. You can disable it in various ways, at build time, runtime, etc., or even just comment stuff out, but leave it in the files. Good comments as to what you have done are, of course, always appropriate. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From rodney_bates at lcwb.coop Tue Sep 14 22:23:47 2010 From: rodney_bates at lcwb.coop (Rodney M. Bates) Date: Tue, 14 Sep 2010 15:23:47 -0500 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, <4C8E931F.80209@lcwb.coop> Message-ID: <4C8FD9D3.8040602@lcwb.coop> Please put it back. I am about to use it myself to debug on an older computer that is using PM3. Jay K wrote: > Let's put it back when we need it, if m3gdb supports such target. > (e.g. it doesn't support ARM_DARWIN anyway). > Maybe by then the trees in the backen will be good enough that gdb will suffice. > I use the recent release as a good easy source of getting older code from. > (easier than cvsweb, which is also available) > > Or if you insist I can put it back immediately. > > > - Jay > > > ---------------------------------------- >> Date: Mon, 13 Sep 2010 16:09:51 -0500 >> From: rodney_bates at lcwb.coop >> To: m3commit at elegosoft.com >> Subject: Re: [M3commit] CVS Update: cm3 >> >> Not sure what you mean here. If you mean m3gdb will only be built >> on the same machine it runs on, I think that is entirely reasonable. >> >> If you mean no cross-debuggers (which run on one machine and debug >> a different one), we should preserve these. Especially with the >> proliferation of small embedded devices, etc. >> >> Probably not much need to be able to build such a cross debugger >> until somebody has a specific need, but existing separation between >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) >> should be preserved in the code so we don't lose the work that went >> into it. >> >> Jay Krell wrote: >>> CVSROOT: /usr/cvs >>> Changes by: jkrell at birch. 10/09/13 11:15:55 >>> >>> Modified files: >>> cm3/m3-sys/m3gdb/src/: m3makefile >>> Removed files: >>> cm3/m3-sys/m3gdb/src/: platforms.quake >>> >>> Log message: >>> remove cross gdb stuff >>> >>> > From jkrell at elego.de Tue Sep 14 22:46:44 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:46:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914204644.96C0B247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:46:44 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Added files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: bring back equivalent of cross functionality that was here which isn't clearly what anyone wants anyway From jay.krell at cornell.edu Tue Sep 14 22:50:39 2010 From: jay.krell at cornell.edu (Jay K) Date: Tue, 14 Sep 2010 20:50:39 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <4C8FD9D3.8040602@lcwb.coop> References: <20100913091555.6C4D0247401A@birch.elegosoft.com>, , <4C8E931F.80209@lcwb.coop>, , <4C8FD9D3.8040602@lcwb.coop> Message-ID: Rodney, The code was there was precious little and did next to nothing, but has that obnoxous platforms.quake, and appears to be altering the gdb host, not the target. All you have to do is: ? mkdir /foo? ? cd /foo? ? /cvsroot/m3-sys/m3gdb/gdb/configure .... ? make The entire m3cc/src/m3makefile and m3gdb/src/m3makefile are just meant to be thin wrappers around that, though m3cc I have thickened. Anyway, I put back what should be equivalent to what it was. I would still like to remove it, esp. because of platforms.quake. Please look at it, decide if you need it, and consider removing it. Again there is almost nothing there either way, but platforms.quake is not a good thing to keep around. I want as little platform-specific code/data as possible, and probably to locate it differently -- like only in config files, not even in Target.m3 if I can help it. Thanks, ?- Jay ---------------------------------------- > Date: Tue, 14 Sep 2010 15:23:47 -0500 > From: rodney_bates at lcwb.coop > To: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > Please put it back. I am about to use it myself to debug on an older > computer that is using PM3. > > Jay K wrote: > > Let's put it back when we need it, if m3gdb supports such target. > > (e.g. it doesn't support ARM_DARWIN anyway). > > Maybe by then the trees in the backen will be good enough that gdb will suffice. > > I use the recent release as a good easy source of getting older code from. > > (easier than cvsweb, which is also available) > > > > Or if you insist I can put it back immediately. > > > > > > - Jay > > > > > > ---------------------------------------- > >> Date: Mon, 13 Sep 2010 16:09:51 -0500 > >> From: rodney_bates at lcwb.coop > >> To: m3commit at elegosoft.com > >> Subject: Re: [M3commit] CVS Update: cm3 > >> > >> Not sure what you mean here. If you mean m3gdb will only be built > >> on the same machine it runs on, I think that is entirely reasonable. > >> > >> If you mean no cross-debuggers (which run on one machine and debug > >> a different one), we should preserve these. Especially with the > >> proliferation of small embedded devices, etc. > >> > >> Probably not much need to be able to build such a cross debugger > >> until somebody has a specific need, but existing separation between > >> HOST (machine gdb runs on) and TARGET (where the debugee program runs) > >> should be preserved in the code so we don't lose the work that went > >> into it. > >> > >> Jay Krell wrote: > >>> CVSROOT: /usr/cvs > >>> Changes by: jkrell at birch. 10/09/13 11:15:55 > >>> > >>> Modified files: > >>> cm3/m3-sys/m3gdb/src/: m3makefile > >>> Removed files: > >>> cm3/m3-sys/m3gdb/src/: platforms.quake > >>> > >>> Log message: > >>> remove cross gdb stuff > >>> > >>> > > From jkrell at elego.de Tue Sep 14 22:55:05 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 14 Sep 2010 22:55:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100914205505.BC63F247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/14 22:55:05 Modified files: cm3/m3-sys/m3gdb/src/: m3makefile Removed files: cm3/m3-sys/m3gdb/src/: platforms.quake Log message: redefine M3GDB_HOST to be the GNU platform, not the Modula-3 platform, so we don't have to carry around a translation From jkrell at elego.de Wed Sep 15 13:59:43 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 13:59:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915115943.C3C36247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 13:59:43 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: trace integers more consistently only mangle names if -gstabs or -gstabs+ specified, and not Macho From jkrell at elego.de Wed Sep 15 14:05:29 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:05:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120529.D60D8247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:05:29 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix warning comparing unsigned >=0 is always true From jkrell at elego.de Wed Sep 15 14:07:41 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:07:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915120741.A10E3247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:07:41 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix trace From jkrell at elego.de Wed Sep 15 14:17:22 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:17:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121722.A4405247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:17:22 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comments/tracing From jkrell at elego.de Wed Sep 15 14:19:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:19:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915121937.8D9EC247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:19:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: smush out a line via style From jkrell at elego.de Wed Sep 15 14:20:12 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122012.24571247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:12 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:20:32 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:20:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122032.39130247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:20:32 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: really remove the sole use of the antiquated 'register' construct From jkrell at elego.de Wed Sep 15 14:27:54 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:27:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915122754.19112247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:27:54 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: comment/whitespace From jkrell at elego.de Wed Sep 15 14:40:46 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:40:46 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124046.92A59247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:40:46 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use input_location instead of UNKNOWN_LOCATION in build_decl for gcc 4.5, to fix crash in -g/-gdb, my fault in moving to 4.5 From jkrell at elego.de Wed Sep 15 14:42:20 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:42:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124220.8CDB1247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:42:20 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: only print m3name if m3gdb is true, since otherwise it is the same as an already printed name From jkrell at elego.de Wed Sep 15 14:44:44 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:44:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124444.7DC87247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:44:44 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: one space From jkrell at elego.de Wed Sep 15 14:49:18 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:49:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915124918.C25DE247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:49:18 Added files: cm3/m3-sys/m3tests/src/p2/p248/: m3makefile Main.m3 Log message: a place to experiment with object model, learn m3front=>m3back patterns, etc. maybe not really a test case, maybe need not be checked in From jkrell at elego.de Wed Sep 15 14:51:36 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125136.13892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:36 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: fix somewhat bad sounding typo, add more stuff, wouldn't have commited but the typo was a little bad From jkrell at elego.de Wed Sep 15 14:51:47 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 14:51:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915125147.B9F05247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 14:51:47 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: copy of the typo From jkrell at elego.de Wed Sep 15 15:24:15 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 15 Sep 2010 15:24:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100915132416.06892247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/15 15:24:15 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: add 2 byte and whopping 4 byte enum (64K elements) From jkrell at elego.de Thu Sep 16 12:58:18 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 16 Sep 2010 12:58:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100916105818.B31852474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/16 12:58:18 Modified files: cm3/m3-sys/m3tests/src/p2/p248/: Main.m3 Log message: Be sure to keep in mind that types, er, typenames, are block scoped. We can have multiple enums named Color. Need to handle that correctly in the debug information. From jkrell at elego.de Sun Sep 19 16:50:29 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 16:50:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919145030.0C11C2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 16:50:29 Added files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: Provide RTDebug.IsDebuggerPresent and RTDebug.DebugBreak. Win32: RTDebug.IsDebuggerPresent => IsDebuggerPresent RTDebug.DebugBreak => DebugBreak Apple: RTDebug.IsDebuggerPresent => experimentally derived on my Intel 10.5 system. (could also test ppc emulation) sigaction(sigtrap, 0, &sa); peek at sa RTDebug.DebugBreak => works sigaction(sigtrap, 0, &old); signal(sigtrap, sigign); raise(sigtrap); sigaction(sigtrap, &old, 0); others: RTDebug.IsDebuggerPresent => false experimented on Linux and found Apple approach not viable RTDebug.DebugBreak => works, same as Apple smaller alternative would be definitely appreciated note that DebugBreak must be trivially continuable in debugger abort() is not it! bonus points if it is macro or builtin and small for C so the break occurs right in the code; on Win32 there is also __debugbreak() which generates one instruction right there, very nice (though notice that Win32 DebugBreak is "fatal" not in a debuger, whereas my Posix version isn't, because I can't implement IsDebuggerPresent) bonus points also if IsDebuggerPresent is fast, and updates itself as debugger is detached/reattached, though current version doesn't; Win32 does From jkrell at elego.de Sun Sep 19 17:17:49 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:17:49 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151749.B779D2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:17:49 Modified files: cm3/m3-libs/m3core/src/runtime//common/: RTDebugC.c Log message: forgot call to raise(sigtrap) From jkrell at elego.de Sun Sep 19 17:18:27 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 19 Sep 2010 17:18:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100919151827.B161F2474006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/19 17:18:27 Modified files: cm3/m3-libs/m3core/src/runtime//common/: m3makefile RTDebug.i3 Log message: add RTDebug.IsDebuggerPresent/DebugBreak From jkrell at elego.de Wed Sep 22 14:33:37 2010 From: jkrell at elego.de (Jay Krell) Date: Wed, 22 Sep 2010 14:33:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100922123340.0FEDB247401C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/22 14:33:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: add tracing to scan_var, reformat scan_var and varray_extend From jkrell at elego.de Thu Sep 23 14:14:36 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 14:14:36 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923121436.608C0CC123@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 14:14:36 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: m3cg_revstr => m3_revstr m3cg_unsigned_wide_to_hex_full => m3_unsigned_wide_to_hex_full m3cg_signed_wide_to_hex_shortest => m3_signed_wide_to_hex_shortest m3cg_fill_hex_value => m3_fill_hex_value move these functions earlier in file add m3_unsigned_wide_to_dec_shortest to be used probably soon From jkrell at elego.de Thu Sep 23 15:52:53 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:52:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135253.780DACC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:52:53 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: use alloca in places to allocate correctly sized buffers rework m3_push_type_decl slightly to reduce duplication and slightly increase data-driven-ness before: m3_push_type_decl (get_identifier ("int"), t_int) after: m3_push_type_decl (t_int, "int") #define t_int_8 intQI_type_node instead of tree t_int_8; t_int_8 = intQI_type_node; and so on nothing significant here (bikeshedding and stone polishing, stuff noticed en route to more useful stuff) From jkrell at elego.de Thu Sep 23 15:53:28 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:53:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135328.8D8C4CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:53:28 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: initialize local From jkrell at elego.de Thu Sep 23 15:54:21 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 23 Sep 2010 15:54:21 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100923135421.4DB77CC118@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/23 15:54:21 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fold tiny bit of common code From jkrell at elego.de Fri Sep 24 09:46:37 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 9:46:37 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924074637.BD9B0CC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 09:46:37 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more crashes with plain -g -- use BUILTINS_LOCATION or input_location instead of UNKNOWN_LOCATION UNKNOWN_LOCATION always crashes From jkrell at elego.de Fri Sep 24 10:24:30 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 10:24:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924082430.75075CC397@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 10:24:30 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: alignment cannot be 0, it must be at least 1 bit, else plain -g does a divide by zero, crash From jkrell at elego.de Fri Sep 24 13:50:57 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 13:50:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924115057.DC78FCC3AB@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 13:50:57 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: fix more of configure -enable-checking in particular, widen return types both at the implementation and the call (and then narrow after the call) From jkrell at elego.de Fri Sep 24 14:29:18 2010 From: jkrell at elego.de (Jay Krell) Date: Fri, 24 Sep 2010 14:29:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100924122918.A0CCA247400E@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/24 14:29:18 Modified files: cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in dfp.c cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c Makefile.in cm3/m3-sys/m3cc/src/: m3makefile Log message: don't need libdecnumber From dabenavidesd at yahoo.es Sat Sep 25 02:03:13 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:03:13 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100924122918.A0CCA247400E@birch.elegosoft.com> Message-ID: <181251.85043.qm@web29701.mail.ird.yahoo.com> Hi all: why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. Thanks in advance --- El vie, 24/9/10, Jay Krell escribi?: > De: Jay Krell > Asunto: [M3commit] CVS Update: cm3 > Para: m3commit at elegosoft.com > Fecha: viernes, 24 de septiembre, 2010 09:29 > CVSROOT: /usr/cvs > Changes by: > jkrell at birch. 10/09/24 14:29:18 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > dfp.c > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > Makefile.in dfp.c > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > Makefile.in > cm3/m3-sys/m3cc/src/: m3makefile > > Log message: > don't need libdecnumber > > From jkrell at elego.de Sat Sep 25 02:16:13 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 2:16:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925001613.3543E247400D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 02:16:13 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: tighten up some asserts size and align >= 1, not just >= 0 er, no, size can be 0, for empty records or fields of their type, so leave it alone and align >= !!size work in progress types/debugging for enums and typedefs (when you say TYPE a = {b,c}; {b,c} is anonymous enum and a is a typedef/typename for. consider you can say: TYPE a = {b,c}; TYPE a2 = {b,c}; it is equivalent to typedef enum {b,c} a, a2;) not yet working, not yet enabled don't widen return types leave the mechanism though because this might be where we adjust struct vs. struct*, which is another thing configure -enable-checking complains about, though that is specific to module initializers I think, not all functions in general set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) part of attempted work in progress to generate decent trees instead of obviously poor ones; aka to actually maybe finish this backend instead of leaving it very incomplete for years (not yet enabled) Do a better job of skipping the prefix of module/segment names. M_Main => "Main" instead of "ain". Instead of always skipping 3, skip up to the first underscore, if it is at position 0, 1, or 2. Right? Or did I regress this somewhere since release? layout_decl(var, 0) => layout_decl(var, 1) alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:17:24 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:17:24 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <181251.85043.qm@web29701.mail.ird.yahoo.com> References: <20100924122918.A0CCA247400E@birch.elegosoft.com>, <181251.85043.qm@web29701.mail.ird.yahoo.com> Message-ID: It's not related to exception handling. It is "decimal floating point". It is some type that gcc adds to C, at least on some platforms, that we don't expose in Modula-3, and I doubt we ever would. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 00:03:13 +0000 > From: dabenavidesd at yahoo.es > To: m3commit at elegosoft.com; jkrell at elego.de > Subject: Re: [M3commit] CVS Update: cm3 > > Hi all: > why not, are you sure you want to be ride of the exception capabilities? Or Do I miss something, don't I? Perhaps I do. > Thanks in advance > > --- El vie, 24/9/10, Jay Krell escribi?: > > > De: Jay Krell > > Asunto: [M3commit] CVS Update: cm3 > > Para: m3commit at elegosoft.com > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > CVSROOT: /usr/cvs > > Changes by: > > jkrell at birch. 10/09/24 14:29:18 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > dfp.c > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > Makefile.in dfp.c > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > Makefile.in > > cm3/m3-sys/m3cc/src/: m3makefile > > > > Log message: > > don't need libdecnumber > > > > > > > From hosking at cs.purdue.edu Sat Sep 25 02:23:56 2010 From: hosking at cs.purdue.edu (Tony Hosking) Date: Fri, 24 Sep 2010 20:23:56 -0400 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> On 25 Sep 2010, at 02:16, Jay Krell wrote: > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? This must have been a regression! > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g From jay.krell at cornell.edu Sat Sep 25 02:19:28 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:19:28 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925001613.3543E247400D@birch.elegosoft.com> References: <20100925001613.3543E247400D@birch.elegosoft.com> Message-ID: diff attached I keep finding other things to fix while trying to get enums/typedefs to work. So this let me save stuff at an ok place. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 02:16:13 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 02:16:13 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > tighten up some asserts > size and align >= 1, not just >= 0 > er, no, size can be 0, for empty records > or fields of their type, so leave it alone and align >= !!size > > work in progress > types/debugging for enums and typedefs > (when you say TYPE a = {b,c}; > {b,c} is anonymous enum > and a is a typedef/typename for. > consider you can say: > TYPE a = {b,c}; > TYPE a2 = {b,c}; > it is equivalent to typedef enum {b,c} a, a2;) > not yet working, not yet enabled > > don't widen return types > leave the mechanism though because > this might be where we adjust struct vs. struct*, which > is another thing configure -enable-checking complains about, > though that is specific to module initializers I think, > not all functions in general > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > part of attempted work in progress to generate decent trees > instead of obviously poor ones; aka to actually maybe finish > this backend instead of leaving it very incomplete for years > (not yet enabled) > > Do a better job of skipping the prefix of module/segment names. > M_Main => "Main" instead of "ain". > Instead of always skipping 3, skip up to the first > underscore, if it is at position 0, 1, or 2. > Right? Or did I regress this somewhere since release? > > layout_decl(var, 0) > => layout_decl(var, 1) > alignment = 0 is bad, causes divide by zero with plain -g > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 02:40:18 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:40:18 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> References: <20100925001613.3543E247400D@birch.elegosoft.com>, <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu> Message-ID: > This must have been a regression! Ok I'll have to see what the release branch did then. Probably not just by reading the code, which I already did a bit. Debugging it. - Jay ---------------------------------------- > From: hosking at cs.purdue.edu > Date: Fri, 24 Sep 2010 20:23:56 -0400 > To: jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > CVSROOT: /usr/cvs > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > Modified files: > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > Log message: > > tighten up some asserts > > size and align >= 1, not just >= 0 > > er, no, size can be 0, for empty records > > or fields of their type, so leave it alone and align >= !!size > > > > work in progress > > types/debugging for enums and typedefs > > (when you say TYPE a = {b,c}; > > {b,c} is anonymous enum > > and a is a typedef/typename for. > > consider you can say: > > TYPE a = {b,c}; > > TYPE a2 = {b,c}; > > it is equivalent to typedef enum {b,c} a, a2;) > > not yet working, not yet enabled > > > > don't widen return types > > leave the mechanism though because > > this might be where we adjust struct vs. struct*, which > > is another thing configure -enable-checking complains about, > > though that is specific to module initializers I think, > > not all functions in general > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > part of attempted work in progress to generate decent trees > > instead of obviously poor ones; aka to actually maybe finish > > this backend instead of leaving it very incomplete for years > > (not yet enabled) > > > > Do a better job of skipping the prefix of module/segment names. > > M_Main => "Main" instead of "ain". > > Instead of always skipping 3, skip up to the first > > underscore, if it is at position 0, 1, or 2. > > Right? Or did I regress this somewhere since release? > > This must have been a regression! > > > > > layout_decl(var, 0) > > => layout_decl(var, 1) > > alignment = 0 is bad, causes divide by zero with plain -g > From jay.krell at cornell.edu Sat Sep 25 02:44:57 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 00:44:57 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, Message-ID: To be clear though, what I think I saw was: declare_segment(name = "_Main", typeid = NO_UID) => fix_name ?=> M_Main ?=> + 3 ?=> "ain" If those are the parameters to declare_segment, then the rest seems to follow, in release. But I'll have to check it all. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > Date: Sat, 25 Sep 2010 00:40:18 +0000 > CC: m3commit at elegosoft.com > Subject: Re: [M3commit] CVS Update: cm3 > > > > This must have been a regression! > > Ok I'll have to see what the release branch did then. > Probably not just by reading the code, which I already did a bit. > Debugging it. > > - Jay > ---------------------------------------- > > From: hosking at cs.purdue.edu > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > To: jkrell at elego.de > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > CVSROOT: /usr/cvs > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > Log message: > > > tighten up some asserts > > > size and align >= 1, not just >= 0 > > > er, no, size can be 0, for empty records > > > or fields of their type, so leave it alone and align >= !!size > > > > > > work in progress > > > types/debugging for enums and typedefs > > > (when you say TYPE a = {b,c}; > > > {b,c} is anonymous enum > > > and a is a typedef/typename for. > > > consider you can say: > > > TYPE a = {b,c}; > > > TYPE a2 = {b,c}; > > > it is equivalent to typedef enum {b,c} a, a2;) > > > not yet working, not yet enabled > > > > > > don't widen return types > > > leave the mechanism though because > > > this might be where we adjust struct vs. struct*, which > > > is another thing configure -enable-checking complains about, > > > though that is specific to module initializers I think, > > > not all functions in general > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > part of attempted work in progress to generate decent trees > > > instead of obviously poor ones; aka to actually maybe finish > > > this backend instead of leaving it very incomplete for years > > > (not yet enabled) > > > > > > Do a better job of skipping the prefix of module/segment names. > > > M_Main => "Main" instead of "ain". > > > Instead of always skipping 3, skip up to the first > > > underscore, if it is at position 0, 1, or 2. > > > Right? Or did I regress this somewhere since release? > > > > This must have been a regression! > > > > > > > > layout_decl(var, 0) > > > => layout_decl(var, 1) > > > alignment = 0 is bad, causes divide by zero with plain -g > > > From dabenavidesd at yahoo.es Sat Sep 25 02:47:54 2010 From: dabenavidesd at yahoo.es (Daniel Alejandro Benavides D.) Date: Sat, 25 Sep 2010 00:47:54 +0000 (GMT) Subject: [M3commit] CVS Update: cm3 In-Reply-To: Message-ID: <66881.63033.qm@web29716.mail.ird.yahoo.com> Te registers for div by 0 exceptions are shared for both he ALU with the FPU, so you know. That's the actual way of doing better exception handling perhaps this is not supported in it, so maybe I'm wrong, right? Ok. Unfortunately this is not true for a number of other platforms Thanks in advance --- El vie, 24/9/10, Jay K escribi?: > De: Jay K > Asunto: RE: [M3commit] CVS Update: cm3 > Para: "Daniel (M3)" , m3commit at elegosoft.com, "Jay Krell" > Fecha: viernes, 24 de septiembre, 2010 19:17 > > It's not related to exception handling. > It is "decimal floating point". > It is some type that gcc adds to C, at least on some > platforms, that we don't > expose in Modula-3, and I doubt we ever would. > > - Jay > > ---------------------------------------- > > Date: Sat, 25 Sep 2010 00:03:13 +0000 > > From: dabenavidesd at yahoo.es > > To: m3commit at elegosoft.com; > jkrell at elego.de > > Subject: Re: [M3commit] CVS Update: cm3 > > > > Hi all: > > why not, are you sure you want to be ride of the > exception capabilities? Or Do I miss something, don't I? > Perhaps I do. > > Thanks in advance > > > > --- El vie, 24/9/10, Jay Krell escribi?: > > > > > De: Jay Krell > > > Asunto: [M3commit] CVS Update: cm3 > > > Para: m3commit at elegosoft.com > > > Fecha: viernes, 24 de septiembre, 2010 09:29 > > > CVSROOT: /usr/cvs > > > Changes by: > > > jkrell at birch. 10/09/24 14:29:18 > > > > > > Modified files: > > > cm3/m3-sys/m3cc/gcc/gcc/: Makefile.in > > > dfp.c > > > cm3/m3-sys/m3cc/gcc-4.5/gcc/: > > > Makefile.in dfp.c > > > cm3/m3-sys/m3cc/gcc-apple/gcc/: dfp.c > > > Makefile.in > > > cm3/m3-sys/m3cc/src/: m3makefile > > > > > > Log message: > > > don't need libdecnumber > > > > > > > > > > > > > > > > From hosking at elego.de Sat Sep 25 03:43:34 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:43:34 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925014334.F10852474038@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:43:34 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:53:51 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:53:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015351.EF776247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:53:51 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Ops.i3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From hosking at elego.de Sat Sep 25 03:54:53 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 3:54:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925015453.32B5B247401A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 03:54:53 Modified files: cm3/m3-sys/m3middle/src/: M3CG_Check.m3 Log message: Redefine compare_exchange to allow for a better match with the Atomic.CompareSwap semantics, which allows return of the actual value with failure. (cf. Intel x86 cmpxchg) From jkrell at elego.de Sat Sep 25 12:25:07 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 12:25:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925102507.D64F4CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 12:25:07 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Propery fix for getting the current unit name from declare_segment. The problem was that on Darwin I no longer mangle names, since there is no m3gdb to consume the mangled names, so the identifier was M_Main instead of MM_Main. In this revised code, I just strip 2 characters from the unmangled name instead of dealing with the mangled name. This probably costs us an extra heap copy, ok. I also no longer use the anonymous names that do come through here (e.g. L_1 with its first 3 characters removed!) From jay.krell at cornell.edu Sat Sep 25 12:25:59 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:25:59 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: References: <20100925001613.3543E247400D@birch.elegosoft.com>, , <0EB95DD5-9DE2-4F70-A051-5D4942AABB4D@cs.purdue.edu>, , Message-ID: indeed, release: declare_segment ? name = M_Main ? fix_name => MM_Main ? +3 => Main I fixed it, attached. Thanks for the chiding. ?- Jay ---------------------------------------- > From: jay.krell at cornell.edu > To: hosking at cs.purdue.edu; jkrell at elego.de > CC: m3commit at elegosoft.com > Subject: RE: [M3commit] CVS Update: cm3 > Date: Sat, 25 Sep 2010 00:44:57 +0000 > > > To be clear though, what I think I saw was: > > declare_segment(name = "_Main", typeid = NO_UID) > => fix_name > => M_Main > => + 3 > => "ain" > > If those are the parameters to declare_segment, > then the rest seems to follow, in release. But I'll have to check it all. > > - Jay > > ---------------------------------------- > > From: jay.krell at cornell.edu > > To: hosking at cs.purdue.edu; jkrell at elego.de > > Date: Sat, 25 Sep 2010 00:40:18 +0000 > > CC: m3commit at elegosoft.com > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > This must have been a regression! > > > > Ok I'll have to see what the release branch did then. > > Probably not just by reading the code, which I already did a bit. > > Debugging it. > > > > - Jay > > ---------------------------------------- > > > From: hosking at cs.purdue.edu > > > Date: Fri, 24 Sep 2010 20:23:56 -0400 > > > To: jkrell at elego.de > > > CC: m3commit at elegosoft.com > > > Subject: Re: [M3commit] CVS Update: cm3 > > > > > > > > > > > > On 25 Sep 2010, at 02:16, Jay Krell wrote: > > > > > > > CVSROOT: /usr/cvs > > > > Changes by: jkrell at birch. 10/09/25 02:16:13 > > > > > > > > Modified files: > > > > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > > > > > > > Log message: > > > > tighten up some asserts > > > > size and align >= 1, not just >= 0 > > > > er, no, size can be 0, for empty records > > > > or fields of their type, so leave it alone and align >= !!size > > > > > > > > work in progress > > > > types/debugging for enums and typedefs > > > > (when you say TYPE a = {b,c}; > > > > {b,c} is anonymous enum > > > > and a is a typedef/typename for. > > > > consider you can say: > > > > TYPE a = {b,c}; > > > > TYPE a2 = {b,c}; > > > > it is equivalent to typedef enum {b,c} a, a2;) > > > > not yet working, not yet enabled > > > > > > > > don't widen return types > > > > leave the mechanism though because > > > > this might be where we adjust struct vs. struct*, which > > > > is another thing configure -enable-checking complains about, > > > > though that is specific to module initializers I think, > > > > not all functions in general > > > > > > > > set the alignment of bitfields 1 bit, other fields to BITS_PER_UNIT (8 bits) > > > > part of attempted work in progress to generate decent trees > > > > instead of obviously poor ones; aka to actually maybe finish > > > > this backend instead of leaving it very incomplete for years > > > > (not yet enabled) > > > > > > > > Do a better job of skipping the prefix of module/segment names. > > > > M_Main => "Main" instead of "ain". > > > > Instead of always skipping 3, skip up to the first > > > > underscore, if it is at position 0, 1, or 2. > > > > Right? Or did I regress this somewhere since release? > > > > > > This must have been a regression! > > > > > > > > > > > layout_decl(var, 0) > > > > => layout_decl(var, 1) > > > > alignment = 0 is bad, causes divide by zero with plain -g > > > > > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 1.txt URL: From jay.krell at cornell.edu Sat Sep 25 12:28:56 2010 From: jay.krell at cornell.edu (Jay K) Date: Sat, 25 Sep 2010 10:28:56 +0000 Subject: [M3commit] CVS Update: cm3 In-Reply-To: <20100925102507.D64F4CC3AC@birch.elegosoft.com> References: <20100925102507.D64F4CC3AC@birch.elegosoft.com> Message-ID: ? /* do not use "name", it is from alloca; skip the 'I_' or 'M_' prefix. */ ? if (name_length > 2) ? { ??? gcc_assert (name); ??? gcc_assert (name[0] == 'I' || name[0] == 'M'); ??? gcc_assert (name[1] == '_'); ??? gcc_assert (name[2]); ??? current_unit_name = xstrdup (name + 2); ??? current_unit_name_length = name_length - 2; ? } Another approach would be ? current_unit_name = IDENTIFIER_POINTER (DECL_NAME (v)) + 2 + m3gdb; m3gdb is the new boolean I introduced which is false unless gstabs and not Darwin. Which would save the heap alloc. Notice that we always get declare_segment(null) also and it was acting dubiously. ?- Jay ---------------------------------------- > Date: Sat, 25 Sep 2010 12:25:07 +0000 > To: m3commit at elegosoft.com > From: jkrell at elego.de > Subject: [M3commit] CVS Update: cm3 > > CVSROOT: /usr/cvs > Changes by: jkrell at birch. 10/09/25 12:25:07 > > Modified files: > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c > > Log message: > Propery fix for getting the current unit name from declare_segment. > The problem was that on Darwin I no longer mangle names, > since there is no m3gdb to consume the mangled names, > so the identifier was M_Main instead of MM_Main. > > In this revised code, I just strip 2 characters from the > unmangled name instead of dealing with the mangled name. > > This probably costs us an extra heap copy, ok. > > I also no longer use the anonymous names that do > come through here (e.g. L_1 with its first 3 characters removed!) > From jkrell at elego.de Sat Sep 25 13:22:59 2010 From: jkrell at elego.de (Jay Krell) Date: Sat, 25 Sep 2010 13:22:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925112259.28E76CC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/25 13:22:59 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: replace m3_convert with convert m3core seemed to have no real change don't bother "copying" memset/memcpy/memmove/etc, just use #define From hosking at elego.de Sat Sep 25 16:47:01 2010 From: hosking at elego.de (Antony Hosking) Date: Sat, 25 Sep 2010 16:47:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100925144701.B1E8DCC3AC@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: hosking at birch. 10/09/25 16:47:01 Modified files: cm3/m3-libs/m3core/src/: m3makefile Log message: Disable building of atomic until I fix the compiler front-end. From jkrell at elego.de Sun Sep 26 14:28:10 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 14:28:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926122811.0A2B62474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 14:28:10 Modified files: cm3/scripts/python/: pylib.py Log message: fix I386_NT boot support (filter out m3cc and restore copying the *.io and *.mo files) From jkrell at elego.de Sun Sep 26 15:48:45 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:48:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926134845.A95CE2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:48:45 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: Makefile.am Makefile.in acinclude.m4 aclocal.m4 configure configure.in gmp-h.in gmp-impl.h longlong.h cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc/gmp/mpz/: Makefile.am Makefile.in cm3/m3-sys/m3cc/gcc-4.5/: Makefile.def Makefile.in configure configure.ac cm3/m3-sys/m3cc/gcc-4.5/gcc/: Makefile.in builtins.c fold-const.c lto-compress.c real.c real.h toplev.c tree-ssa-ccp.c cm3/m3-sys/m3cc/src/: m3makefile Removed files: cm3/m3-sys/m3cc/gcc/gmp/: compat.c extract-dbl.c gen-fac_ui.c gen-fib.c gen-psqr.c gmpxx.h invalid.c libmp.sym mp-h.in mp_dv_tab.c mp_get_fns.c mp_minv_tab.c mp_set_fns.c rand.c randbui.c randclr.c randdef.c randiset.c randlc2s.c randlc2x.c randmt.c randmt.h randmts.c randmui.c rands.c randsd.c randsdui.c tal-debug.c tal-notreent.c cm3/m3-sys/m3cc/gcc/gmp/cxx/: Makefile.am Makefile.in dummy.cc isfuns.cc ismpf.cc ismpq.cc ismpz.cc ismpznw.cc osdoprnti.cc osfuns.cc osmpf.cc osmpq.cc osmpz.cc cm3/m3-sys/m3cc/gcc/gmp/demos/: Makefile.am Makefile.in factorize.c isprime.c pexpr-config-h.in pexpr.c primes.c qcn.c cm3/m3-sys/m3cc/gcc/gmp/demos/calc/: Makefile.am Makefile.in README calc-common.h calc-config-h.in calc.c calc.h calc.y calclex.c calclex.l calcread.c cm3/m3-sys/m3cc/gcc/gmp/demos/expr/: Makefile.am Makefile.in README expr-impl.h expr.c expr.h exprf.c exprfa.c exprq.c exprqa.c exprv.c exprz.c exprza.c run-expr.c t-expr.c cm3/m3-sys/m3cc/gcc/gmp/demos/perl/: GMP.pm GMP.xs INSTALL Makefile.PL sample.pl test.pl test2.pl typemap cm3/m3-sys/m3cc/gcc/gmp/demos/perl/GMP/: Mpf.pm Mpq.pm Mpz.pm Rand.pm cm3/m3-sys/m3cc/gcc/gmp/doc/: Makefile.am Makefile.in configuration fdl.texi gmp.info gmp.info-1 gmp.info-2 gmp.texi isa_abi_headache mdate-sh projects.html stamp-vti tasks.html texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/gmp/macos/: Makefile.in README configure unix2mac cm3/m3-sys/m3cc/gcc/gmp/mpbsd/: Makefile.am Makefile.in itom.c mfree.c min.c mout.c mtox.c rpow.c sdiv.c xtom.c cm3/m3-sys/m3cc/gcc/gmp/mpf/: Makefile.am Makefile.in abs.c add.c add_ui.c ceilfloor.c clear.c cmp.c cmp_d.c cmp_si.c cmp_ui.c div.c div_2exp.c div_ui.c dump.c eq.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_ulong.c fits_ushort.c get_d.c get_d_2exp.c get_dfl_prec.c get_prc.c get_si.c get_str.c get_ui.c init.c init2.c inp_str.c int_p.c iset.c iset_d.c iset_si.c iset_str.c iset_ui.c mul.c mul_2exp.c mul_ui.c neg.c out_str.c pow_ui.c random2.c reldiff.c set.c set_d.c set_dfl_prec.c set_prc.c set_prc_raw.c set_q.c set_si.c set_str.c set_ui.c set_z.c size.c sqrt.c sqrt_ui.c sub.c sub_ui.c swap.c trunc.c ui_div.c ui_sub.c urandomb.c cm3/m3-sys/m3cc/gcc/gmp/mpn/: Makeasm.am asm-defs.m4 cpp-ccas m4-ccas cm3/m3-sys/m3cc/gcc/gmp/mpn/a29k/: add_n.s addmul_1.s lshift.s mul_1.s rshift.s sub_n.s submul_1.s udiv.s umul.s cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/: README add_n.asm addmul_1.asm alpha-defs.m4 aorslsh1_n.asm cntlz.asm copyd.asm copyi.asm default.m4 dive_1.c diveby3.asm gmp-mparam.h invert_limb.asm lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm unicos.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev5/: add_n.asm com_n.asm gmp-mparam.h lshift.asm rshift.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/: add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm slot.pl sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev6/nails/: README addmul_1.asm addmul_2.asm addmul_3.asm addmul_4.asm aors_n.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/alpha/ev67/: gcd_1.asm hamdist.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/arm/: add_n.asm addmul_1.asm arm-defs.m4 copyd.asm copyi.asm gmp-mparam.h invert_limb.asm mul_1.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/clipper/: add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/: README add_n.c gmp-mparam.h hamdist.c lshift.c mulww.f popcount.c rshift.c sub_n.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/cfp/: addmul_1.c mul_1.c mulwwc90.s mulwwj90.s submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/cray/ieee/: addmul_1.c gmp-mparam.h invert_limb.c mul_1.c mul_basecase.c sqr_basecase.c submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/generic/: add.c add_1.c addsub_n.c bdivmod.c cmp.c dive_1.c divis.c divrem.c dump.c fib2_ui.c gcd.c gcd_1.c gcdext.c get_d.c jacbase.c mod_1.c mod_34lsub1.c mode1o.c mullow_basecase.c mullow_n.c perfsqr.c popham.c pow_1.c pre_mod_1.c random.c random2.c rootrem.c scan0.c scan1.c set_str.c sizeinbase.c sqrtrem.c sub.c sub_1.c udiv_w_sdiv.c cm3/m3-sys/m3cc/gcc/gmp/mpn/i960/: README add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/ia64/: README add_n.asm addmul_1.asm copyd.asm copyi.asm gcd_1.asm gmp-mparam.h ia64-defs.m4 invert_limb.asm lorrshift.asm mode1o.asm mul_1.asm popcount.asm sub_n.asm submul_1.c cm3/m3-sys/m3cc/gcc/gmp/mpn/lisp/: gmpasm-mode.el cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/: README aors_n.asm gmp-mparam.h lshift.asm m68k-defs.m4 rshift.asm t-m68k-defs.pl cm3/m3-sys/m3cc/gcc/gmp/mpn/m68k/mc68020/: aorsmul_1.asm mul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/: README add_n.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/m88k/mc88110/: add_n.S addmul_1.s mul_1.s sub_n.S cm3/m3-sys/m3cc/gcc/gmp/mpn/mips32/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mips-defs.m4 mips.m4 mul_1.asm rshift.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/mips64/: README add_n.asm addmul_1.asm divrem_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/ns32k/: add_n.s addmul_1.s mul_1.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/: README add_n.asm gmp-mparam.h lshift.asm pa-defs.m4 rshift.asm sub_n.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/: addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa1_1/pa7100/: add_n.asm addmul_1.asm lshift.asm rshift.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa32/hppa2_0/: add_n.asm gmp-mparam.h sqr_diagonal.asm sub_n.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pa64/: README add_n.asm addmul_1.asm aorslsh1_n.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/power/: add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sdiv.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/: README add_n.asm addlsh1_n.asm addmul_1.asm aix.m4 darwin.m4 diveby3.asm eabi.m4 elf.m4 gmp-mparam.h lshift.asm mod_34lsub1.asm mode1o.asm mul_1.asm powerpc-defs.m4 rshift.asm sqr_diagonal.asm sub_n.asm sublsh1_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/750/: com_n.asm gmp-mparam.h lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc32/vmx/: copyd.asm copyi.asm logops_n.asm popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/: README aix.m4 copyd.asm copyi.asm darwin.m4 elf.m4 gmp-mparam.h lshift.asm rshift.asm sqr_diagonal.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode32/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/mode64/: add_n.asm addmul_1.asm mul_1.asm sub_n.asm submul_1.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/powerpc64/vmx/: popcount.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/pyr/: add_n.s addmul_1.s mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/s390/: README addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sh/sh2/: addmul_1.s mul_1.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mul_1.asm rshift.asm sparc-defs.m4 sub_n.asm submul_1.asm udiv.asm udiv_nfp.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/: addmul_1.asm gmp-mparam.h mul_1.asm submul_1.asm udiv.asm umul.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v8/supersparc/: gmp-mparam.h udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc32/v9/: README add_n.asm addmul_1.asm gmp-mparam.h mul_1.asm sqr_diagonal.asm sub_n.asm submul_1.asm udiv.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/sparc64/: README add_n.asm addmul_1.asm addmul_2.asm copyd.asm copyi.asm dive_1.c divrem_1.c gmp-mparam.h lshift.asm mod_1.c mode1o.c mul_1.asm rshift.asm sparc64.h sqr_diagonal.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/thumb/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/vax/: add_n.s addmul_1.s gmp-mparam.h lshift.s mul_1.s rshift.s sub_n.s submul_1.s cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/: README aors_n.asm aorsmul_1.asm copyd.asm copyi.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h lshift.asm mod_1.asm mod_34lsub1.asm mul_1.asm mul_basecase.asm rshift.asm sqr_basecase.asm t-zdisp.sh t-zdisp2.pl udiv.asm umul.asm x86-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/fat/: fat.c fat_entry.asm gcd_1.c gmp-mparam.h mode1o.c cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/i486/: gmp-mparam.h cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/: README aors_n.asm aorsmul_1.asm cross.pl diveby3.asm divrem_1.asm gcd_1.asm gcd_finda.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm pre_mod_1.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/k62mmx/: copyd.asm lshift.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k6/mmx/: com_n.asm dive_1.asm logops_n.asm lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/: README aors_n.asm aorsmul_1.asm dive_1.asm diveby3.asm gcd_1.asm gmp-mparam.h mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/k7/mmx/: com_n.asm copyd.asm copyi.asm divrem_1.asm lshift.asm mod_1.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/: README aors_n.asm aorsmul_1.asm copyd.asm dive_1.asm diveby3.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_basecase.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/mmx/: divrem_1.asm gmp-mparam.h lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/p6/p3mmx/: popham.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/: README aors_n.asm aorsmul_1.asm com_n.asm copyd.asm copyi.asm dive_1.asm diveby3.asm gmp-mparam.h hamdist.asm logops_n.asm lshift.asm mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_2.asm mul_basecase.asm popcount.asm rshift.asm sqr_basecase.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium/mmx/: gmp-mparam.h hamdist.asm lshift.asm mul_1.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/: README copyd.asm copyi.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/mmx/: lshift.asm popham.asm rshift.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86/pentium4/sse2/: add_n.asm addlsh1_n.asm addmul_1.asm dive_1.asm diveby3.asm divrem_1.asm gmp-mparam.h mod_1.asm mod_34lsub1.asm mode1o.asm mul_1.asm mul_basecase.asm rsh1add_n.asm sqr_basecase.asm sub_n.asm submul_1.asm cm3/m3-sys/m3cc/gcc/gmp/mpn/x86_64/: README add_n.asm addmul_1.asm gmp-mparam.h lshift.asm mode1o.asm mul_1.asm rshift.asm sub_n.asm submul_1.asm x86_64-defs.m4 cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000/: README add_n.s gmp-mparam.h mul_1.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpn/z8000x/: add_n.s sub_n.s cm3/m3-sys/m3cc/gcc/gmp/mpq/: Makefile.am Makefile.in abs.c aors.c canonicalize.c clear.c cmp.c cmp_si.c cmp_ui.c div.c equal.c get_d.c get_den.c get_num.c get_str.c init.c inp_str.c inv.c md_2exp.c mul.c neg.c out_str.c set.c set_d.c set_den.c set_f.c set_num.c set_si.c set_str.c set_ui.c set_z.c swap.c cm3/m3-sys/m3cc/gcc/gmp/mpz/: abs.c and.c aorsmul.c aorsmul_i.c array_init.c bin_ui.c bin_uiui.c cdiv_q.c cdiv_q_ui.c cdiv_qr.c cdiv_qr_ui.c cdiv_r.c cdiv_r_ui.c cdiv_ui.c cfdiv_q_2exp.c cfdiv_r_2exp.c clrbit.c cmp_d.c cmp_si.c cmp_ui.c cmpabs.c cmpabs_d.c cmpabs_ui.c com.c combit.c cong.c cong_2exp.c cong_ui.c dive_ui.c divegcd.c divexact.c divis.c divis_2exp.c divis_ui.c dump.c fac_ui.c fdiv_q_ui.c fdiv_qr.c fdiv_qr_ui.c fdiv_r.c fdiv_r_ui.c fdiv_ui.c fib2_ui.c fib_ui.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_uint.c fits_ulong.c fits_ushort.c gcd.c gcd_ui.c gcdext.c get_d.c get_d_2exp.c get_si.c get_str.c get_ui.c getlimbn.c hamdist.c init2.c inp_raw.c inp_str.c invert.c ior.c iset_d.c iset_si.c iset_str.c iset_ui.c jacobi.c kronsz.c kronuz.c kronzs.c kronzu.c lcm.c lcm_ui.c lucnum2_ui.c lucnum_ui.c millerrabin.c mod.c mul.c mul_2exp.c mul_i.h mul_si.c mul_ui.c n_pow_ui.c nextprime.c out_raw.c perfpow.c perfsqr.c popcount.c pow_ui.c powm.c powm_ui.c pprime_p.c random.c random2.c realloc2.c remove.c root.c rootrem.c rrandomb.c scan0.c scan1.c set_d.c set_f.c set_q.c set_si.c set_str.c setbit.c size.c sqrt.c sqrtrem.c tdiv_q.c tdiv_q_2exp.c tdiv_q_ui.c tdiv_qr_ui.c tdiv_r.c tdiv_r_2exp.c tdiv_r_ui.c tdiv_ui.c tstbit.c ui_pow_ui.c ui_sub.c urandomb.c urandomm.c xor.c cm3/m3-sys/m3cc/gcc/gmp/printf/: Makefile.am Makefile.in asprintf.c asprntffuns.c doprnt.c doprntf.c doprnti.c fprintf.c obprintf.c obprntffuns.c obvprintf.c printf.c printffuns.c repl-vsnprintf.c snprintf.c snprntffuns.c sprintf.c sprintffuns.c vasprintf.c vfprintf.c vprintf.c vsnprintf.c vsprintf.c cm3/m3-sys/m3cc/gcc/gmp/scanf/: Makefile.am Makefile.in doscan.c fscanf.c fscanffuns.c scanf.c sscanf.c sscanffuns.c vfscanf.c vscanf.c vsscanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/: Makefile.am Makefile.in amd64call.asm amd64check.c memory.c misc.c refmpf.c refmpn.c refmpq.c refmpz.c spinner.c t-bswap.c t-constants.c t-count_zeros.c t-gmpmax.c t-hightomask.c t-modlinv.c t-parity.c t-popc.c t-sub.c tests.h trace.c x86call.asm x86check.c cm3/m3-sys/m3cc/gcc/gmp/tests/cxx/: Makefile.am Makefile.in clocale.c t-assign.cc t-binary.cc t-cast.cc t-constr.cc t-headers.cc t-istream.cc t-locale.cc t-misc.cc t-ops.cc t-ostream.cc t-prec.cc t-rand.cc t-ternary.cc t-unary.cc cm3/m3-sys/m3cc/gcc/gmp/tests/devel/: Makefile.am Makefile.in README addmul_N.c anymul_1.c aors_n.c copy.c divmod_1.c divrem.c logops_n.c mul_N.c shift.c try.c cm3/m3-sys/m3cc/gcc/gmp/tests/misc/: Makefile.am Makefile.in t-locale.c t-printf.c t-scanf.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpbsd/: Makefile.am Makefile.in allfuns.c t-itom.c t-mtox.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpf/: Makefile.am Makefile.in reuse.c t-add.c t-cmp_d.c t-cmp_si.c t-conv.c t-div.c t-dm2exp.c t-fits.c t-get_d.c t-get_d_2exp.c t-get_si.c t-get_ui.c t-gsprec.c t-inp_str.c t-int_p.c t-mul_ui.c t-muldiv.c t-set.c t-set_q.c t-set_si.c t-set_ui.c t-sqrt.c t-sqrt_ui.c t-sub.c t-trunc.c t-ui_div.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpn/: Makefile.am Makefile.in t-aors_1.c t-asmtype.c t-divrem_1.c t-fat.c t-get_d.c t-instrument.c t-iord_u.c t-mp_bases.c t-perfsqr.c t-scan.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpq/: Makefile.am Makefile.in t-aors.c t-cmp.c t-cmp_si.c t-cmp_ui.c t-equal.c t-get_d.c t-get_str.c t-inp_str.c t-md_2exp.c t-set_f.c t-set_str.c cm3/m3-sys/m3cc/gcc/gmp/tests/mpz/: Makefile.am Makefile.in bit.c convert.c dive.c dive_ui.c io.c logic.c reuse.c t-addsub.c t-aorsmul.c t-bin.c t-cdiv_ui.c t-cmp.c t-cmp_d.c t-cmp_si.c t-cong.c t-cong_2exp.c t-div_2exp.c t-divis.c t-divis_2exp.c t-export.c t-fac_ui.c t-fdiv.c t-fdiv_ui.c t-fib_ui.c t-fits.c t-gcd.c t-gcd_ui.c t-get_d.c t-get_d_2exp.c t-get_si.c t-hamdist.c t-import.c t-inp_str.c t-io_raw.c t-jac.c t-lcm.c t-lucnum_ui.c t-mul.c t-mul_i.c t-oddeven.c t-perfsqr.c t-popcount.c t-pow.c t-powm.c t-powm_ui.c t-pprime_p.c t-root.c t-scan.c t-set_d.c t-set_f.c t-set_si.c t-set_str.c t-sizeinbase.c t-sqrtrem.c t-tdiv.c t-tdiv_ui.c cm3/m3-sys/m3cc/gcc/gmp/tests/rand/: Makefile.am Makefile.in findlc.c gen.c gmpstat.h spect.c stat.c statlib.c t-iset.c t-lc2exp.c t-mt.c t-rand.c t-urbui.c t-urmui.c t-urndmm.c zdiv_round.c cm3/m3-sys/m3cc/gcc/gmp/tune/: Makefile.am Makefile.in README alpha.asm common.c divrem1div.c divrem1inv.c divrem2div.c divrem2inv.c freq.c gcd_bin.c gcd_finda_gen.c gcdext_double.c gcdext_single.c gcdextod.c gcdextos.c hppa.asm hppa2.asm hppa2w.asm ia64.asm jacbase1.c jacbase2.c jacbase3.c many.pl mod_1_div.c mod_1_inv.c modlinv.c noop.c pentium.asm powerpc.asm powerpc64.asm powm_mod.c powm_redc.c pre_divrem_1.c sb_div.c sb_inv.c set_strb.c set_strs.c sparcv9.asm speed-ext.c speed.c speed.h time.c tuneup.c x86_64.asm cm3/m3-sys/m3cc/gcc/mpc/: AUTHORS COPYING.LIB ChangeLog INSTALL Makefile.am Makefile.in Makefile.vc NEWS README TODO acinclude.m4 aclocal.m4 config.guess config.h.in config.sub configure configure.ac depcomp install-sh ltmain.sh missing cm3/m3-sys/m3cc/gcc/mpc/doc/: Makefile.am Makefile.in mdate-sh mpc.texi stamp-vti texinfo.tex version.texi cm3/m3-sys/m3cc/gcc/mpc/src/: Makefile.am Makefile.in abs.c acos.c acosh.c add.c add_fr.c add_ui.c arg.c asin.c asinh.c atan.c atanh.c clear.c cmp.c cmp_si_si.c conj.c cos.c cosh.c div.c div_2exp.c div_fr.c div_ui.c exp.c fr_div.c fr_sub.c get_prec.c get_prec2.c get_str.c get_version.c imag.c init2.c init3.c inp_str.c log.c mem.c mpc-impl.h mpc.h mul.c mul_2exp.c mul_fr.c mul_i.c mul_si.c mul_ui.c neg.c norm.c out_str.c pow.c pow_d.c pow_fr.c pow_ld.c pow_si.c pow_ui.c pow_z.c proj.c real.c set.c set_prec.c set_str.c set_x.c set_x_x.c sin.c sinh.c sqr.c sqrt.c strtoc.c sub.c sub_fr.c sub_ui.c swap.c tan.c tanh.c uceil_log2.c ui_div.c ui_ui_sub.c urandom.c cm3/m3-sys/m3cc/gcc/mpc/tests/: Makefile.am Makefile.in abs.dat acos.dat acosh.dat add.dat add_fr.dat arg.dat asin.dat asinh.dat atan.dat atanh.dat comparisons.c conj.dat cos.dat cosh.dat div.dat div_fr.dat exp.dat fr_div.dat fr_sub.dat inp_str.dat log.dat memory.c mpc-tests.h mul.dat mul_fr.dat neg.dat norm.dat pow.dat proj.dat random.c read_data.c sin.dat sinh.dat sqr.dat sqrt.dat strtoc.dat sub.dat sub_fr.dat tabs.c tacos.c tacosh.c tadd.c tadd_fr.c tadd_ui.c tan.dat tanh.dat targ.c tasin.c tasinh.c tatan.c tatanh.c tconj.c tcos.c tcosh.c tdiv.c tdiv_2exp.c tdiv_fr.c tdiv_ui.c texp.c tfr_div.c tfr_sub.c tgeneric.c tget_version.c timag.c tio_str.c tlog.c tmul.c tmul_2exp.c tmul_fr.c tmul_i.c tmul_si.c tmul_ui.c tneg.c tnorm.c tpow.c tpow_d.c tpow_fr.c tpow_ld.c tpow_si.c tpow_ui.c tpow_z.c tprec.c tproj.c treal.c treimref.c tset.c tsin.c tsinh.c tsqr.c tsqrt.c tstrtoc.c tsub.c tsub_fr.c tsub_ui.c ttan.c ttanh.c tui_div.c tui_ui_sub.c cm3/m3-sys/m3cc/gcc-4.5/libcpp/po/: ChangeLog be.gmo ca.gmo cpplib.pot da.gmo de.gmo el.gmo es.gmo fi.gmo fi.po fr.gmo id.gmo ja.gmo nl.gmo sv.gmo tr.gmo uk.gmo vi.gmo zh_CN.gmo zh_TW.gmo cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/: decBasic.c decCommon.c decContext.c decDouble.c decExcept.c decLibrary.c decNumber.c decPacked.c decQuad.c decRound.c decSingle.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/bid/: bid2dpd_dpd2bid.c decimal128.c decimal32.c decimal64.c host-ieee128.c host-ieee32.c host-ieee64.c cm3/m3-sys/m3cc/gcc-4.5/libdecnumber/dpd/: decimal128.c decimal32.c decimal64.c cm3/m3-sys/m3cc/gcc-4.5/zlib/: adler32.c compress.c crc32.c deflate.c example.c gzio.c infback.c inffast.c inflate.c inftrees.c minigzip.c trees.c uncompr.c zutil.c Log message: mpc is only for complex numbers useless to us change the gcc code to not reference mpc mpfr is entirely or almost entirely for implementing "builtin" functions, like sin/cos, etc. also useless to us change the gcc code to not reference mpfr Only a small amount of gmp is used. In particular, the following are not used: *rand*, mpbsd, mpf (float), mpq (rational), printf, scanf, none of the assembly code So drastically trim gmp. While at it, also remove the zlib dependency that we don't use. It is for compressing LTO objects. We don't make those. And trim libdecnumber. Trim configure options in gmp, like how to allocate, building shared, asserts, etc. Todo: look into the "dumbmp.c" subset. dumbmp.c is an existant file in gmp used by the "generator" programs, with a simple portable subset of gmp. From jkrell at elego.de Sun Sep 26 15:55:00 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135500.150A32474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:55:00 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h gmp-h.in Log message: go back a version From jkrell at elego.de Sun Sep 26 15:56:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 15:56:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926135638.E08B72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 15:56:38 Modified files: cm3/m3-sys/m3cc/gcc/gmp/: gmp-impl.h Log message: remove #include fib_table.h again (very late edits weren't tested, but the vast vast majority was) From jkrell at elego.de Sun Sep 26 16:02:02 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140202.D21CB2474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:02 Removed files: cm3/m3-sys/m3cc/gcc/mpc/doc/: mpc.info cm3/m3-sys/m3cc/gcc/mpfr/: AUTHORS BUGS COPYING COPYING.LIB ChangeLog FAQ.html INSTALL Makefile.am Makefile.in NEWS PATCHES README TODO VERSION abort_prec_max.c acinclude.m4 aclocal.m4 acos.c acosh.c add.c add1.c add1sp.c add_ui.c agm.c ansi2knr.1 ansi2knr.c asin.c asinh.c atan.c atan2.c atanh.c cache.c cbrt.c check.c clear.c clears.c cmp.c cmp2.c cmp_abs.c cmp_d.c cmp_ld.c cmp_si.c cmp_ui.c comparisons.c config.guess config.sub configure configure.in const_catalan.c const_euler.c const_log2.c const_pi.c constant.c copysign.c cos.c cosh.c cot.c coth.c csc.c csch.c depcomp dim.c div.c div_2exp.c div_2si.c div_2ui.c div_ui.c dump.c eint.c eq.c erf.c erfc.c exceptions.c exp.c exp10.c exp2.c exp3.c exp_2.c expm1.c extract.c factorial.c fdl.texi fits_intmax.c fits_s.h fits_sint.c fits_slong.c fits_sshort.c fits_u.h fits_uint.c fits_uintmax.c fits_ulong.c fits_ushort.c fma.c fms.c frac.c free_cache.c gamma.c gen_inverse.h generic.c get_d.c get_d64.c get_exp.c get_f.c get_ld.c get_patches.c get_patches.sh get_si.c get_sj.c get_str.c get_ui.c get_uj.c get_z.c get_z_exp.c gmp_op.c hypot.c init.c init2.c inits.c inits2.c inp_str.c install-sh int_ceil_log2.c isinf.c isinteger.c isnan.c isnum.c isqrt.c iszero.c jn.c jyn_asympt.c lngamma.c log.c log10.c log1p.c log2.c logging.c ltmain.sh minmax.c missing mp_clz_tab.c mparam_h.in mpf2mpfr.h mpfr-gmp.c mpfr-gmp.h mpfr-impl.h mpfr-longlong.h mpfr-thread.h mpfr.h mpfr.info mpfr.texi mpn_exp.c mul.c mul_2exp.c mul_2si.c mul_2ui.c mul_ui.c mulders.c neg.c next.c out_str.c pow.c pow_si.c pow_ui.c pow_z.c powerof2.c print_raw.c print_rnd_mode.c random.c random2.c reldiff.c remquo.c rint.c root.c round_near_x.c round_p.c round_prec.c round_raw_generic.c sec.c sech.c set.c set_d.c set_d64.c set_dfl_prec.c set_exp.c set_f.c set_inf.c set_ld.c set_nan.c set_prc_raw.c set_prec.c set_q.c set_rnd.c set_si.c set_si_2exp.c set_sj.c set_str.c set_str_raw.c set_ui.c set_ui_2exp.c set_uj.c set_z.c setmax.c setmin.c setsign.c sgn.c si_op.c signbit.c sin.c sin_cos.c sinh.c sqr.c sqrt.c sqrt_ui.c stack_interface.c strtofr.c sub.c sub1.c sub1sp.c sub_ui.c subnormal.c sum.c swap.c tan.c tanh.c texinfo.tex tuneup.c uceil_exp2.c uceil_log2.c ufloor_log2.c ui_div.c ui_pow.c ui_pow_ui.c ui_sub.c urandomb.c version.c volatile.c yn.c zeta.c zeta_ui.c cm3/m3-sys/m3cc/gcc/mpfr/tests/: Makefile.am Makefile.in cmp_str.c inp_str.data memory.c mpf_compat.c mpf_compat.h mpfr-test.h mpfr_compat.c reuse.c rnd_mode.c tabs.c tacos.c tacosh.c tadd.c tadd1sp.c tadd_ui.c tagm.c tasin.c tasinh.c tatan.c tatanh.c tcan_round.c tcbrt.c tcheck.c tcmp.c tcmp2.c tcmp_d.c tcmp_ld.c tcmp_ui.c tcmpabs.c tcomparisons.c tconst_catalan.c tconst_euler.c tconst_log2.c tconst_pi.c tcopysign.c tcos.c tcosh.c tcot.c tcoth.c tcsc.c tcsch.c tdim.c tdiv.c tdiv_ui.c teint.c teq.c terf.c tests.c texceptions.c texp.c texp10.c texp2.c texpm1.c tfactorial.c tfits.c tfma.c tfms.c tfrac.c tgamma.c tgeneric.c tgeneric_ui.c tget_d.c tget_d_2exp.c tget_f.c tget_ld_2exp.c tget_set_d64.c tget_sj.c tget_str.c tget_z.c tgmpop.c thyperbolic.c thypot.c tinits.c tinp_str.c tinternals.c tisnan.c tisqrt.c tj0.c tj1.c tjn.c tl2b.c tlgamma.c tlngamma.c tlog.c tlog10.c tlog1p.c tlog2.c tminmax.c tmul.c tmul_2exp.c tmul_ui.c tnext.c tout_str.c toutimpl.c tpow.c tpow3.c tpow_all.c tpow_z.c trandom.c tremquo.c trint.c troot.c tround_prec.c tsec.c tsech.c tset.c tset_d.c tset_exp.c tset_f.c tset_ld.c tset_q.c tset_si.c tset_sj.c tset_str.c tset_z.c tsgn.c tsi_op.c tsin.c tsin_cos.c tsinh.c tsqr.c tsqrt.c tsqrt_ui.c tstckintc.c tstrtofr.c tsub.c tsub1sp.c tsub_ui.c tsubnormal.c tsum.c tswap.c ttan.c ttanh.c ttrunc.c tui_div.c tui_pow.c tui_sub.c tversion.c ty0.c ty1.c tyn.c tzeta.c tzeta_ui.c Log message: forgotten deletes From jkrell at elego.de Sun Sep 26 16:02:24 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:02:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926140224.C60472474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:02:24 Modified files: cm3/m3-sys/m3cc/src/: clean_marker.txt Log message: trigger clean build From jkrell at elego.de Sun Sep 26 16:35:15 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:35:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926143516.082752474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:35:15 Modified files: cm3/m3-sys/m3cc/gcc/: configure configure.ac cm3/m3-sys/m3cc/gcc/gcc/: builtins.c real.c real.h toplev.c Log message: remove mpfr dependency from 4.3 as well, and it successfully links with the reduce gmp From jkrell at elego.de Sun Sep 26 16:48:03 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:48:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926144804.062692474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:48:03 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: tree-ssa-ccp.c Log message: Go back a version -- preserve builtins for the C compiler. No affect on gmp/mpfr/mpc dependency. From jkrell at elego.de Sun Sep 26 16:52:38 2010 From: jkrell at elego.de (Jay Krell) Date: Sun, 26 Sep 2010 16:52:38 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100926145238.7FEF72474088@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/26 16:52:38 Modified files: cm3/m3-sys/m3cc/gcc-4.5/gcc/: fold-const.c Log message: go back a version, the #define for do_mpc_arg2 should make it equivalent From jkrell at elego.de Tue Sep 28 12:55:07 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105507.D8BF42474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:07 Removed files: cm3/m3-sys/m3gdb/gdb/sim/: Makefile.in README-HACKING configure.ac ChangeLog MAINTAINERS configure cm3/m3-sys/m3gdb/gdb/sim/mips/: Makefile.in m16.dc config.in m16.igen mips3264r2.igen cp1.h vr.igen configure.ac m16run.c interp.c dv-tx3904tmr.c cp1.c tconfig.in acconfig.h dv-tx3904sio.c mdmx.igen tx.igen m16e.igen sim-main.c sim-main.h dv-tx3904cpu.c mips.dc dv-tx3904irc.c ChangeLog mips3d.igen mips.igen sb1.igen configure mdmx.c cm3/m3-sys/m3gdb/gdb/sim/frv/: profile-fr550.c arch.c profile-fr500.c Makefile.in profile-fr500.h frv-sim.h config.in README configure.ac pipeline.c decode.h cache.h TODO traps.c profile-fr450.c tconfig.in options.c cpuall.h profile.c frv.c cache.c cpu.c arch.h sim-main.h profile-fr400.h sem.c mloop.in profile.h registers.h registers.c interrupts.c cpu.h profile-fr550.h profile-fr400.c ChangeLog reset.c configure sim-if.c decode.c model.c devices.c memory.c cm3/m3-sys/m3gdb/gdb/sim/ppc/: psim.h ld-cache.c idecode_branch.h cap.h emul_unix.c emul_netbsd.c Makefile.in altivec_registers.h lf.h emul_bugapi.c pk_disklabel.c ld-decode.c hw_cpu.h idecode_fields.h bits.h aclocal.m4 dc-complex hw_cpu.c BUGS config.in table.h filter_filename.h inline.c gen-icache.h hw_vm.c README INSTALL device_table.c gen-support.h vm.c hw_memory.c gen-model.h filter.c vm_n.h emul_generic.h .gdbinit configure.ac hw_disk.c ld-decode.h e500.igen device_table.h corefile-n.h mon.c debug.h gdb-sim.c tree.h ppc.mt dc-stupid dgen.c sim-endian.h igen.c sim-endian.c filter.h mon.h hw_core.c ppc-spr-table acconfig.h hw_htab.c options.c gen-itable.h idecode_expression.h ppc-instructions os_emul.c emul_bugapi.h hw_com.c dc-test.01 corefile.c dc-simple debug.c hw_glue.c interrupts.h gen-model.c misc.h corefile.h sim_calls.c gen-support.c ld-insn.c events.h ChangeLog.00 words.h gen-idecode.c tree.c cpu.c device.c std-config.h gen-idecode.h hw_trace.c igen.h altivec_expression.h table.c ld-cache.h sim-main.h gen-semantics.c sim-endian-n.h hw_eeprom.c hw_nvram.c COPYING.LIB filter_filename.c bits.c os_emul.h inline.h hw_opic.c cap.c emul_chirp.h hw_phb.c emul_chirp.c hw_init.c registers.h gen-icache.c emul_generic.c registers.c interrupts.c RUN cpu.h emul_netbsd.h ChangeLog main.c hw_register.c hw_iobus.c sim_callbacks.h dc-test.02 events.c gen-semantics.h ld-insn.h configure hw_ide.c lf.c psim.c gen-itable.c double.c misc.c e500_registers.h device.h psim.texinfo dp-bit.c altivec.igen e500_expression.h options.h basics.h hw_phb.h vm.h COPYING hw_pal.c emul_unix.h cm3/m3-sys/m3gdb/gdb/sim/v850/: Makefile.in simops.c config.in configure.ac v850-dc interp.c acconfig.h v850_sim.h sim-main.h ChangeLog v850.igen simops.h configure cm3/m3-sys/m3gdb/gdb/sim/d10v/: Makefile.in simops.c config.in endian.c configure.ac interp.c acconfig.h d10v_sim.h ChangeLog configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/sh/: Makefile.in config.in configure.ac interp.c tconfig.in acconfig.h ChangeLog syscall.h configure gencode.c cm3/m3-sys/m3gdb/gdb/sim/m32r/: arch.c Makefile.in m32r.c traps-linux.c cpux.h config.in README mloop2.in semx-switch.c modelx.c decodex.h model2.c m32r2.c configure.ac decode.h TODO traps.c tconfig.in acconfig.h decodex.c decode2.c cpuall.h decode2.h cpux.c cpu.c arch.h m32rx.c sim-main.h sem2-switch.c cpu2.c sem.c mloop.in cpu.h ChangeLog syscall.h configure sim-if.c decode.c model.c mloopx.in cpu2.h sem-switch.c devices.c m32r-sim.h cm3/m3-sys/m3gdb/gdb/sim/mn10300/: Makefile.in config.in dv-mn103int.c configure.ac interp.c tconfig.in acconfig.h op_utils.c am33-2.igen sim-main.c sim-main.h mn10300_sim.h dv-mn103tim.c dv-mn103ser.c ChangeLog dv-mn103iop.c am33.igen configure dv-mn103cpu.c mn10300.dc mn10300.igen cm3/m3-sys/m3gdb/gdb/sim/common/: cgen-trace.h sim-utils.h sim-utils.c Makefile.in sim-base.h hw-alloc.c sim-run.c sim-module.c cgen-par.h hw-properties.h sim-events.c sim-config.h hw-alloc.h sim-bits.c aclocal.m4 cgen-scache.h sim-info.c config.in cgen-scache.c sim-bits.h hw-handles.h sim-module.h cgen-utils.c hw-properties.c sim-load.c sim-io.c gentvals.sh sim-reg.c dv-core.c hw-instances.h nltvals.def callback.c configure.ac cgen-trace.c hw-tree.c sim-options.h sim-n-core.h gdbinit.in cgen-fpu.c Make-common.in hw-base.c sim-inline.c hw-events.h sim-endian.h sim-core.h sim-endian.c cgen.sh sim-watch.h tconfig.in acconfig.h sim-hload.c sim-trace.c sim-hrw.c sim-signal.h sim-reason.c sim-memopt.c sim-assert.h sim-abort.c sim-profile.h sim-cpu.h cgen-run.c sim-profile.c genmloop.sh cgen-sim.h sim-cpu.c sim-alu.h sim-options.c sim-model.h sim-model.c sim-inline.h run.1 cgen-fpu.h hw-device.h sim-stop.c gennltvals.sh sim-config.c dv-pal.c sim-engine.c cgen-types.h cgen-par.c gentmap.c sim-n-bits.h run-sim.h hw-ports.h cgen-cpu.h sim-signal.c dv-sockser.h sim-events.h cgen-engine.h sim-arange.h hw-instances.c cgen-ops.h sim-memopt.h ChangeLog sim-types.h nrun.c cgen-mem.h dv-sockser.c sim-hw.c sim-basics.h sim-fpu.c hw-ports.c sim-engine.h sim-trace.h sim-hw.h configure hw-handles.c sim-n-endian.h sim-resume.c hw-base.h hw-tree.h common.m4 syscall.c hw-main.h dv-glue.c sim-core.c hw-events.c hw-device.c sim-watch.c cgen-defs.h run.c sim-io.h cgen-accfp.c sim-arange.c sim-fpu.h cm3/m3-sys/m3gdb/gdb/sim/mcore/: Makefile.in config.in configure.ac interp.c sysdep.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/cris/: arch.c Makefile.in cris-opc.h modelv32.c crisv32f.c config.in semcrisv32f-switch.c cris-desc.c cris-desc.h configure.ac decodev32.c traps.c crisv10f.c tconfig.in decodev32.h cpuall.h cpuv10.h cpuv32.h decodev10.h arch.h sim-main.h mloop.in cpuv32.c semcrisv10f-switch.c cpuv10.c configure sim-if.c cris-tmpl.c modelv10.c decodev10.c devices.c cris-sim.h cm3/m3-sys/m3gdb/gdb/sim/h8300/: inst.h Makefile.in compile.c config.in configure.ac tconfig.in acconfig.h writecode.c sim-main.h ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/d10v-elf/: t-ae-st-i.s t-ae-st-d.s t-ae-ld2w-id.s Makefile.in t-ae-ld-id.s t-ld-st.s t-rac.s t-sub2w.s t-rdt.s t-ae-st2w-d.s t-macros.i t-ae-ld2w-ip.s loop.s t-subi.s t-slae.s t-mulxu.s configure.ac t-rep.s t-ae-ld2w-im.s t-mac.s t-mvtc.s t-ae-ld2w-i.s t-msbu.s t-sac.s t-dbt.s t-ae-st2w-id.s hello.s t-ae-st-is.s t-rie-xx.s t-sub.s t-ae-ld-i.s t-ae-ld2w-d.s t-mvtac.s t-mod-ld-pre.s t-ae-st-id.s t-trap.s t-ae-ld-im.s t-ae-st-ip.s t-rte.s t-ae-st-im.s t-sachi.s t-sp.s t-ae-ld-ip.s t-ae-ld-d.s ChangeLog t-rachi.s exit47.s configure t-ae-st2w-i.s t-ae-st2w-is.s t-ae-st2w-ip.s t-ae-st2w-im.s t-sadd.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/lib/: sim-defs.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/m32r-elf/: Makefile.in loop.s configure.ac hello.s ChangeLog exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/mips/: mdmx-ob.s testutils.inc fpu64-ps-sb1.s utils-mdmx.inc fpu64-ps.s hilo-hazard-1.s hilo-hazard-2.s utils-fpu.inc basic.exp sanity.s hilo-hazard-3.s mdmx-ob-sb1.s ChangeLog cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/: cldsh.cgs bclslr.cgs fcku.cgs mcutss.cgs mqsllhi.cgs ldi.cgs bgelr.cgs nandcr.cgs umulicc.cgs cor.cgs nfadds.cgs fdmovs.cgs fcbolr.cgs cmmulhs.cgs orncr.cgs ftino.cgs cfckle.cgs clrfr.cgs cldhfu.cgs teq.cgs cmcpxiu.cgs scani.cgs commitfr.cgs stf.cgs nfdcmps.cgs csth.cgs setlos.cgs ftug.cgs jmpl.pcgs swapi.cgs stqc.cgs ftiu.cgs csthf.cgs corcc.cgs nlduhu.cgs stbfu.cgs stc.cgs tils.cgs ldfu.cgs fcbuelr.cgs cfmas.cgs fmsubd.cgs bcnclr.cgs cstdf.cgs mmulxhu.cgs mcmpuh.cgs fcbugelr.cgs bno.cgs cadd.cgs scan.cgs bra.cgs stqf.cgs ftiug.cgs testutils.inc fbuglr.cgs fcbulelr.cgs stfi.cgs ldqi.cgs fbule.cgs tin.cgs fckne.cgs fcbuglr.cgs tilt.cgs fbge.cgs lddi.cgs xor.cgs dci.cgs cfckno.cgs cldfu.cgs sll.cgs call.pcgs fitos.cgs tls.cgs cldbfu.cgs tira.cgs fnop.cgs mcpxiu.cgs nldqf.cgs mtrap.cgs mpackh.cgs csllcc.cgs maddhus.cgs cknc.cgs cstu.cgs sllcc.cgs cldshu.cgs or.cgs cfmss.cgs cmovfgd.cgs cmovfg.cgs cmpba.cgs ble.cgs fbue.cgs ldshu.cgs bclr.cgs fcbnelr.cgs fddivs.cgs tnc.cgs cfadds.cgs ldubu.cgs stqfi.cgs mand.cgs cldubu.cgs fsqrts.cgs movgs.cgs mqxmacxhs.cgs umuli.cgs fmad.cgs tno.cgs ccalll.cgs st.cgs subi.cgs cldf.cgs msrlhi.cgs ftilt.cgs ftlg.cgs bnelr.cgs mrdaccg.cgs cmsubhus.cgs movfgq.cgs mcplhi.cgs fbuge.cgs ftgt.cgs cfcmps.cgs xoricc.cgs lduhi.cgs candcc.cgs sracc.cgs notcr.cgs fcmpd.cgs mqmachu.cgs cldsb.cgs bp.cgs nldbfu.cgs tge.cgs stdc.cgs movgfd.cgs cnot.cgs blt.cgs ldf.cgs stbi.cgs ckls.cgs cckne.cgs nldubi.cgs cfdivs.cgs cldu.cgs mcut.cgs addxcc.cgs caddcc.cgs mexpdhw.cgs mqcpxis.cgs srlcc.cgs mwcut.cgs bge.cgs mhdsets.cgs add.pcgs addicc.cgs ftue.cgs rett.cgs nfdivs.cgs ldcu.cgs msubhus.cgs nfstoi.cgs mdaddaccs.cgs fdtoi.cgs cldhf.cgs fckeq.cgs nfsqrts.cgs mmulhs.cgs nldhfi.cgs cmpb.cgs csll.cgs fdsqrts.cgs cklt.cgs mbtohe.cgs nldfu.cgs cckge.cgs bcltlr.cgs umul.cgs fbug.cgs cudiv.cgs cmsubhss.cgs lddu.cgs mxor.cgs blelr.cgs mqmulxhu.cgs nlddfi.cgs fckul.cgs fmuls.cgs ldbfu.cgs lddfi.cgs bcralr.cgs subicc.cgs ckno.cgs nldsh.cgs cstb.cgs tige.cgs cckn.cgs thi.cgs fckra.cgs ldqu.cgs fdmuls.cgs mrdacc.cgs csdiv.cgs dcef.cgs nfitos.cgs addcc.cgs addxicc.cgs sthu.cgs cfcklg.cgs msrahi.cgs ckle.cgs calll.cgs nfditos.cgs blslr.cgs jmpil.cgs stdfi.cgs fdsads.cgs stq.pcgs mqcpxru.cgs fmuld.cgs stfu.cgs cfcklt.cgs fdivs.cgs ftine.cgs cmbtohe.cgs mmulhu.cgs nldf.cgs nlddu.cgs mcmpsh.cgs cfmovs.cgs ldsbi.cgs movsg.cgs tinv.cgs smulcc.cgs nldqu.cgs ccknv.cgs nldshi.cgs fto.cgs movgf.cgs stdf.pcgs cldqu.cgs mqsaths.cgs sthf.cgs stdfu.cgs fbgtlr.cgs tgt.cgs cop1.cgs nfmadds.cgs udiv.cgs cmcpxru.cgs nldsbi.cgs fbul.cgs callil.cgs tiv.cgs addx.cgs fblelr.cgs faddd.cgs msllhi.cgs cckgt.cgs mcuti.cgs mqmulhu.cgs nlddi.cgs fbnolr.cgs fckno.cgs mmachs.cgs ldqcu.cgs stu.cgs mnop.cgs nlddfu.cgs nfdsads.cgs fblg.cgs ret.cgs andicc.cgs clddu.cgs stq.cgs fbra.cgs smulicc.cgs mhtob.cgs and.cgs cstf.cgs subxi.cgs nfdadds.cgs mrotli.cgs csrlcc.cgs addi.cgs cmqmulhu.cgs cfckeq.cgs stbfi.cgs parallel.exp cfmsubs.cgs ldsb.cgs cckeq.cgs mabshs.cgs tinc.cgs nfdsubs.cgs cld.cgs csubcc.cgs tp.cgs cfsqrts.cgs bcnelr.cgs bnvlr.cgs branch.pcgs fcko.cgs clrgr.cgs sethi.cgs mqmulxhs.cgs ftiul.cgs mdunpackh.cgs nfdsqrts.cgs mqlclrhs.cgs mmulxhs.cgs fbulr.cgs xorcr.cgs ldubi.cgs cstbu.cgs fsubs.cgs fbuelr.cgs ld.cgs cfcko.cgs fcbullr.cgs cmmachu.cgs mmrdhs.cgs bctrlr.cgs bgt.cgs cmcpxis.cgs fditos.cgs cmov.cgs csra.cgs ftra.cgs srl.cgs srli.cgs fadds.cgs fcklt.cgs cfsubs.cgs fbralr.cgs subx.cgs cmpi.cgs tile.cgs fmas.cgs subcc.cgs mnot.cgs stqu.cgs tlt.cgs fmsd.cgs nldbfi.cgs cfitos.cgs nfsubs.cgs mcpxis.cgs add.cgs fnegd.cgs sdivi.cgs tc.cgs sthfu.cgs mdasaccs.cgs cfckul.cgs cldbf.cgs nfmsubs.cgs ldqc.cgs ldqfu.cgs nld.cgs fnegs.cgs clduhu.cgs bnc.cgs nfmss.cgs nandncr.cgs ldc.cgs fdmss.cgs lddf.cgs lddcu.cgs mmachu.cgs nldhfu.cgs cckc.cgs cmovgf.cgs cckls.cgs call.cgs smul.cgs cckle.cgs ckc.cgs sthfi.cgs bn.cgs mexpdhd.cgs bc.cgs fckge.cgs andcr.cgs bv.cgs cstd.cgs ldhfu.cgs fdmulcs.cgs fmaddd.cgs mqcpxiu.cgs bcclr.cgs mwtaccg.cgs not.cgs fcbeqlr.cgs ftge.cgs nlduhi.cgs fdivd.cgs stdcu.cgs cmaddhus.cgs fbgelr.cgs mov.cgs stdi.cgs ldsbu.cgs swap.cgs lduhu.cgs ftige.cgs bls.cgs mmrdhu.cgs cstbf.cgs stdf.cgs bgtlr.cgs tine.cgs cckv.cgs mhsethih.cgs ccknc.cgs cfckue.cgs cstdu.cgs nsdivi.cgs fbullr.cgs umulcc.cgs cmhtob.cgs sraicc.cgs nudivi.cgs cmqmachu.cgs fcbgtlr.cgs csmulcc.cgs ldub.cgs mcpxru.cgs cmbtoh.cgs cjmpl.cgs norncr.cgs fbugelr.cgs fcbnolr.cgs beqlr.cgs fitod.cgs nfdmuls.cgs fdstoi.cgs srai.cgs ldqf.cgs fabss.cgs mqsrahi.cgs lddfu.cgs tihi.cgs mqcpxrs.cgs mor.cgs ldd.cgs bcvlr.cgs nldq.cgs ldhf.cgs icei.cgs cst.cgs bceqlr.cgs srlicc.cgs ccmp.cgs mdcutssi.cgs cfckne.cgs lddc.cgs ldsh.cgs sub.cgs mdpackh.cgs fckue.cgs ori.cgs cmqmachs.cgs ftne.cgs nldub.cgs cand.cgs nldi.cgs mqmulhs.cgs ckp.cgs norcr.cgs cxor.cgs cldd.cgs nop.cgs mdrotli.cgs xorcc.cgs fckule.cgs dcf.cgs mcop2.cgs tnv.cgs clrfa.cgs fbno.cgs slli.cgs ldqfi.cgs stqi.cgs icpl.cgs nldqfi.cgs bnolr.cgs movfg.cgs cfabss.cgs stbu.cgs orcr.cgs bnv.cgs ici.cgs ftuge.cgs movgfq.cgs ckgt.cgs cxorcc.cgs nldfi.cgs nfddivs.cgs tra.cgs stdu.cgs mqlmths.cgs mqmachs.cgs bnlr.cgs ccklt.cgs ftlt.cgs fcbralr.cgs ckeq.cgs cstdfu.cgs bhi.cgs fsqrtd.cgs stbf.cgs fbgt.cgs cckhi.cgs fdcmps.cgs msathu.cgs fbne.cgs tne.cgs andi.cgs fdnegs.cgs bar.cgs ftile.cgs fdmas.cgs bvlr.cgs jmpl.cgs sllicc.cgs bcnolr.cgs bhilr.cgs fsubd.cgs cknv.cgs nlduh.cgs msubhss.cgs cldub.cgs cfstoi.cgs ldbfi.cgs mcpxrs.cgs ftule.cgs nldubu.cgs munpackh.cgs bcnlr.cgs tn.cgs clrga.cgs stqc.pcgs stdc.pcgs mqxmachs.cgs nfdmadds.cgs fckuge.cgs stqf.pcgs sthi.cgs cmor.cgs ldu.cgs cmmachs.cgs sdiv.cgs cstbfu.cgs fcbgelr.cgs ftieq.cgs oricc.cgs cfmuls.cgs csub.cgs cmp.cgs movfgd.cgs nldhf.cgs mwtacc.cgs fteq.cgs smuli.cgs fcblelr.cgs cfckgt.cgs andncr.cgs fstoi.cgs csthu.cgs cfckug.cgs mhsetloh.cgs maveh.cgs ckhi.cgs fcblglr.cgs mhsethis.cgs cscan.cgs fdsubs.cgs tino.cgs stqcu.cgs csmul.cgs fbulelr.cgs subxcc.cgs ftiuge.cgs nfdmulcs.cgs ftiue.cgs fmadds.cgs ftu.cgs tic.cgs nudiv.cgs cmexpdhw.cgs stb.cgs ldhfi.cgs fbeqlr.cgs ldshi.cgs clddfu.cgs break.cgs bcnvlr.cgs cldq.cgs setlo.cgs lrbranch.pcgs subxicc.cgs ftio.cgs ckra.cgs nldd.cgs bcgelr.cgs nfdmas.cgs cmaddhss.cgs fble.cgs bnclr.cgs ckne.cgs cfckge.cgs cfckule.cgs addxi.cgs cfckuge.cgs sth.cgs ftno.cgs fdabss.cgs cop2.cgs fblglr.cgs fbolr.cgs sra.cgs ldq.cgs commitga.cgs cmexpdhd.cgs nfdstoi.cgs cstq.cgs maddhss.cgs interrupts.exp mwcuti.cgs nfmuls.cgs csthfu.cgs cmnot.cgs tieq.cgs ckn.cgs mclracc.cgs fcmps.cgs std.pcgs bchilr.cgs nlddf.cgs ldbf.cgs bltlr.cgs cswap.cgs cldsbu.cgs ftul.cgs fabsd.cgs commitfa.cgs fbltlr.cgs tv.cgs ftilg.cgs cfckra.cgs fbnelr.cgs fcklg.cgs bclelr.cgs ckge.cgs sti.cgs fdadds.cgs fckug.cgs nldshu.cgs udivi.cgs nldsb.cgs std.cgs ftigt.cgs clduh.cgs fblt.cgs mcutssi.cgs tip.cgs csracc.cgs fcbulr.cgs cmand.cgs csrl.cgs clddf.cgs ftira.cgs fmovs.cgs nldbf.cgs mcpli.cgs fckgt.cgs tigt.cgs nfmas.cgs fmss.cgs cmmulhu.cgs cmcpxrs.cgs bne.cgs bcplr.cgs stcu.cgs lduh.cgs fdmadds.cgs cckp.cgs tle.cgs allinsn.exp ldfi.cgs fbo.cgs mrotri.cgs andcc.cgs cckra.cgs fmovd.cgs cmqmulhs.cgs fmsubs.cgs dcei.cgs nldqfu.cgs orcc.cgs nfdmss.cgs bcgtlr.cgs mhsetlos.cgs cfnegs.cgs sethilo.pcgs fckle.cgs mdsubaccs.cgs fcbltlr.cgs membar.cgs beq.cgs mbtoh.cgs ftle.cgs stqfu.cgs icul.cgs mhdseth.cgs nldsbu.cgs bralr.cgs msaths.cgs nsdiv.cgs cmovgfd.cgs nldu.cgs cckno.cgs mqmacxhs.cgs commitgr.cgs fbeq.cgs cfmadds.cgs cstfu.cgs ckv.cgs cmxor.cgs xori.cgs fbu.cgs mcop1.cgs cfcku.cgs bplr.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/interrupts/: fp_exception.cgs data_store_error-fr550.cgs Ipipe-fr400.cgs shadow_regs.cgs timer.cgs compound.cgs illinsn.cgs badalign.cgs data_store_error.cgs regalign.cgs mp_exception.cgs compound-fr550.cgs insn_access_error.cgs badalign-fr550.cgs reset.cgs insn_access_error-fr550.cgs privileged_instruction.cgs Ipipe-fr500.cgs fp_exception-fr550.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr400/: smu.cgs slass.cgs movgs.cgs subss.cgs masaccs.cgs mhdsets.cgs smass.cgs csdiv.cgs movsg.cgs udiv.cgs sdivi.cgs scutss.cgs mhsethih.cgs addss.cgs sdiv.cgs mhsetloh.cgs maveh.cgs mhsethis.cgs maddaccs.cgs mclracc.cgs udivi.cgs msubaccs.cgs allinsn.exp smsss.cgs mhsetlos.cgs mhdseth.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr550/: cmcpxiu.cgs mqaddhss.cgs mtrap.cgs maddhus.cgs mqaddhus.cgs mqxmacxhs.cgs cmsubhus.cgs mqmachu.cgs masaccs.cgs msubhus.cgs mdaddaccs.cgs cmsubhss.cgs cmqaddhss.cgs udiv.cgs cmcpxru.cgs mmachs.cgs mabshs.cgs mqsubhus.cgs cmmachu.cgs mmrdhs.cgs mdasaccs.cgs mmachu.cgs cmaddhus.cgs cmqsubhss.cgs mmrdhu.cgs cmqmachu.cgs cmqmachs.cgs mqmachs.cgs mqsubhss.cgs msubhss.cgs dcul.cgs mqxmachs.cgs dcpl.cgs cmmachs.cgs cmqaddhus.cgs cmqsubhus.cgs cmaddhss.cgs maddaccs.cgs maddhss.cgs udivi.cgs msubaccs.cgs allinsn.exp mdsubaccs.cgs mqmacxhs.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/frv/fr500/: mqaddhss.cgs mqaddhus.cgs cmqaddhss.cgs mqsubhus.cgs cmqsubhss.cgs mqsubhss.cgs dcul.cgs dcpl.cgs cmqaddhus.cgs cmqsubhus.cgs mclracc.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/fr30/: cmp2.cgs addsp.cgs copld.cgs borl.cgs stm0.cgs ldi32.cgs extsh.cgs mulh.cgs bno.cgs bra.cgs testutils.inc eorh.cgs jmp.cgs addn.cgs or.cgs ble.cgs st.cgs subc.cgs eorb.cgs asr.cgs stm1.cgs bp.cgs asr2.cgs blt.cgs ldm1.cgs bge.cgs lsr2.cgs subn.cgs ldres.cgs stilm.cgs eor.cgs copst.cgs ret.cgs and.cgs div0u.cgs misc.exp div0s.cgs ld.cgs bgt.cgs btsth.cgs div.ms reti.cgs add.cgs mul.cgs div1.cgs extub.cgs bnc.cgs call.cgs bn.cgs bc.cgs ldi20.cgs bv.cgs bandl.cgs mov.cgs orccr.cgs dmovh.cgs bls.cgs add2.cgs ldub.cgs lsl2.cgs bandh.cgs leave.cgs addc.cgs sub.cgs nop.cgs ldm0.cgs copop.cgs lsr.cgs bnv.cgs mulu.cgs add.ms extsb.cgs div3.cgs andccr.cgs bhi.cgs div4s.cgs orb.cgs lsl.cgs extuh.cgs btstl.cgs cmp.cgs xchb.cgs muluh.cgs andb.cgs hello.ms stb.cgs div2.cgs sth.cgs ldi8.cgs beorl.cgs dmov.cgs stres.cgs enter.cgs copsv.cgs borh.cgs bne.cgs lduh.cgs dmovb.cgs allinsn.exp int.cgs addn2.cgs inte.cgs orh.cgs beq.cgs beorh.cgs andh.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/sh/: fpchg.s fcmpeq.s swap.s pshar.s macw.s fmov.s fail.s testutils.inc fcmpgt.s fsub.s shlr2.s pdmsb.s shlr16.s fcnvsd.s bst.s pshai.s fldi1.s mov.s div.s fdiv.s frchg.s loop.s macl.s fadd.s fcnvds.s shll.s padd.s clip.s pmuls.s add.s movxy.s pswap.s bset.s pabs.s bclr.s fneg.s movua.s movi.s mulr.s sett.s fsca.s prnd.s ldrc.s bxor.s pshli.s pushpop.s paddc.s fmul.s pshlr.s fipr.s fsqrt.s shll2.s dmxy.s pand.s pinc.s fldi0.s fschg.s shlr8.s shll16.s ftrc.s shlr.s movli.s ChangeLog bldnot.s pclr.s and.s pdec.s bandornot.s flds.s psub.s bandor.s resbank.s allinsn.exp pass.s fsrra.s bld.s shll8.s fabs.s fmac.s float.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/m32r/: mvfachi.cgs lock.cgs ld-d.cgs rem.cgs sra3.cgs testutils.inc jmp.cgs xor.cgs sll.cgs sll3.cgs bnez.cgs mvfc.cgs rac.cgs or.cgs bc8.cgs st.cgs st-minus.cgs subv.cgs cmpu.cgs srl3.cgs bl8.cgs lduh-d.cgs bra8.cgs st-d.cgs ldh-d.cgs bc24.cgs bgez.cgs mulwlo.cgs bra24.cgs uread32.ms addv3.cgs addx.cgs bltz.cgs ldi16.cgs and.cgs hw-trap.ms misc.exp seth.cgs addi.cgs mullo.cgs machi.cgs ld-plus.cgs ldb-d.cgs div.cgs jl.cgs ld.cgs srl.cgs srli.cgs subx.cgs cmpi.cgs remu.cgs rte.cgs add.cgs and3.cgs mul.cgs cmpui.cgs mvtaclo.cgs rach.cgs not.cgs macwhi.cgs ldb.cgs mvfaclo.cgs bnc24.cgs blez.cgs ldub.cgs srai.cgs add3.cgs stb-d.cgs mvtc.cgs sub.cgs divu.cgs nop.cgs slli.cgs ldh.cgs bnc8.cgs mv.cgs uwrite32.ms xor3.cgs bl24.cgs maclo.cgs cmp.cgs or3.cgs ld24.cgs mulhi.cgs hello.ms stb.cgs bgtz.cgs st-plus.cgs unlock.cgs sth.cgs sra.cgs ldi8.cgs sth-d.cgs macwlo.cgs uwrite16.ms trap.cgs neg.cgs mulwhi.cgs ldub-d.cgs bne.cgs lduh.cgs mvfacmi.cgs allinsn.exp mvtachi.cgs addv.cgs beqz.cgs beq.cgs uread16.ms cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/h8300/: orw.s subx.s movmd.s brabc.s testutils.inc addw.s mul.s subb.s subs.s xorl.s div.s dec.s subl.s inc.s tas.s adds.s shll.s rotxl.s bra.s movb.s biand.s shar.s addx.s bset.s ldm.s nop.s jmp.s movsd.s rotl.s extw.s andl.s mac.s shal.s movl.s neg.s subw.s stack.s not.s xorb.s stc.s movw.s band.s orl.s rotxr.s bfld.s xorw.s addb.s das.s cmpl.s shlr.s ChangeLog daa.s andw.s addl.s extl.s ldc.s cmpb.s orb.s cmpw.s allinsn.exp mova.s andb.s rotr.s cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/: teq.cgs rsb.cgs misaligned3.ms bx.cgs misaligned2.ms mrs.cgs testutils.inc umlal.cgs tst.cgs umull.cgs swi.cgs eor.cgs misaligned1.ms cmn.cgs ldm.cgs smlal.cgs ldrb.cgs bl.cgs and.cgs bic.cgs misc.exp b.cgs ldrsb.cgs add.cgs ldrsh.cgs mul.cgs swpb.cgs ldrh.cgs mvn.cgs mov.cgs stm.cgs ldr.cgs orr.cgs sub.cgs str.cgs msr.cgs sbc.cgs cmp.cgs strb.cgs strh.cgs hello.ms swp.cgs adc.cgs rsc.cgs mla.cgs smull.cgs allinsn.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/iwmmxt/: wror.cgs wsll.cgs tmia.cgs wmin.cgs testutils.inc wsad.cgs wsub.cgs tmiaxy.cgs wsrl.cgs wunpckel.cgs tmovmsk.cgs tbcst.cgs wcmpeq.cgs tinsr.cgs wzero.cgs textrm.cgs wxor.cgs wmax.cgs wsra.cgs wmul.cgs walignr.cgs wunpckil.cgs wpack.cgs wadd.cgs wmac.cgs wshufh.cgs wmadd.cgs wunpckih.cgs waligni.cgs wacc.cgs wcmpgt.cgs iwmmxt.exp wunpckeh.cgs wor.cgs wavg2.cgs wandn.cgs wmov.cgs wand.cgs tmiaph.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/thumb/: ldrb-imm.cgs ldr-sprel.cgs testutils.inc ble.cgs pop.cgs subi.cgs tst.cgs asr.cgs add-hd-rs.cgs swi.cgs blt.cgs bge.cgs mov-hd-rs.cgs pop-pc.cgs lda-pc.cgs eor.cgs push.cgs cmn.cgs ldr-imm.cgs str-sprel.cgs ldrb.cgs bcs.cgs bx-rs.cgs and.cgs bic.cgs cmp-hd-hs.cgs addi.cgs ldsb.cgs cmp-hd-rs.cgs b.cgs bgt.cgs bl-lo.cgs add.cgs bmi.cgs mul.cgs lda-sp.cgs ldrh.cgs mvn.cgs mov.cgs bls.cgs bvc.cgs ldr.cgs bvs.cgs orr.cgs ldsh.cgs sub.cgs strb-imm.cgs str.cgs push-lr.cgs lsr.cgs ldrh-imm.cgs subi8.cgs bhi.cgs strh-imm.cgs bl-hi.cgs bpl.cgs sbc.cgs lsl.cgs cmp-rd-hs.cgs add-rd-hs.cgs add-sp.cgs addi8.cgs sub-sp.cgs cmp.cgs strb.cgs strh.cgs bx-hs.cgs allthumb.exp adc.cgs ldmia.cgs stmia.cgs mov-hd-hs.cgs neg.cgs mov-rd-hs.cgs bcc.cgs bne.cgs ldr-pc.cgs str-imm.cgs add-hd-hs.cgs beq.cgs ror.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/sim/arm/xscale/: testutils.inc xscale.exp mra.cgs miaxy.cgs miaph.cgs blx.cgs mia.cgs cm3/m3-sys/m3gdb/gdb/sim/testsuite/common/: alu-tst.c Makefile.in bits-gen.c Make-common.in fpu-tst.c bits-tst.c alu-n-tst.h cm3/m3-sys/m3gdb/gdb/sim/testsuite/config/: default.exp cm3/m3-sys/m3gdb/gdb/sim/testsuite/frv-elf/: Makefile.in loop.s configure.ac hello.s cache.s ChangeLog grloop.s exit47.s configure cm3/m3-sys/m3gdb/gdb/sim/testsuite/mips64el-elf/: Makefile.in configure.ac ChangeLog configure cm3/m3-sys/m3gdb/gdb/sim/arm/: Makefile.in armfpe.h dbg_hif.h dbg_conf.h gdbhost.c armemu.c config.in README communicate.h bag.h communicate.c wrapper.c armsupp.c dbg_cp.h configure.ac arminit.c tconfig.in acconfig.h thumbemu.c armvirt.c armcopro.c armrdi.c maverick.c kid.c bag.c parent.c armdefs.h iwmmxt.c armos.c iwmmxt.h ChangeLog main.c armos.h configure armemu.h dbg_rdi.h armopts.h COPYING gdbhost.h cm3/m3-sys/m3gdb/gdb/sim/igen/: ld-cache.c Makefile.in lf.h gen-engine.h ld-decode.c gen.c filter_host.c config.in filter_host.h table.h gen-icache.h gen-support.h gen-model.h filter.c configure.ac ld-decode.h igen.c filter.h acconfig.h gen-itable.h gen-model.c misc.h gen-support.c ld-insn.c gen-idecode.c gen-idecode.h gen-engine.c igen.h table.c ld-cache.h gen-semantics.c gen.h gen-icache.c ChangeLog compare_igen_models gen-semantics.h ld-insn.h configure lf.c gen-itable.c misc.c cm3/m3-sys/m3gdb/gdb/sim/m68hc11/: Makefile.in dv-m68hc11eepr.c config.in dv-m68hc11tim.c configure.ac interp.c dv-m68hc11.c dv-m68hc11sio.c interrupts.h dv-nvram.c sim-main.h interrupts.c ChangeLog dv-m68hc11spi.c configure emulos.c gencode.c m68hc11_sim.c cm3/m3-sys/m3gdb/gdb/sim/erc32/: Makefile.in help.c config.in end.c README.sis configure.ac sis.h README.erc32 exec.c interf.c acconfig.h sis.c float.c erc32.c README.gdb ChangeLog NEWS startsim configure func.c cm3/m3-sys/m3gdb/gdb/sim/iq2000/: arch.c Makefile.in iq2000.c config.in configure.ac decode.h tconfig.in acconfig.h cpuall.h cpu.c arch.h sim-main.h iq2000-sim.h sem.c mloop.in cpu.h ChangeLog configure sim-if.c decode.c model.c sem-switch.c Log message: delete 30MB unused From jkrell at elego.de Tue Sep 28 12:55:19 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:55:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105519.D778D2474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:55:19 Removed files: cm3/m3-sys/m3cc/gcc/: MD5SUMS cm3/m3-sys/m3cc/gcc-4.5/: MD5SUMS Log message: delete 10MB unused From jkrell at elego.de Tue Sep 28 12:58:02 2010 From: jkrell at elego.de (Jay Krell) Date: Tue, 28 Sep 2010 12:58:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100928105802.DA5C82474005@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/28 12:58:02 Removed files: cm3/m3-sys/m3gdb/gdb/: md5.sum Log message: delete paltry 300K unused From jkrell at elego.de Thu Sep 30 10:07:47 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 10:07:47 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930080747.B6ADECC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 10:07:47 Modified files: cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c Log message: Let enums show properly in stock gdb. But disabled still, as it also leads to a crash. Oh the perils of the frontend/backend being oddly interfaced and both doing layout? From jkrell at elego.de Thu Sep 30 12:06:57 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:06:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930100657.EA3C82474003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:06:57 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: cm3cfg.common Log message: Reduce cm3cg probing to just INSTALL_ROOT/bin/cm3cg for native builds ROOT/m3-sys/m3cc/HOST/TARGET/cm3cg for cross builds "Later" (never?) we can think about "installed" cross builds. In particular, when I make m3cg interface changes, I get burned by reaching in for ROOT/m3-sys/m3cc/x/cm3cg. From jkrell at elego.de Thu Sep 30 12:55:16 2010 From: jkrell at elego.de (Jay Krell) Date: Thu, 30 Sep 2010 12:55:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20100930105516.30182CC124@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 10/09/30 12:55:16 Modified files: cm3/m3-sys/m3front/src/types/: ObjectType.m3 RefType.m3 Log message: make the comments unique