2010-12-31 15:23 jkrell * scripts/sysinfo.sh: put back big uname switch, as $CM3 is set to something nonexistant so running it to grep for host: doesn't work. This should be revisited. 2010-12-31 15:03 jkrell * m3-libs/m3core/src/runtime/: ex_frame/RTExFrame.i3, ex_frame/RTExFrame.m3, ex_frame/m3makefile, ex_stack/RTExStack.i3, ex_stack/RTExStack.m3, ex_stack/m3makefile: merge interface RTExFrame into module RTExFrame merge interface RTExStack into module RTExStack both these modules export common interface RTException there are no users of interfaces RTExFrame, RTExStack and there probably never will be? They are very low level. It is concievable, I guess, that interface RTExStack exists/existed to support writing per-target stack walkers in Modula-3? Cross that bridge if it is ever rebuilt. (We aren't likely to write new stack walkers, let alone in Modula-3; we are most likely to reuse existing ones, libunwind/libgcc.) It is also concievable that RTExFrame might have uses, e.g. stack dumper written in Modula-3? Again, doesn't seem likely at the current time and pace. (Again, e are more likely to leverage m3cg -funwind-tables/libunwind/libgcc.) 2010-12-31 14:46 jkrell * m3-libs/m3core/src/runtime/: ex_frame/RTExRep.i3, ex_frame/RTException.m3, ex_stack/RTExRep.i3, ex_stack/RTException.m3: delete files that have been dead since 5.1 see e.g.: http://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/ex_frame/m3makefile.diff?r1=1.1.1.1;r2=1.1.1.2;f=u http://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/ex_stack/m3makefile.diff?r1=1.1.1.1;r2=1.1.1.2;f=u that removed them from the m3makefiles http://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/common/m3makefile.diff?r1=1.1.1.1;r2=1.1.1.2;f=u added RTException to common I think RTExRep is buried in interfaces that don't have common names, i.e. RTExFrame, RTExStack (and can possibly be moved from interfaces into modules, if only consumed by one module, I'll check) 2010-12-31 14:36 jkrell * m3-libs/m3core/src/runtime/ex_frame/: RTExFrame.i3, RTExRep.i3: before PFx = UNTRACED REF EFx; EFx = RECORD ... after PFx = UNTRACED REF RECORD (* EFx *) ... Because the types EFx are never instantiated by Modula-3 code by value via these descriptions. Their sizes are not needed. In particular, the size of the jmpbuf is not needed, and specifying it is unnecessary porting work. Though the alignment is seemingly needed to compute the offset correctly, even though 128bit alignment isn't/can't be expressed, so the alignment isn't generally correct. That is left alone for now. Only the compiler instantiates these types, using special hardcoded values that don't derive from these files. (see m3middle/src/M3RT) 2010-12-31 14:15 jkrell * m3-libs/m3core/src/runtime/: ex_frame/RTExFrame.i3, ex_frame/RTExFrame.m3, ex_frame/RTExRep.i3, ex_frame/RTException.m3, ex_stack/RTExRep.i3, ex_stack/RTExStack.i3: one newline is enough at the end of files, don't need two 2010-12-31 07:36 jkrell * m3-libs/m3core/src/C/Common/Cstdio.i3: remove FILE type leave only FILE_star type 2010-12-30 13:35 jkrell * m3-libs/m3core/src/runtime/common/Compiler.tmpl: remove Compiler.ThisPlatform yet another piece of porting work gone There are no uses of this, and any uses would be somewhat dubious, and easy to replace with a compile time check of TARGET in Quake code. See this code for how: jbook2:src jay$ grep OSF */*/*e os/POSIX/m3makefile: "OSF" : "Digital Unix", os/POSIX/m3makefile:if equal(TARGET, "ALPHA_OSF") or equal(TARGET, "DS3100") os/POSIX/m3makefile: MakeInterfaceForConstant("SocketPosix_IsUltrixOrOSF", "TRUE") os/POSIX/m3makefile: MakeInterfaceForConstant("SocketPosix_IsUltrixOrOSF", "FALSE") jbook2:src jay$ pwd /dev2/cm3/m3-libs/libm3/src (recall, this use of Compiler.ThisPlatform in libm3 was a constraint on bootstrapping flexibility for a long time, and so pointless!) Or, more generally, a mapping of platform to platform-specific source, as occurs in a few places esp. in m3core. Often "narrowing" through word size, or endian, or Linux vs. FreeBSD etc. instead of complete target tuple. 2010-12-30 13:21 jkrell * scripts/sysinfo-new.sh: replace big uname switch with: `$CM3 -version 2>/dev/null | grep host: | perl -pi -e "s/ *host: *//"` if $CM3_TARGET not set (the Python scripts all also allow target on command line besides in the environment, but the Sh scripts do not) 2010-12-30 13:18 jkrell * scripts/sysinfo.sh: replace big uname switch with: $CM3 -version 2>/dev/null | grep host: | perl -pi -e "s/ *host: *//" Let's hope: - it works on Solaris where we have steady difficulty achieving portability of shell code - perl is everywhere (else I'm sure sed/awk could be used) This removes more porting work and host/target knowledge from the system. Still more to do. 2010-12-30 13:12 jkrell * scripts/python/pylib.py: less picky about whitespace 2010-12-30 13:10 jkrell * scripts/python/pylib.py: and boom, no need for all the uname sniffing now, porting work reduced 2010-12-30 13:08 jkrell * scripts/python/pylib.py: save a process and save depending on egrep 2010-12-30 12:46 jkrell * scripts/python/pylib.py: If target isn't specified on the command line and $CM3_TARGET isn't set, then use cm3 -version 2>/dev/null | egrep " +host: +" > /dev/null, if it works, before going into uname. (remove spaces, newlines, carriage returns, and "host:"; probably should strengthen and take the first whitespace-delimited token after "host:", in case we later print more information here?) This fixes the ambiguity of I386_DARWIN vs. AMD64_DARWIN, and several others. LINUXLIBC6 vs. I386_LINUX NT386 vs. I386_NT vs. I386_CYGWIN etc. The two other aggressive uname users should do this too! scripts/sysinfo.sh scripts/regression/defs.sh 2010-12-29 12:25 jkrell * m3-libs/m3core/src/C/Common/Cstdio.i3: add fread, wrapper already present in CstdioC.c 2010-12-29 12:03 jkrell * m3-libs/m3core/src/: m3core.h, runtime/POSIX/RTSignalC.c, thread/m3makefile, thread/POSIX/ThreadPosixC.c, thread/PTHREAD/ThreadPThreadC.c, unix/Common/m3makefile, unix/Common/context/m3makefile, unix/Common/context/setjmp/Makefile, unix/Common/context/setjmp/config.c, unix/Common/context/setjmp/context.c, unix/Common/context/setjmp/context.h, unix/Common/context/setjmp/m3makefile, unix/Common/context/setjmp/tcontext.c: remove get/set/make/swapcontext implementation for OpenBSD, now that using pthreads Death to user threads?! (No, deletes won't go any/much further. Systems with get/set/swapcontext or sigaltstack will likely just keep working if one fiddles with the m3makefile and rebuilds the entire system.) But still, no forseeable near future use, as long as OpenBSD pthreads holds up well enough... let's hope... 2010-12-29 09:36 jkrell * m3-libs/m3core/src/: thread/m3makefile, thread/PTHREAD/ThreadPThreadC.c, thread/PTHREAD/m3makefile, unix/Common/context/m3makefile: Switch OpenBSD to pthreads! Beware, I did once see: --- p244 --- gcc 4.5 backend crash with 'fre' optimization cd ../src/p2/p244 && cm3 -silent -DM3TESTS >I386_OPENBSD/stdout.build.raw 2>I386_OPENBSD/stderr.build.raw *** *** runtime error: *** Thread client error: 22 *** file "../src/thread/PTHREAD/ThreadPThread.m3", line 130 *** EINVAL PROCEDURE UnlockMutex (m: Mutex) = (* LL = m *) BEGIN IF m.mutex = NIL THEN InitMutex(m.mutex, m, CleanMutex) END; WITH r = pthread_mutex_unlock(m.mutex) DO IF r # 0 THEN DieI(ThisLine(), r) END; line 130 END; END UnlockMutex; something to watch out for, try to stress test, see if it can be made to occur often/consistently, and fixed. Maybe initialize mutexes up-front instead of on-demand? Death to user threads?? 2010-12-29 08:40 jkrell * m3-libs/m3core/src/m3core.h: Add some clarifying comments. On further thought/work, the token pasting will stay. As needed we still have two or three options short of "rewrite". - #undef __foo as needed, as problems are discovered We don't ahve to #undef __malloc as that has been worked around by moving a small number of special macros/uses to pass m3name and cname separately - move the pasting up a level to the numbered macros and pass Mmodule__foo, foo to the lower level as needed - use _foo as the intermediate instead of __foo The token pasting approach is just too attractive for the amount of repitition is removes. If push comes to shove, we can also checkin custom text files and process them with quake/awk/C/Modula-3. Probably quake. Really not a bad idea. Like how m3-win/import-libs works. 2010-12-29 07:47 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CstdlibC.c: OpenBSD has this: /usr/include/sys/cdefs.h:#define __malloc __attribute__((__malloc__)) which interferes with: M3PASTE(M3MODULE, __##name) in We end up with Cstdlib____attribute__((__malloc__)) where we want Cstdlib__malloc for now M3WRAP_NO_SWITCHING takes m3name and cname separate, i.e., no more M3MODULE, no more pasting, but pass Cstdlib__malloc and malloc. Longer term, soon!, need to do this for the more heavily used macros. Another thing we could try is PASTE3(M3MODULE,_, _##name) in but this still runs the risk of single underscore: /usr/include/sys/cdefs.h:#define _malloc __attribute__((__malloc__)) or somesuch. It seems impossible to get name evaluated and pasted-without-evaluation. So we will stop using pasting. Note that M3WRAP1_ will have to change also, to take foo and _foo and select one, since "stop using pasting" I'll interpret strenuously and not even do _#foo, likely. 2010-12-29 07:30 jkrell * m3-libs/m3core/src/m3core.h: remove commented out disable/enableswitching 2010-12-29 07:23 jkrell * m3-libs/m3core/src/m3core.h: add __cdecl 2010-12-29 07:04 jkrell * scripts/python/pylib.py: should fix CopyConfigForDevelopment, since yesteray's changes 2010-12-29 06:18 jkrell * scripts/python/pylib.py: fix rmtree/isdir 2010-12-28 13:43 jkrell * m3-sys/m3cc/src/clean_marker.txt: clean again 2010-12-28 12:43 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.c: assert that stack grows down, except #ifdef __hppa__ 2010-12-28 12:32 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.c: use recursion to further fight inliner, though smart compiler could still through this 2010-12-28 12:20 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.c: add comment as to why inlining to be avoided 2010-12-28 12:19 jkrell * m3-libs/m3core/src/: m3core.h, thread/Common/ThreadInternal.c: Try to avoid inlining of ThreadInternal__StackGrowsDown, ThreadInternal__StackGrowsDownHelper by use of __declspec(noinline) or __attribute__((noinline)) on compilers that support them. In particular, if ThreadInternal__StackGrowsDownHelper is inlined, then the locals aren't necessarily "in the expected relative locations" and the return value could be wrong. We should probably #ifdef here to force the answer. e.g. x86, amd64, sparc, alpha, ia64, vax, etc., all always grow down e.g. hppa grows up We might also try inhibiting inlining/optimization by using recursion? 2010-12-28 12:00 jkrell * m3-libs/m3core/src/unix/: m3makefile, Common/m3makefile, osf-1.ALPHA_OSF/Usignal.i3, osf-1.ALPHA_OSF/m3makefile: remove ALPHA_OSF Usignal.i3 since we have given up on our stack walker (I couldn't even get Solaris/sparc to work with gcc 4.5 recall.) 2010-12-28 11:56 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: oops: and don't pthread_key_create when using __thread 2010-12-28 11:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Use __thread on Linux and Solaris. Doesn't compile on Apple. Segfaults on OpenBSD and NetBSD. Not tested on FreeBSD, AIX, Irix, HP-UX, etc., stick with pthread_get/setspecific. In future hope to eliminate this code anyway, in favor of gcc/libgcc stack walker or C++ exceptions (C++ backend). 2010-12-28 11:01 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadOpenBSD.c: Not currently used, but I'll try shortly. - remove casts by changing parameters from void* to char* - don't assume stack grows down (e.g. HPPA?) (in general we don't hardcode stack direction, but we detect it at runtime -- in ThreadPThreadC.c -- but in the Apple and FreeBSD code we do, perhaps we shouldn't, but those systems run on relatively few architectures) 2010-12-28 10:59 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: whitespace: label goes in first column 2010-12-28 10:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: NetBSD specific code shouldn't be needed here any longer, now that m3core.h's M3WRAP macros avoid evaluating the wrapper name. Untested! (NetBSD doesn't have good representation among Modula-3 users seemingly.) 2010-12-28 10:52 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Allow OpenBSD to have stack that doesn't grow down. This is hypothetical at this point, but would be part of - OpenBSD using pthreads, which I will try again shortly - OpenBSD/hppa (but I don't currently have any HPPA machines :( and the one I did have was I think 64bit only, so wouldn't run this anyway; however there are modern 64bit machines that can run 32bit OpenBSD/hppa) (what about NetBSD?) 2010-12-28 10:41 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.c: cosmetic: whitespace, naming of static function 2010-12-28 10:39 jkrell * m3-libs/m3core/src/m3core.h: declare ThreadInternal__StackGrowsDown here 2010-12-28 10:36 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadFreeBSD.c: fprintf(stderr) before abort, initialize locals 2010-12-28 10:28 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadFreeBSD.c: eliminate casts by changing parameters from void* to char* 2010-12-28 10:19 jkrell * m3-libs/m3core/src/thread/Common/: ThreadInternal.c, ThreadInternal.i3: provide ThreadInternal.StackGrowsDown() to be possibly used by OpenBSD/pthread Yes, I know it is easily computed, and the existing computations will remain, but it'd be nice to have it implemented in one place and only one place. OpenBSD runs on HPPA, which I believe has a stack that grows up. FreeBSD and Darwin will retain their assumption and assertion of stack growing down. At this rate, I don't see foresee them ever having a stack that grows up. (Growth up is apparently obviously "more secure", but also rare.) 2010-12-28 10:13 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: stack_grows_down is never used, remove it 2010-12-27 12:55 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CstdlibC.c: provide macros for non-switching wrappers and use them for malloc/realloc/free 2010-12-27 12:49 jkrell * m3-libs/m3core/src/m3core.h: remove new central disable/enable scheduling, pending more thought 2010-12-27 12:46 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: go back a version 2010-12-27 12:45 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: Some wrappers might be used specifically while waiting for other threads to progress. e.g. don't disable switching in sleep(). More wrappers to consider. Only matters for user threads.. 2010-12-27 12:33 jkrell * scripts/python/pylib.py: better config install/cleanup 2010-12-27 12:17 jkrell * scripts/python/pylib.py: ship all config files, not just Target* and *common 2010-12-27 10:43 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CstdlibC.c, C/Common/M3toC.m3, unix/Common/Uin.c, unix/Common/Upwd.c: Scheduler__DisableSwitching / Scheduler__EnableSwitching around wrappers I noticed calls to free() were missing some, and this whole area is both error-prone and almost completely untested: - it only matters when using user threads - and if thread switches occurs at just the right time This still leaves hazard in lots of custom wrappers. I suggest frontend handle this. allow NIL pointers in M3toC.Free*, silently do nothing with them (again here, we have VAR where CONST is really desired!) Upwd.c: use struct passwd and remove typedef struct passwd passwd_t I had generally done this, back end I discovered newer Solaris headers clash with such typedefs, alas Uin.c: add M3_DLL_EXPORT 2010-12-26 18:53 jkrell * m3-sys/m3cc/src/clean_marker.txt: trim more LTO 2010-12-26 18:50 jkrell * m3-sys/m3cc/src/clean_marker.txt: system.h: all systems have: stddef.h limits.h abort realloc malloc calloc free strstr getwd (declared if they have it) getcwd (ditto) sbrk (ditto) getopt (ditto) getenv atof atol errno declared in errnor.h NULL trim more of LTO 2010-12-26 08:50 jkrell * m3-libs/m3core/src/m3core.h: comment only 2010-12-26 08:47 jkrell * m3-libs/m3core/src/m3core.h: grammar in comments; whitespace 2010-12-26 08:04 jkrell * m3-libs/m3core/src/m3core.h: remove test code from previous revision 2010-12-26 08:02 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CerrnoC.c, C/Common/CsignalC.c, C/Common/CstdioC.c, C/Common/CstdlibC.c, thread/PTHREAD/ThreadPThreadC.c, unix/Common/Uexec.c, unix/Common/Ugrp.c, unix/Common/Unetdb.c, unix/Common/UnixC.c, unix/Common/UnixLink.c, unix/Common/Usocket.c, unix/Common/UstatC.c, unix/Common/UtimeC.c: This should deal more generally with the problem that NetBSD #defines identifiers, fake example: #define fopen fooopen: Cstdio__fooopen(...) { return fooopen(...); } instead of: Cstdio__fopen(...) { return foopen(...);} also sprinkle around M3_DLL_EXPORT, M3_DLL_LOCAL, __cdecl 2010-12-19 15:05 jkrell * m3-libs/m3core/src/: thread/POSIX/ThreadPosixC.c, unix/Common/context/setjmp/context.c: speculative OpenBSD/alpha changes should really find the setjmp/longjmp code.. 2010-12-19 14:59 jkrell * m3-libs/m3core/src/runtime/common/Compiler.tmpl: add OpenBSD/alpha here too 2010-12-19 14:59 jkrell * m3-sys/m3middle/src/Target.i3, m3-sys/m3middle/src/Target.m3, m3-sys/cminstall/src/config-no-install/ALPHA_OPENBSD, scripts/sysinfo-new.sh, scripts/sysinfo.sh, scripts/python/pylib.py, scripts/regression/defs.sh: initial OpenBSD/alpha support still need to look into using hacked setjmp or sigaltstack 2010-12-17 07:29 jkrell * m3-sys/m3cc/src/clean_marker.txt: upgrade from gcc 4.5.1 to gcc 4.5.2 2010-12-15 16:26 jkrell * m3-sys/m3middle/src/TCardinal.i3: remove unused 2010-12-15 16:25 jkrell * m3-sys/m3middle/src/TCardinal.m3: fold common code 2010-12-15 16:22 jkrell * m3-sys/m3middle/src/TCardinal.m3: whitespace 2010-12-15 16:21 jkrell * m3-sys/m3middle/src/: TCardinal.m3: use correct comparison function 2010-12-15 16:17 jkrell * m3-sys/m3middle/src/: TCardinal.i3, TCardinal.m3: remove New, add FromCardinal 2010-12-15 16:13 jkrell * m3-sys/m3middle/src/m3makefile: compile TCardinal 2010-12-15 16:12 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: given align/bytes/pack of type INTEGER or CARDINAL, etc., add talign/tbytes/tpack of type Target.Int, Target.Cardinal, etc. 2010-12-15 16:10 jkrell * m3-sys/m3middle/src/: TInt.i3, TInt.m3: add Inc/Dec 2010-12-15 12:22 jkrell * m3-sys/m3middle/src/: TCardinal.i3, TCardinal.m3: work in progress 2010-12-15 12:14 jkrell * m3-sys/m3middle/src/: TCardinal.i3, TCardinal.m3: work in progress 2010-12-15 12:03 jkrell * m3-sys/m3middle/src/: TCardinal.i3, TCardinal.m3: new files -- like TInt and TWord, but negative values are non-silent errors to be used to replace CARDINAL in frontend 2010-12-12 05:59 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: experiment: use C compiler to drive assemble, on Darwin/x86/amd64 at least -- don't pass -g/-gstabs though, that causes later linker error about unknown stabs type 2010-12-12 05:53 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common: experiment: use C compiler to drive assemble, on Darwin/x86/amd64 at least 2010-12-11 12:03 jkrell * www/uploaded-archives/targets.txt: add ALPHA_LINUX 2010-12-10 21:45 jkrell * scripts/python/upload.sh: .deb files too 2010-12-10 12:08 jkrell * scripts/python/pylib.py: try again 2010-12-10 11:48 jkrell * scripts/python/make-dist.py: possible fix for making Debian packages in make-dist.py (note that Hudson makes Debian packages through a slightly alternate, working route) 2010-12-10 11:47 jkrell * scripts/make-dist.sh: remove "build platform" (e.g. "cygwin") from NT386 archive names slightly invasive in that the delimiting dashes are moved to BF, since just making it empty would otherwise produce double dashes 2010-12-10 11:23 jkrell * scripts/python/pylib.py: avoid double dash in Debian package file name 2010-12-09 06:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: add link to bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46861 that I am working around (that I just reported) repros with system gcc (4.2) but not with 4.5.1 2010-12-08 07:30 jkrell * m3-sys/cm3/src/: Utils.i3, UtilsPosix.m3, UtilsWin32.m3, cm3unix.c, m3makefile: use Unix.link in 5.8.6 and newer m3core no longer hack for building from earlier releases 2010-12-08 06:20 jkrell * m3-sys/cminstall/src/config-no-install/: Alpha32.common, Alpha64.common: m3back_mieee = "-mieee", of course! 2010-12-08 02:06 jkrell * m3-sys/m3cc/src/clean_marker.txt: obnoxious, but clean just in case 2010-12-08 02:03 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: static void SignalHandlerC(int signo, siginfo_t *info, void *context) /* wrapper to workaround ALPHA_LINUX: /usr/bin/ld: ThreadPThreadC.o: gp-relative relocation against dynamic symbol ThreadPThread__SignalHandler */ { SignalHandler(signo, info, context); } 2010-12-07 21:51 jkrell * m3-libs/m3core/src/runtime/common/Compiler.tmpl: add ALPHA_LINUX (I thought I did this already.) 2010-12-07 15:27 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh, python/pylib.py, regression/defs.sh: add ALPHA_LINUX 2010-12-07 15:18 jkrell * m3-libs/m3core/src/unix/Common/Uconstants.c: lame Alpha/Linux workaround 2010-12-07 15:00 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: let it compile for Linux/alpha, seems reasonable 2010-12-07 14:46 jkrell * scripts/python/pylib.py: no --64 for ALPHA_LINUX assembler 2010-12-07 14:44 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_LINUX: gcc -m64 not allowed; cm3cg -m64 not allowed; as --64 not allowed 2010-12-07 14:34 jkrell * m3-sys/m3middle/src/Target.m3: reduce ALPHA_LINUX jmpbuf size, and some whitespace changes 2010-12-07 13:37 jkrell * scripts/python/targets.txt: add ALPHA_OSF, ALPHA_LINUX 2010-12-07 13:16 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: add ALPHA_LINUX 2010-12-07 13:13 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_LINUX: oh, there was already Alpha64.common 2010-12-07 13:12 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA.common: renaming from ALPHA to Alpha 2010-12-07 13:11 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA.common, ALPHA_LINUX: AMD64 to ALPHA 2010-12-07 13:10 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA.common, ALPHA_LINUX: initial copies from AMD64, unadorned ALPHA shall imply 64bit, as I believe there is only one 32bit Alpha platform 2010-12-04 09:50 jkrell * scripts/python/targets.txt: add PPC32_AIX, PPC64_AIX 2010-12-04 09:48 jkrell * m3-sys/m3cc/src/platforms.quake: AIX needs a version; pick 5.3 as that adds time64_t PPC64_AIX => powerpc, not powerpc64 (plus -maix64 or such, later...) 2010-12-04 09:32 jkrell * m3-sys/m3cc/src/platforms.quake: fix PA32_HPUX cross compiles, by using a more specific target 2010-12-04 09:31 jkrell * scripts/python/targets.txt: partial list of targets, to be augmented and used later (e.g. hudson task to build all boot archives, and later more) 2010-12-04 01:03 jkrell * m3-sys/m3cc/: gcc/gmp/AUTHORS, gcc/gmp/COPYING, gcc/gmp/COPYING.LIB, gcc/gmp/ChangeLog, gcc/gmp/INSTALL, gcc/gmp/INSTALL.autoconf, gcc/gmp/Makefile.am, gcc/gmp/Makefile.in, gcc/gmp/NEWS, gcc/gmp/README, gcc/gmp/acinclude.m4, gcc/gmp/aclocal.m4, gcc/gmp/assert.c, gcc/gmp/config.guess, gcc/gmp/config.in, gcc/gmp/config.sub, gcc/gmp/configfsf.guess, gcc/gmp/configfsf.sub, gcc/gmp/configure, gcc/gmp/configure.in, gcc/gmp/dumbmp.c, gcc/gmp/errno.c, gcc/gmp/gen-bases.c, gcc/gmp/gmp-h.in, gcc/gmp/gmp-impl.h, gcc/gmp/install-sh, gcc/gmp/longlong.h, gcc/gmp/ltmain.sh, gcc/gmp/memory.c, gcc/gmp/missing, gcc/gmp/mp_bpl.c, gcc/gmp/mp_clz_tab.c, gcc/gmp/tal-reent.c, gcc/gmp/version.c, gcc/gmp/mpn/Makefile.am, gcc/gmp/mpn/Makefile.in, gcc/gmp/mpn/README, gcc/gmp/mpn/generic/add.c, gcc/gmp/mpn/generic/add_1.c, gcc/gmp/mpn/generic/add_n.c, gcc/gmp/mpn/generic/addmul_1.c, gcc/gmp/mpn/generic/cmp.c, gcc/gmp/mpn/generic/dc_divrem_n.c, gcc/gmp/mpn/generic/diveby3.c, gcc/gmp/mpn/generic/divrem_1.c, gcc/gmp/mpn/generic/divrem_2.c, gcc/gmp/mpn/generic/get_str.c, gcc/gmp/mpn/generic/gmp-mparam.h, gcc/gmp/mpn/generic/lshift.c, gcc/gmp/mpn/generic/mul.c, gcc/gmp/mpn/generic/mul_1.c, gcc/gmp/mpn/generic/mul_basecase.c, gcc/gmp/mpn/generic/mul_fft.c, gcc/gmp/mpn/generic/mul_n.c, gcc/gmp/mpn/generic/pre_divrem_1.c, gcc/gmp/mpn/generic/rshift.c, gcc/gmp/mpn/generic/sb_divrem_mn.c, gcc/gmp/mpn/generic/sqr_basecase.c, gcc/gmp/mpn/generic/sub.c, gcc/gmp/mpn/generic/sub_1.c, gcc/gmp/mpn/generic/sub_n.c, gcc/gmp/mpn/generic/submul_1.c, gcc/gmp/mpn/generic/tdiv_qr.c, gcc/gmp/mpz/Makefile.am, gcc/gmp/mpz/Makefile.in, gcc/gmp/mpz/add.c, gcc/gmp/mpz/add_ui.c, gcc/gmp/mpz/aors.h, gcc/gmp/mpz/aors_ui.h, gcc/gmp/mpz/clear.c, gcc/gmp/mpz/cmp.c, gcc/gmp/mpz/export.c, gcc/gmp/mpz/fdiv_q.c, gcc/gmp/mpz/import.c, gcc/gmp/mpz/init.c, gcc/gmp/mpz/iset.c, gcc/gmp/mpz/neg.c, gcc/gmp/mpz/out_str.c, gcc/gmp/mpz/realloc.c, gcc/gmp/mpz/set.c, gcc/gmp/mpz/set_ui.c, gcc/gmp/mpz/sizeinbase.c, gcc/gmp/mpz/sub.c, gcc/gmp/mpz/sub_ui.c, gcc/gmp/mpz/swap.c, gcc/gmp/mpz/tdiv_qr.c, src/clean_marker.txt, src/m3makefile: at the cost of a few optimizations, remove gmp dependency also more lto/ppl/cloog removal 2010-12-02 16:53 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3, TargetT.i3: set_grain and set_align are (now) never used and are always the same (Integer.size/align), remove them 2010-12-02 16:52 jkrell * m3-sys/m3front/src/exprs/SetExpr.m3: Just always use Integer.size, not Target.Set_grain. 2010-12-02 16:21 jkrell * m3-sys/m3middle/src/TargetT.i3: speculative work in progress two goals: remove target knowledge from Target.m3, have it all come from config files use a TargetT.T variable in place of Target.i3 globals (or maybe Target.T) 2010-12-02 16:04 jkrell * m3-sys/cm3/src/M3Build.m3: just add comment as to a change to be done later 2010-12-02 09:19 jkrell * m3-sys/m3cc/: src/clean_marker.txt, src/m3makefile, gcc/gcc/m3cg/parse.c: go back to folding division enable checking on fast AMD64_LINUX and my machines: I386_DARWIN, AMD64_DARWIN, LINUXLIBC6, I386_OPENBSD This is not a great way to do this. I need to setup separate Hudson jobs for every platform, or maybe just "cross". It is ok for now. Certainly we won't release it this way! 2010-11-29 07:47 jkrell * m3-libs/m3core/src/runtime/common/RTDebugC.c: fix wrt DebugBreak 2010-11-29 07:41 jkrell * m3-libs/m3core/src/runtime/common/RTDebugC.c: remove dependency on _WIN32_WINNT: just declare IsDebuggerPresent ourselves, maybe in future fork the .i3 file and remove the extra layer on Windows 2010-11-29 07:35 jkrell * scripts/win/cvs.c: flip newlines to unix; add main() for easier compilation 2010-11-27 00:54 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: whitespace 2010-11-27 00:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: change tracing indent multiple from 2 to 4 add comment as to why we don't fold integer division, referencing see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46679 2010-11-27 00:35 rodney * m3-sys/m3gdb/gdb/gdb/value.c: Small fix to handle Modula-3 floating point types. gdb's own floating type code won't work, because it uses a C++-specific union member that overlaps Modula-3's member of the same union, giving clashes. m3gdb has its own set of floating type codes, but they need to be recognized in *many* more places. The Modula-3 floating type codes are also needed for proper type analysis. 2010-11-27 00:34 rodney * m3-sys/m3gdb/gdb/gdb/m3-valprint.c: Fix a subtle bug in printing Modula-3 set values, which did not adapt between 32- and 64-bit hosts for m3gdb. Also fix a mistyped variable name, probably harmless, but hurts readability. 2010-11-27 00:32 rodney * m3-sys/m3gdb/gdb/gdb/amd64-tdep.c: Never-done mods to support passing parameters to Modula-3 procedures in user-typed calls, on AMD64. Pass Modula-3-specific types in the right ways. 2010-11-27 00:20 rodney * m3-sys/m3gdb/gdb/gdb/amd64-tdep.c (release_branch_cm3_5_8): Never-done mods to support passing parameters to Modula-3 procedures in user-typed calls, on AMD64. Pass Modula-3-specific types in the right ways. 2010-11-27 00:19 rodney * m3-sys/m3gdb/gdb/gdb/value.c (release_branch_cm3_5_8): Small fix to handle Modula-3 floating point types. gdb's own floating type code won't work, because it uses a C++-specific union member that overlaps Modula-3's member of the same union, giving clashes. m3gdb has its own set of floating type codes, but they need to be recognized in *many* more places. The Modula-3 floating type codes are also needed for proper type analysis. 2010-11-27 00:18 rodney * m3-sys/m3gdb/gdb/gdb/m3-valprint.c (release_branch_cm3_5_8): Fix a subtle bug in printing Modula-3 set values, which did not adapt between 32- and 64-bit hosts for m3gdb. 2010-11-26 23:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: extern "C" to workaround Darwin gcc/gdb problems can't set breakpoints on C++ functions in libraries or somesuch see http://gcc.gnu.org/ml/gcc/2010-11/msg00614.html for easy way to see the problem 2010-11-26 18:36 wagner * scripts/regression/defs.sh: don't check for cm3cg on win32 2010-11-26 10:16 jkrell * m3-sys/m3cc/src/clean_marker.txt: really remove LTO I don't see us using it any time soon, if ever. 2010-11-26 08:06 jkrell * scripts/regression/hudson_pkg_tests.sh: OMIT_GCC on realclean 2010-11-26 08:04 jkrell * scripts/regression/defs.sh: OMIT_GCC on all realclean steps Maybe slightly overkill. 2010-11-26 04:53 jkrell * scripts/upgrade.sh: use xfoo = xyes 2010-11-25 16:27 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: experiment: turn of checking, see resulting time for Hudson jobs 2010-11-23 20:22 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: skip checking on FreeBSD4, I386_FREEBSD, PPC_DARWIN 2010-11-23 11:18 jkrell * m3-sys/cminstall/src/config-no-install/PA64_HPUX: -g crashes sort of see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46618 2010-11-23 10:51 jkrell * m3-sys/m3cc/src/platforms.quake: hppa64-hpux => hppa64-hpux11 2010-11-23 10:38 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: remove I386_DARWIN hack (should update clean_marker.txt but it'll cost me..) 2010-11-23 09:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Go with the obvious less heavy handed fix of only avoiding fold for integer division. This is enough for test p240 and the unoptimized code is definitely better. NOT fully tested, but really probably works. It is probably worth digging into the frontend to see if there is a difference in the types. It is probably also worth digging in the backend, like, we do put in the casts consistently, why are they only not effective for divide? I realize that a little bit of analysis goes a long way on many divide cases: "divide tends to produce small results", sort of. On the other hand, it isn't worth too much effort. Divide is the slowest least used integer operation. 2010-11-23 09:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix tree type mismatch in divide, via heavy handed fix of m3_build => build in binop; ie. not folding consider doing this only for divide and see if that suffices prepare code for insert_mn/extract_mn using bit_field_ref #if'ed out until I can multiple architectures easily enough slight optimization of insert_mn for edge cases and then don't printf about them 2010-11-23 07:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: trace fully in passes even beyond the initial read 2010-11-22 16:16 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: queue up the next one 2010-11-22 16:15 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: Do less checking on FreeBSD4/I386_FREEBSD to try to use less memory. If this still fails, the next thing to try is obvious: do no checking there. 2010-11-22 16:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: adjust assert 2010-11-22 16:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: printfs are working now! (thanks to cm3cg update working presumably) Should fix: http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-build-I386_DARWIN/83/console 2010-11-22 08:06 jkrell * m3-sys/m3cc/src/clean_marker.txt: clean again 2010-11-22 07:45 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: see http://hudson.modula3.com:8080/job/cm3-current-build-PPC_DARWIN/177/consoleFull /Users/hudson/workspace/cm3-current-build-PPC_DARWIN/cm3/scripts/regression/hudson_build_system.sh: line 40: [: missing `]' 2010-11-22 07:38 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: add more checks not fully tested 2010-11-22 07:23 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: ulimit -d unlimited put back set -e it is good to not ignore errors 2010-11-21 20:03 jkrell * scripts/python/upgrade.py: don't run m3cggen here either, like in upgrade.sh; developer can uncomment it when making changes; CVS gets confused and cvs -z3 commit always wants to commit the file, even though it is unchanged (perforce does this better, you'd check it out, copy, then p4 revert -a to revert unchanged files) 2010-11-21 20:00 jkrell * m3-sys/m3cc/: src/clean_marker.txt, src/m3makefile, gcc/gcc/m3cg/parse.c: significant fixes for configure -enable-checking - Continue using bitfield_refs for load/store, but mark the parameter addressable. Hopefully this isn't as bad as volatile, though given how effective it is, I suspect it might be. We can do better in future using component/array_ref. - don't inline nested functions whose parents are not inlinable (e.g. parent has barrier label) - don't inline any function that manipulate static link (load/pop) - ie: nested functions can be inlined, but only in the absence of exception handling or accessing parent frame; i.e. when they are used for scoping the name of the function - remove a chunk in volatilize that had the tree types wrong - add another m3_cast, that I suspected was needed anyway but couldn't prove via an error, now I have seen it error - remove the recent addition of stabilize_reference, it makes me nervous; it might be an optimization or a deoptimization and then: - allow many optimizations that we previously did not allow, in fact, all of them, but suppress a new one, flag_tree_forwprop, which I suspect actually is a simple valuable one, but I think this is the right compromise at the moment. I'm "dancing" between types, optimizations, checking, and also disabling some checks. - enable the checking in all builds not quite all checking, as all is really really really slow, though we should find a way to run that occasionally We'll want to dial this down for release to speed it back up. I think for dialing it up, maybe dedicate a host or task, and don't have that one make releases/snapshots. It could be a second host of the same type as another, e.g. a second I386_LINUX host. (We also need to enable optimizations in Hudson sometimes.) Only tested on AMD64_DARWIN. 2010-11-21 13:18 wagner * scripts/regression/hudson_build_system.sh: Only use prebuilt cm3cg if USE_PREBUILT_CM3CG parameter is set to true. This is currently not done in any Hudson job IIRC. 2010-11-21 13:00 wagner * scripts/regression/hudson_build_system.sh: disable verbose debugging output remove plin specific traces 2010-11-21 12:57 wagner * scripts/regression/defs.sh: improve traces and checking for existing cm3 installations 2010-11-21 12:23 wagner * scripts/regression/hudson_build_system.sh: Always use lastok pool as a start, not just if current doesn't exist. Can we clean up all that debug output? It's very specific and doesn't make understand the script easier... 2010-11-20 22:06 jkrell * m3-libs/m3core/src/m3core.h: use limits.h to verify integer sizes and even be portable to 16bit int 2010-11-20 22:02 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3-parse.h: forgot this file, when removing volatile, should be ok though, just warnings I expect 2010-11-20 22:01 jkrell * m3-tools/kate/.cvsignore: add .cvsignore 2010-11-20 21:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Remove the remaining volatile stores, on extract and static_link. On static_link, this helps *slightly* with enable-checking, and this is generally what we want anyway, for better optimization. (of course we still volatize in the presence of setjmp/fork) It is not enough however to remove the hack in the enable-checking, as it still hits in some cases. More to do here. 2010-11-20 13:43 jkrell * scripts/regression/defs.sh: fix for set -ex: don't fail unset NOCLEAN if it isn't set 2010-11-20 13:34 jkrell * m3-sys/m3middle/src/M3CG_BinWr.m3: a byte instead of an int suffices for sign (I don't think the m3cc backend even uses this any longer) 2010-11-20 12:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: restore TREE_SIDE_EFFECTS see recent change: Mon Nov 1 08:15:22 2010 MET (2 weeks, 5 days ago) by jkrell remove all but one use of TREE_SIDE_EFFECTS optimized m3core and libm3 are unchanged presumably unoptimized is also unchanged and maybe add a few more on all MODIFY_EXPR, BIND_EXPR, and calls and on volatile load/store (which we have very few of) It isn't automatic on those though? This is based on a quick perusal of the C frontend. I was really wondering what they do for nested functions, but ended up fixating on their add_stmt => add_to_statement_list_force vs. our add_stmt => add_to_statement_list which varies in that non-force doen't add if not TREE_SIDE_EFFECTS. I also don't know why we have TREE_USED in add_stmt. Left alone, just added a comment. Allow inlining in *modules* that have *no* nested functions, but not at all in *modules* that have *any* nested functions. I tried just nested functions and/or their parents, that's not enough. A little better but still not very good. It seems some of the previously broken cases for optimization aren't broken now. But still, overall, reenabling any/many of the few we have disabled, break somewhere. And some of this is probably related to type info or its absense. Continue punting for now. 2010-11-20 10:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-parse.h, m3gty43.h, m3gty45.h, parse.c: scan_sign: get_byte instead of get_int scan_proc, scan_label, scan_var: size_t/ptrdiff_t instead of U/WIDE/INT64, with range check I would like these to all be size_t but I think we use negative values in some places, that are to be ignored or somesuch. rejigger types a bit: mostly WIDE => INT64, UWIDE => UINT64 but then some casts to WIDE/UWIDE for printf (I considered being independent of that by using our own formating functions and string concat (ACONCAT) but nevermind, tedious and should get on to more valuable stuff.) fix warning in m3_do_fixed_insert ULONG => UINT/UINT32 use limits.h to find UINT32 (ie: actually still portable to 16 bit int) 2010-11-19 23:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix warnings in m3_do_fixed_insert I'll try BIT_FIELD_REF here soon anyway! 2010-11-19 23:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: UINT is good enough for tracing (vs. ULONG) 2010-11-19 23:02 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: try again with the printing, but not the asserts in m3_do_fixed_insert 2010-11-19 22:56 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: really, let's try to see the information before the assertion failure, try stder and stdout, also add more information 2010-11-19 22:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: very slightly undo changes to m3_do_fixed_insert the assertion failures are hitting some Hudson nodes and the fprintf(stderr) isn't showing anything to help me 2010-11-19 17:03 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: Go back -- we should initialize the words, eh? 2010-11-19 17:02 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: don't encourage -Wuninitialized, I haven't been using it lately and I guess we don't 'believe' in it, since the frontend does certain checks and from gcc's point of view we absolutely read uninitialized data (we insert bitfields into uninitialized words, maybe bitfield refs will fix that..?) 2010-11-19 17:00 jkrell * scripts/make-doc-dist.sh: "/bin/ls" => "ls" 2010-11-19 16:59 jkrell * scripts/: make-script-dist.sh, make-src-dist-all.sh: Surely using "ls" instead of "/bin/ls" is reasonable, idiomatic, efficient, etc.? 2010-11-19 16:58 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: Just in case -- another change I had locally. Turn off -g on cm3cg temporarily, go back to -gstabs. In particular, -g crashes earlier released cm3cg. (But there is no m3gdb support for our special stabs, on Darwin, and -g doesn't crash current cm3cg.) 2010-11-19 16:56 jkrell * m3-sys/m3cc/src/clean_marker.txt: try clean, for http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-m3cc-AMD64_DARWIN/63/console looks like it missed a clean a while ago?? didn't update gengtype?? (That change can probably be undone though.) 2010-11-19 16:51 jkrell * m3-libs/m3core/src/runtime/common/: RTMisc.i3, RTMiscC.c: I forgot to commit this. The aliasing runs afoul of the checks enabled now in gcc. So duplicate things. see http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-build-AMD64_FREEBSD/410/console D.10047 = RTMisc__Upper (D.5235, dataAlignment.323); ../src/runtime/common/RTCollector.m3:393: confused by earlier errors, bailing out m3_backend => 4 m3cc (aka cm3cg) failed compiling: RTCollector.mc ../src/runtime/common/RTCollector.m3: In function 'RTHeapRep__LongAlloc': ../src/runtime/common/RTCollector.m3:393:0: error: invalid conversion in gimple call * int_64 D.10047 = RTMisc__Upper (D.5235, dataAlignment.323); 2010-11-19 16:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: typos in previous 2010-11-19 12:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more information if assertion fails...this has failed on 32bit platforms, I'm being dumb on the easier stuff.. 2010-11-19 12:04 jkrell * m3-sys/m3cc/src/clean_marker.txt: clean 2010-11-19 12:04 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: Don't consider host=AMD64_DARWIN, target=I386_DARWIN to be a cross. This is to workaround here: http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-m3cc-I386_DARWIN/56/console I386_DARWIN/cm3cg: No such file or directory which was caused because I "rebooted" the Darwin Hudson nodes, i.e. reinstalled, and I guess installed AMD64 as I386, with the hope that it'd just rebuild and replace itself or such. This change isn't terrible, but we don't have a simple clean general framework for "biarch" or "multiarch" situations like this, where host != target, but host can run target. There are many others, e.g. SOLsun/SOLgnu/SPARC32_SOLARIS, NT386/Cygwin/MinGWin, I386_LINUX/AMD64_LINUX (usually but not always), SPARC32/SPARC64 Solaris, I386/AMD64 Solaris, I386/*64 NT (AMD64, IA64)m and probably other I386/AMD64 systems. 2010-11-19 11:57 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix assertion for 32bit targets see http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-build-SOLsun-opencsw-current10s/393/console (I've been testing almost exclusively AMD64_DARWIN) 2010-11-19 11:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse.c, m3-parse.h: add an extra pass so that declare_segment can get to the data that is in bind_segment, so that the size/alignment of segments is always correct; this fixes configure -enable-checking This probably also addresses the recurring problem I have had where loads in segments were broken because the segment was smaller than the load offset, e.g. on OpenBSD/mips64, and much was broken. I had been working around by blowing up the initial segment size guess. Now we get it right up front. More work is needed here for the typing/debugging of segments (aka globals). Once we turn types back on! (once they don't break things) add a lot of casts to satisfy configure -enable-checking This could use careful review. configure -enable-checking all good now *except* for static link problem, and as such shall be enabled shortly unconditionally, at least the checks that don't affect .h files (except static link problem) (that's an extra level of checking I haven't tested recently, will soon, but might be too slow; as well, we can/should dial this back for release) 2010-11-19 11:46 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: in insert/extract: "n" => "count" "i" => "offset" (I'd be ok with "position" also.) for, in my opinion, much improved clarity. 2010-11-19 09:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: STRING_AND_LENGTH => CONSTANT_STRING_AND_LENGTH 2010-11-19 09:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix a type mismatch in set operations, found by enable-checking fixed just by computing sizes a few lines later, so they use the computed underlying types *after* they are computed put a newline in the assertion message for readability (It is an easy one to trigger via human error, running cm3cg manually, such as in a debugger, without -m64) fixup the assertions a bit in m3_do_fixed_insert (I'd like to give bitfield operations another shot..) 2010-11-19 07:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: save one newline 2010-11-19 07:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: set sizes are unsigned factor some common code into binop and unop (add, subtract, multiply, etc.) 2010-11-18 22:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix types to memcmp, memcpy, memmove, memset, shift honor overlap flag in copy use memcpy/memmove for copy instead of making up a new type of the desired size and copying it specifically: int32 memcmp(addr, addr, size_t) memcpy(addr, addr, size_t) memset(addr, int32, size_t) NOT ptdiff_t memcmp(addr, addr, ptdiff_t) NOT m3mcpy(addr, addr, ptdiff_t) NOT memset(addr, ptrdiff_t, ptdiff_t) always shift unsigned and then convert back to desired type This should fix some of the configure enable-checking errors. make the parameter rearrangement in copy_n clearer 2010-11-18 22:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: this should fix Darwin assertion failure, by checking for no_uid for segments before 0 2010-11-18 22:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more information in assertion failure 2010-11-18 21:21 jkrell * m3-sys/m3cc/src/clean_marker.txt: add more extern "C" hopefully will fix the few errors at http://hudson.modula3.com:8080/view/cm3-current/job/cm3-current-m3cc-I386_SOLARIS-opencsw-current10x/121/console remove all the graphite/cloog/ppl stuff it is all optional and we don't use it, we have enough problems with the non-optional optimizations 2010-11-18 12:20 jkrell * scripts/regression/cvs.py: edit 2010-11-18 12:19 jkrell * scripts/regression/cvs.py: edits -- really just needed to change it to make it executable 2010-11-18 12:16 jkrell * scripts/regression/cvs.py: initial version 2010-11-18 11:51 jkrell * scripts/regression/cvs.py: fork off a new version :) 2010-11-18 11:50 jkrell * scripts/regression/: cvs.sh, cvs3.sh: history 2010-11-18 11:50 jkrell * scripts/regression/: cvs.sh, cvs2.sh: use history 2010-11-18 11:35 jkrell * m3-sys/m3cc/src/clean_marker.txt: let's see if opencsw picks this up with my edited bin/cvs 2010-11-18 11:34 jkrell * scripts/regression/cvs3.sh: remove echo on exec 2010-11-18 11:31 jkrell * scripts/regression/: cvs.sh, cvs2.sh, cvs3.sh: add another wrapper variant, and comments 2010-11-18 11:29 jkrell * scripts/regression/cvs2.sh: capture current wrapper from opencsw 2010-11-17 22:48 jkrell * m3-sys/m3cc/src/clean_marker.txt: try again 2010-11-17 22:36 jkrell * m3-sys/m3cc/src/clean_marker.txt: clean again 2010-11-17 21:45 jkrell * m3-sys/m3cc/src/clean_marker.txt: trigger clean 2010-11-17 13:41 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: factor set_eq/set_ne into a function that takes EQ_EXPR or NE_EXPR 2010-11-17 13:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: small cleanup enabled by being C++ 2010-11-16 09:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove unnecessary cast and mask in scan_float 2010-11-16 09:11 jkrell * m3-sys/m3middle/src/M3CG_BinRd.m3: more int vs. byte 2010-11-16 09:06 jkrell * m3-sys/: m3cc/gcc/gcc/m3cg/parse.c, m3middle/src/M3CG_BinWr.m3: use "bytes" more and "integers" less calling convention, opcode, boolean, type of float, pieces of float, m3type realistically, the only place this will make a difference is in pieces of float, since all the others are very small integers and would already be encoded in a byte; floats will be consistently encoded as 4 or 8 bytes, no more as well, the older code is more flexible -- would more automatically transition to encode opcodes beyond 247, but given that we are at 159, probably safe forever I'm also not sure the variably sized encoding is worthwhile. It is compact, understood. 2010-11-16 08:39 jkrell * m3-sys/m3cc/src/m3makefile: possible fix for shipping failing due to lack of .M3SHIP file, but code is duplicated 2010-11-16 08:32 jkrell * m3-sys/m3middle/src/M3Buf.m3: invert test for clarity 2010-11-16 08:31 jkrell * m3-sys/m3middle/src/M3Buf.m3: remove two largish lookup tables (200 bytes total) 2010-11-16 08:25 jkrell * m3-sys/m3middle/src/: M3CG_BinWr.m3, M3CG_Wr.m3: flush at 60K instead of 32K 2010-11-16 08:17 jkrell * m3-sys/m3middle/src/: M3CG_BinWr.m3, M3CG_Wr.m3: flush buffers at 32K instead of 1K 2010-11-16 08:15 jkrell * m3-sys/m3middle/src/: M3Buf.m3, M3CG_BinRd.m3, M3CG_Rd.m3: grow buffers from 2K or 4K to 64K 2010-11-15 10:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-parse.h, parse.c: better tracing; specifically print the integers for procs/labels/vars a little better than the frequent "noname" for vars 2010-11-15 10:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3-def.h: f => frequency for clearer tracing 2010-11-15 08:24 jkrell * m3-sys/m3cc/src/m3makefile: remove tab, there's a problem here where .m3ship file isn't being created 2010-11-15 07:49 jkrell * m3-sys/m3cc/src/clean_marker.txt: apply #ifdef __cplusplus extern "C" { } liberally a good idea in many code bases it seems to fix/improve debugging, though it really ought not more to do 2010-11-14 23:06 rodney * m3-sys/m3gdb/gdb/gdb/: m3-lang.c, m3-util.c (release_branch_cm3_5_8), m3-lang.c, m3-util.c, m3-valprint.c: Clean up some lingering 32/64-bit adaptation problems and some other bugs, shown up by compile warnings. There are still warnings, but should not reflect bugs. It seems too difficult to get the warnings out in a 32/46-bit size-indepenent way. They only effect code for debugging m3gdb--printing pointers in hexadecimal. 2010-11-13 17:27 rodney * m3-sys/m3gdb/gdb/gdb/: m3-lang.c, m3-util.c, m3-valprint.c (release_branch_cm3_5_8): Fix a bug in m3gdb's adaptation to 64 bits. It was taking the size of M3 INTEGER from existing infrastructure that gives the size of a C int. However, this turns out to be 32 for gcc, even on a 64-bit machine. Get the size of INTEGER from the target name instead. 2010-11-11 18:29 jkrell * scripts/regression/defs.sh: oops see http://hudson.modula3.com:8080/job/cm3-current-build-SOLsun-opencsw-current10s/374/console probably others 2010-11-11 11:56 jkrell * caltech-parser/cit_common/.cvsignore, caltech-parser/cit_util/.cvsignore, caltech-parser/drawcontext/.cvsignore, caltech-parser/hack/.cvsignore, caltech-parser/m3browserhack/.cvsignore, caltech-parser/m3tmplhack/.cvsignore, caltech-parser/paneman/.cvsignore, caltech-parser/term/.cvsignore, m3-comm/events/.cvsignore, m3-comm/netobj/.cvsignore, m3-comm/netobjd/.cvsignore, m3-comm/rdwr/.cvsignore, m3-comm/serial/.cvsignore, m3-comm/sharedobj/.cvsignore, m3-comm/sharedobjgen/.cvsignore, m3-comm/stubgen/.cvsignore, m3-comm/tapi/.cvsignore, m3-comm/tcp/.cvsignore, m3-comm/udp/.cvsignore, m3-db/db/.cvsignore, m3-db/odbc/.cvsignore, m3-db/pgodbc/.cvsignore, m3-db/postgres95/.cvsignore, m3-db/smalldb/.cvsignore, m3-db/stable/.cvsignore, m3-db/stablegen/.cvsignore, m3-demo/calculator/.cvsignore, m3-demo/cube/.cvsignore, m3-demo/dpsslides/.cvsignore, m3-demo/fisheye/.cvsignore, m3-demo/mentor/.cvsignore, m3-demo/sil/.cvsignore, m3-games/badbricks/.cvsignore, m3-games/columns/.cvsignore, m3-games/fours/.cvsignore, m3-games/maze/.cvsignore, m3-games/solitaire/.cvsignore, m3-games/tetris/.cvsignore, m3-lectern/buildlectern/.cvsignore, m3-lectern/editlectern/.cvsignore, m3-lectern/lectern/.cvsignore, m3-lectern/lecternclient/.cvsignore, m3-lectern/lecterndoc/.cvsignore, m3-lectern/lecterntohtml/.cvsignore, m3-lectern/ocr/.cvsignore, m3-libs/arithmetic/.cvsignore, m3-libs/binIO/.cvsignore, m3-libs/bitvector/.cvsignore, m3-libs/commandrw/.cvsignore, m3-libs/debug/.cvsignore, m3-libs/deepcopy/.cvsignore, m3-libs/digraph/.cvsignore, m3-libs/dps/.cvsignore, m3-libs/embutils/.cvsignore, m3-libs/fftw/.cvsignore, m3-libs/libbuf/.cvsignore, m3-libs/libm3/.cvsignore, m3-libs/libsio/.cvsignore, m3-libs/listfuncs/.cvsignore, m3-libs/m3core/.cvsignore, m3-libs/m3tk-misc/.cvsignore, m3-libs/parseparams/.cvsignore, m3-libs/patternmatching/.cvsignore, m3-libs/plplot/.cvsignore, m3-libs/realgeometry/.cvsignore, m3-libs/set/.cvsignore, m3-libs/sgml/.cvsignore, m3-libs/slisp/.cvsignore, m3-libs/sortedtableextras/.cvsignore, m3-libs/sysutils/.cvsignore, m3-libs/table-list/.cvsignore, m3-libs/tcl/.cvsignore, m3-libs/tempfiles/.cvsignore, m3-libs/unittest/.cvsignore, m3-libs/unittest-numeric/.cvsignore, m3-mail/llscan/.cvsignore, m3-mail/postcard/.cvsignore, m3-mail/webcard/.cvsignore, m3-obliq/metasyn/.cvsignore, m3-obliq/obliq/.cvsignore, m3-obliq/obliqbin3D/.cvsignore, m3-obliq/obliqbinanim/.cvsignore, m3-obliq/obliqbinmin/.cvsignore, m3-obliq/obliqbinstd/.cvsignore, m3-obliq/obliqbinui/.cvsignore, m3-obliq/obliqlib3D/.cvsignore, m3-obliq/obliqlibanim/.cvsignore, m3-obliq/obliqlibemb/.cvsignore, m3-obliq/obliqlibm3/.cvsignore, m3-obliq/obliqlibui/.cvsignore, m3-obliq/obliqparse/.cvsignore, m3-obliq/obliqprint/.cvsignore, m3-obliq/obliqrt/.cvsignore, m3-obliq/obliqsrvstd/.cvsignore, m3-obliq/obliqsrvui/.cvsignore, m3-obliq/synex/.cvsignore, m3-obliq/synloc/.cvsignore, m3-obliq/visualobliq/.cvsignore, m3-obliq/vocgi/.cvsignore, m3-obliq/voquery/.cvsignore, m3-obliq/vorun/.cvsignore, m3-pkgtools/pkgfprint/.cvsignore, m3-pkgtools/pkgobj/.cvsignore, m3-pkgtools/pkgq/.cvsignore, m3-pkgtools/pkgsrv/.cvsignore, m3-pkgtools/pkgtool/.cvsignore, m3-sys/cm3/.cvsignore, m3-sys/cm3ide/.cvsignore, m3-sys/cminstall/.cvsignore, m3-sys/dll2lib/.cvsignore, m3-sys/fix_nl/.cvsignore, m3-sys/libdump/.cvsignore, m3-sys/m3back/.cvsignore, m3-sys/m3cc/.cvsignore, m3-sys/m3cgcat/.cvsignore, m3-sys/m3cggen/.cvsignore, m3-sys/m3front/.cvsignore, m3-sys/m3gdb/.cvsignore, m3-sys/m3linker/.cvsignore, m3-sys/m3loader/.cvsignore, m3-sys/m3middle/.cvsignore, m3-sys/m3objfile/.cvsignore, m3-sys/m3quake/.cvsignore, m3-sys/m3scanner/.cvsignore, m3-sys/m3staloneback/.cvsignore, m3-sys/m3tools/.cvsignore, m3-sys/mklib/.cvsignore, m3-sys/windowsResources/.cvsignore, m3-tools/cmpdir/.cvsignore, m3-tools/cmpfp/.cvsignore, m3-tools/coverage/.cvsignore, m3-tools/dirfp/.cvsignore, m3-tools/gnuemacs/.cvsignore, m3-tools/hexdump/.cvsignore, m3-tools/m3browser/.cvsignore, m3-tools/m3bundle/.cvsignore, m3-tools/m3markup/.cvsignore, m3-tools/m3scan/.cvsignore, m3-tools/m3tk/.cvsignore, m3-tools/m3tohtml/.cvsignore, m3-tools/m3totex/.cvsignore, m3-tools/mtex/.cvsignore, m3-tools/pp/.cvsignore, m3-tools/recordheap/.cvsignore, m3-tools/rehearsecode/.cvsignore, m3-tools/replayheap/.cvsignore, m3-tools/showheap/.cvsignore, m3-tools/shownew/.cvsignore, m3-tools/showthread/.cvsignore, m3-tools/uniq/.cvsignore, m3-ui/PEX/.cvsignore, m3-ui/X11R4/.cvsignore, m3-ui/anim3D/.cvsignore, m3-ui/bicycle/.cvsignore, m3-ui/cmvbt/.cvsignore, m3-ui/codeview/.cvsignore, m3-ui/formsedit/.cvsignore, m3-ui/formsvbt/.cvsignore, m3-ui/formsvbtpixmaps/.cvsignore, m3-ui/formsview/.cvsignore, m3-ui/images/.cvsignore, m3-ui/jvideo/.cvsignore, m3-ui/m3zume/.cvsignore, m3-ui/mg/.cvsignore, m3-ui/mgkit/.cvsignore, m3-ui/motif/.cvsignore, m3-ui/opengl/.cvsignore, m3-ui/ui/.cvsignore, m3-ui/vbtkit/.cvsignore, m3-ui/videovbt/.cvsignore, m3-ui/webvbt/.cvsignore, m3-ui/zeus/.cvsignore, m3-win/import-libs/.cvsignore, m3-www/deckscape/.cvsignore, m3-www/http/.cvsignore, m3-www/proxy/.cvsignore, m3-www/web/.cvsignore, m3-www/webcat/.cvsignore, m3-www/webscape/.cvsignore: add I386_NETBSD ALPHA32_VMS ALPHA64_VMS see http://hudson.modula3.com:8080/job/cm3-current-build-I386_NETBSD/36/console (The problem the past while on I386_NETBSD was that the clock was wrong and so m3cc/gcc-4.5/configure entered an infinite loop, constantly reconfiguring.) 2010-11-11 11:43 jkrell * m3-sys/m3cc/gcc/: fixincludes/configure, gmp/configure: fix building under nohup again (e.g. on Olaf's Darwin/ppc machine) I have mail to autoconf people again to try to understand/resolve this. 2010-11-11 11:00 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: don't inline anything, to fix: elego/m3msh/src/M3MiniShell.m3: In function 'M3MiniShell__ProcessParameters': elego/m3msh/src/M3MiniShell.m3:608:0: error: variable '_nonlocal_var_rec.188' might be clobbered by 'longjmp' or 'vfork' very not good I tried a fair number of other things and nothing both compiled that and compiled the rest of the tree, at -O3. -O2 was less of a problem. It would *appear* that tree-nested copied volatility from the originals to the fields of the nonlocal struct, but nevertheless, this error occurs. (usually a warning, but I made it an error, we really don't want to let this occur) 2010-11-11 10:46 jkrell * scripts/upgrade.sh: comment out the run of m3cggen see http://hudson.modula3.com:8080/job/cm3-current-build-AMD64_FREEBSD/376/console (Locally modified m3cg.h moved to .#m3cg.h.1.6) U m3-sys/m3cc/gcc/gcc/m3cg/m3cg.h The right way to do this is: on a developer machine, always run it in hudson, run it, output elsewhere, compare, if they are not equal, error out The compromise is: on a developer machine, uncomment it in hudson, never run it if the output would vary, there is a mismatch between the frontend and backend as to the m3cg intermediate format, and hopefully there will soon follow major major errors The historical behavior matches the compromise, except the commented out code wasn't there even commented out. 2010-11-11 10:39 jkrell * scripts/make-bin-dist-min.sh: comment only 2010-11-11 10:38 jkrell * scripts/: make-bin-dist-min.sh, pkgcmds.sh, upgrade.sh: move the code from upgrade.sh that knows how to create the cfg files to function install_config in pkgcmds.sh, so that make-bin-dist-min.sh can use it, fixing this problem: http://hudson.modula3.com:8080/job/cm3-current-build-AMD64_FREEBSD/376/console cp: /ad0e/home/hudson/workspace/cm3-current-build-AMD64_FREEBSD/cm3/m3-sys/cminstall/src/config-no-install/CVS is a directory (not copied). 2010-11-11 10:29 jkrell * scripts/regression/defs.sh: rely significantly on upgrade.sh (note that the previous code did this: build buildship install-compiler.sh merely removing the second line might have sufficed in particular install-compiler.sh is perfectly willing to copy a "built local" cm3 however this all seems much cleaner ) 2010-11-11 10:22 jkrell * scripts/: pkginfo.txt, win/do-cm3-std.cmd: make "all" and "std" both be simply every line in pkginfo.txt don't have to put "std" tag on every line to make it so 2010-11-11 10:16 jkrell * scripts/python/pylib.py: more efficient equating of std==all, which already was true 2010-11-11 10:12 jkrell * scripts/do-cm3-std.sh: make 'std' == 'all' -- 'std' was filtering on 'std', whereas all is really just every line in pkginfo.txt; it was intended to have every line say 'std', but that is also pointless 2010-11-11 10:10 jkrell * scripts/do-cm3-std.sh: remove m3bundle oddity, making 'all' and 'std' almost the same, and I don't understand the difference 2010-11-11 10:01 jkrell * scripts/regression/defs.sh: no need for existance check before rm -rf 2010-11-11 09:46 jkrell * scripts/regression/hudson_build_system.sh: try set -ex 2010-11-11 09:44 jkrell * scripts/regression/hudson_pkg_tests.sh: no need for existance check before rm -rf 2010-11-11 08:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: zero struct language_function with memset 2010-11-11 08:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix warnings 2010-11-11 07:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: make get/set_volatize functions instead of macros 2010-11-10 13:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cure is worse than disease -- causes breaks elsewhere, needs more investigation 2010-11-10 13:13 jkrell * scripts/pkginfo.txt: add the elego packages 2010-11-10 13:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: don't inline nested functions inside volatized functions, to fix: elego/m3msh/src/M3MiniShell.m3: In function 'M3MiniShell__ProcessParameters': elego/m3msh/src/M3MiniShell.m3:608:0: error: variable '_nonlocal_var_rec.188' might be clobbered by 'longjmp' or 'vfork' 2010-11-10 12:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: split m3_volatize into get_volatize() and set_volatize() 2010-11-10 11:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Turn off all the new type code for now. The elego code base turned up: new source -> compiling RsrcFilter.m3 ../src/RsrcFilter.m3: In function 'RsrcFilter__Init': ../src/RsrcFilter.m3:77:0: internal compiler error: in int_mode_for_mode, at stor-layout.c:469 (even without any optimizations, target=AMD64_DARWIN) 2010-11-10 11:14 jkrell * scripts/upgrade.sh: reexpand boilerplate, so scripts can run with cd=root 2010-11-10 11:07 jkrell * scripts/: archive-pkg.sh, backup-pkgs.sh: remove unused 2010-11-10 10:59 jkrell * scripts/win/do-cm3-std.cmd: remove obsolete comment -- really build std, in order, don't need to frontload m3bundle 2010-11-10 10:58 jkrell * scripts/: create-skel.sh, do-cm3-std.bat: remove unused 2010-11-10 10:57 jkrell * scripts/make-bin-dist-min.sh: remove create-skel.sh use, replace with one mkdir all the other mkdirs are done as needed already 2010-11-10 10:42 jkrell * scripts/: boot-cm3-build-on-target.sh, boot-cm3-core.sh, boot-cm3-makefile-lib.tmpl, boot-cm3-makefile-prog.tmpl, boot-cm3-with-m3.sh, copy-bootarchives.sh, build-cross-backend.sh, pack-crossbuild.sh, ppc-cross-build.sh: remove unused files 2010-11-10 10:34 jkrell * scripts/upgrade-5.3.sh: remove obsolete/unused file 2010-11-10 10:29 jkrell * scripts/upgrade.sh: remove use of cminstall remove prebuild of m3bundle/cminstall remove the fallback upon error related to config files always follow the same steps: build w/old w/o libm3/m3core update/ship all at once: cm3, cm3cg, config rebuild all including m3core/libm3 update/ship again (just cm3 should suffice) don't bother using install-cm3-compiler.sh don't bother making backups including that the config backups weren't valuable/complete and we have so many other backups already add use of m3cggen this is only useful under development, not really in Hudson et. al. as the developer should commit the updated m3cg.h replace "run" with set -ex edit usage statement stop using "core" group it is slightly and unnecessarily inflated (cminstall, m3bundle, parseparams) use a hardcoded list reduce boilerplate running sysinfo.sh etc. make sure we can run cm3 --version and cm3cg --version before accepting them (including we have to hack M3CONFIG in case cm3.cfg is not in $PATH, lame! it has a version even if there is no cm3.cfg and no target!) Still, this doesn't work as it should -- it should ship to temp, use that to ship to a second temp, and only then update the original and delete the temps. (as well, build should just immediately ship, since it is a new empty location) (tbd) See what python/make-dist.py does. 2010-11-10 10:28 jkrell * scripts/python/make-dist.py: remove unnecessary building of m3bundle and redundant listing of mklib 2010-11-10 10:27 jkrell * scripts/python/make-dist.py: remove libm3gcdefs support 2010-11-10 09:49 jkrell * m3-sys/m3cc/src/m3makefile: remove fs_rmrec workaround 2010-11-10 08:32 jkrell * scripts/upgrade.sh: blow away the entire config directory and rebuild it from scratch, instead of only deleting the files that happen to exist currently -- this handles deletes, which are, granted, rare 2010-11-10 08:28 jkrell * m3-sys/m3cc/src/m3makefile: use deriveds for clean, including for PREBUILT use BindExport for ship, including for PREBUILT => writing into .M3SHIP or manually copying are both sleazy, and unnecessary note that cm3 -clean is still very incomplete it would help somewhat is deriveds could handle directories.. really clean just should equal realclean.. the goal of knowing every single output is laudible but probably not really realistic far far easier to know the root output directory and hope/pray/verify that the outputs are really all in it (there definitely have been violations to that!, and in a sense there still are deliberate ones, e.g. when you set M3CC_TARGET..maybe someday gcc will be multi-target and -target=all will be real.. eh..yet another C/C++ backend provides...one codegen for all targets..) 2010-11-09 11:05 jkrell * m3-libs/sysutils/src/FSUtils.m3: disable diagnostic output, but code left in, for now 2010-11-08 12:29 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA32_VMS, ALPHA64_VMS: no debug info on ALPHA32/64_VMS, at least "for now" the backend crashes..the problem looks familiar, like something already solved, but quick attempt to fix failed in particular, it was hashing null, usually the result of "UNKNOWN_LOCATION" but I tried changing the #define build_decl in parse.c to use BUILTINS_LOCATION if input_location == UNKNOWN_LOCATION, no luck should really find out what decl it was.. 2010-11-08 12:20 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: quash warnings about not handling every enum value in a switch 2010-11-08 11:46 jkrell * m3-sys/m3cc/gcc/gmp/gmp-impl.h: fix integer types 2010-11-08 11:30 jkrell * m3-sys/cminstall/src/config-no-install/VMS.common: if not defined around setting TARGET_ENDIAN it is readonly and always already set but also, indeed, VMS is always little endian 2010-11-08 11:24 jkrell * m3-sys/m3cc/src/m3makefile: extend support to OSF4 via -enable-obsolete 2010-11-08 10:18 jkrell * scripts/: sysinfo.sh, sysinfo-new.sh, regression/defs.sh: attempt to fix for set -ex (PPC_DARWIN) 2010-11-08 08:39 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: possible fix for set -ex 2010-11-08 01:48 jkrell * m3-sys/m3cc/src/clean_marker.txt: clean 2010-11-08 00:05 jkrell * m3-libs/m3core/src/text/TextLiteral.i3: reenable crossing from 32bit to 64bit 2010-11-07 21:57 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: probe for OpenGL on all Solaris targets -- it is missing on opencsw current10s 2010-11-07 21:45 jkrell * m3-sys/m3cc/: src/clean_marker.txt, src/m3makefile, gcc/gcc/m3cg/Make-lang.in, gcc/gcc/m3cg/m3-convert.c, gcc/gcc/m3cg/m3-parse.h, gcc/gcc/m3cg/parse.c: for some reason, m3-convert.c needs to be combined with parse.c in particular, on Solaris 2.10 with Sun CC, the value of TREE_TYPE (expr) changes from the caller and convert. The value in convert is garbage and it crashes. This doesn't make sense, but I think it is ok to make the change without understanding the rest of the problem. If history preservation is paramount, we could #include it instead. I didn't just merge the files, I also made edits to the convert function. It had two temporaries that were identical to a paramter -- removed. Current gcc 4.5 c-convert.c uses a switch instead of an if-latter, done. removed support for vector/fixed/decimalfloat in a few cases, e.g. INIT_FLOAT, LOAD_ADDRESS, use a local instead of changing what is now a "persistant" member variable fix the tracing during the handler calls (op vs. get_op()) support m3_break_lineno during the handler calls (far more interesting there, unless you want to debug the reading of the .mc file) NOTE: the tracing during handler calls doesn't print the parameters; that is only done in the reading pass. That can be fixed. Generally the tracing isn't interesting in the reading pass, only if there is a bug in reading. 2010-11-07 21:44 jkrell * m3-sys/m3cc/gcc/gmp/: Makefile.am, Makefile.in, ansi2knr.1, ansi2knr.c, mpn/Makefile.in, mpz/Makefile.in: trim K&R support 2010-11-07 01:54 jkrell * m3-sys/m3cc/gcc/gmp/mpn/Makefile.in: just remove the K&R stuff, gcc requires ANSI C, or even C++ 2010-11-07 01:50 jkrell * m3-sys/m3cc/gcc/gmp/mpn/Makefile.in: fix the K&R case 2010-11-07 01:48 jkrell * m3-sys/m3cc/gcc/gmp/mpn/: Makefile.am, Makefile.in, generic/add.c, generic/add_1.c, generic/cmp.c, generic/sub.c, generic/sub_1.c: add back add, sub, add_1, sub_1, cmp, for when not optimizing 2010-11-07 01:08 jkrell * m3-sys/m3cc/gcc/gmp/gmp-h.in: Undefined first referenced symbol in file __gmpn_add /home/jkrell/dev2/cm3/m3-sys/m3cc/SOLsun/./gmp/.libs/libgmp.a(add.o) __gmpn_cmp /home/jkrell/dev2/cm3/m3-sys/m3cc/SOLsun/./gmp/.libs/libgmp.a(add.o) __gmpn_sub /home/jkrell/dev2/cm3/m3-sys/m3cc/SOLsun/./gmp/.libs/libgmp.a(add.o) __gmpn_add_1 /home/jkrell/dev2/cm3/m3-sys/m3cc/SOLsun/./gmp/.libs/libgmp.a(add_ui.o) __gmpn_sub_1 /home/jkrell/dev2/cm3/m3-sys/m3cc/SOLsun/./gmp/.libs/libgmp.a(add_ui.o) try extern "C" 2010-11-07 00:36 jkrell * m3-sys/m3cc/src/gnucc.common: comment only 2010-11-07 00:35 jkrell * m3-sys/m3cc/src/gnucc.common: more favoring cc/CC, on Solaris 2010-11-07 00:34 jkrell * m3-sys/m3cc/src/gnucc.common: append env 2010-11-06 23:47 jkrell * m3-sys/m3cc/src/gnucc.common: fix 2010-11-06 17:34 jkrell * m3-sys/m3cc/src/gnucc.common: steer toward cc and CC; needs more work maybe 2010-11-06 17:04 jkrell * m3-sys/m3cc/gcc/gmp/gmp-impl.h: "gmp-impl.h", line 2812: warning: attribute "mode" is unknown, ignored "gmp-impl.h", line 2812: warning: attribute parameter "QI" is undefined "gmp-impl.h", line 2813: warning: attribute "mode" is unknown, ignored "gmp-impl.h", line 2813: warning: attribute parameter "SI" is undefined "gmp-impl.h", line 2814: warning: attribute "mode" is unknown, ignored "gmp-impl.h", line 2814: warning: attribute parameter "SI" is undefined "gmp-impl.h", line 2815: warning: attribute "mode" is unknown, ignored "gmp-impl.h", line 2815: warning: attribute parameter "DI" is undefined "gmp-impl.h", line 2816: warning: attribute "mode" is unknown, ignored "gmp-impl.h", line 2816: warning: attribute parameter "DI" is undefined with SunStudio 12, add if defined(__GNUC__) and go down portable path. 2010-11-06 12:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more output for failing assert..but I'll go ahead and build AMD64_DARWIN 2010-11-06 12:42 jkrell * m3-sys/m3cc/gcc/include/ansidecl.h: remove newline in code that goes together 2010-11-06 12:40 jkrell * m3-sys/m3cc/gcc/include/ansidecl.h: omitting unused parameter names doesn't work, because they are sometimes used, 'unused' means 'do not warn if not used, but it might be used' 2010-11-06 11:55 jkrell * m3-sys/m3cc/gcc/include/ansidecl.h: try a little harder, but not much more on this.. 2010-11-05 23:26 jkrell * m3-sys/m3cc/src/clean_marker.txt: trigger clean 2010-11-05 22:18 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: collect compiler versions 2010-11-05 21:42 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: collect compiler versions 2010-11-05 18:27 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse.c, m3-parse.h: fixes for Darwin/arm 2010-11-05 18:26 jkrell * m3-sys/cminstall/src/config-no-install/ARM_DARWIN: fix: -m32 not valid, default iPhonePrefix to empty 2010-11-05 18:03 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix previous for 4.5 2010-11-05 18:02 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-parse.h, parse.c: some fixes for gcc 4.2 (gcc-apple, Darwin/arm/iphone) 2010-11-05 15:34 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: tone down tracing wrt view_convert 2010-11-05 15:33 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: turn off view_convert until I am sure to do testing targetted at it, it is conceivable that building the world and running Juno isn't enough 2010-11-05 15:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: oops, and enable view_convert 2010-11-05 15:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use view_convert if the stars align, which is sometimes..reallly need to find out what is going on here.. 2010-11-05 15:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: turn off view_convert, it is still failing 2010-11-05 11:45 jkrell * m3-sys/m3cc/gcc/gmp/: gmp-h.in, gmp-impl.h: neuter the C++/iosfwd/locale stuff see http://hudson.modula3.com:8080/job/cm3-current-m3cc-SOLsun-opencsw-current10s/170/console In file included from /usr/include/locale.h:50, from /opt/SUNWgccfss/4.2.1/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/4.2.1/../../../../include/c++/4.2.1/clocale:51, from /opt/SUNWgccfss/4.2.1/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/4.2.1/../../../../include/c++/4.2.1/sparc-sun-solaris2.10/bits/c++locale.h:47, from /opt/SUNWgccfss/4.2.1/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/4.2.1/../../../../include/c++/4.2.1/iosfwd:45, from /home/m3hudson/current10s/workspace/cm3-current-m3cc-SOLsun-opencsw-current10s/cm3/m3-sys/m3cc/SOLsun/./gmp/gmp.h:28, from ../../gcc-4.5/gcc/double-int.h:24, from ../../gcc-4.5/gcc/tree.h:30, from ../../gcc-4.5/gcc/langhooks.c:28: /usr/include/libintl.h:50: error: expected unqualified-id before 'const' /usr/include/libintl.h:50: error: expected `)' before 'const' /usr/include/libintl.h:50: error: expected initializer before 'const' /usr/include/libintl.h:62: error: new declaration 'char* fake_ngettext(const char*, const char*, long unsigned int)' ../../gcc-4.5/gcc/intl.h:28: error: ambiguates old declaration 'const char* fake_ngettext(const char*, const char*, long unsigned int)' 2010-11-05 11:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix previous to compile! 2010-11-05 11:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Try a different assert in loophole about the type sizes matching. See http://hudson.modula3.com:8080/job/cm3-current-build-AMD64_FREEBSD/316/consoleFull +++ cm3 -build -override $RARGS -DROOT='/ad0e/home/hudson/workspace/cm3-current-build-AMD64_FREEBSD/cm3' +++ ../src/geometry/Transform.m3: In function 'Transform__Hash': ../src/geometry/Transform.m3:225:0: internal compiler error: in handler, at m3cg/parse.c:5270 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. m3_backend => 4 m3cc (aka cm3cg) failed compiling: Transform.mc ../src/pickle/ver2/PickleStubs.m3: In function 'PickleStubs__SwapReal': ../src/pickle/ver2/PickleStubs.m3:562:0: internal compiler error: in handler, at m3cg/parse.c:5270 Please submit a full bug report, w 2010-11-05 10:57 jkrell * m3-sys/m3cc/gcc/gmp/gmp-h.in: remove "using std::FILE" see http://hudson.modula3.com:8080/job/cm3-current-m3cc-AMD64_LINUX/74/console 2010-11-05 10:41 jkrell * m3-sys/m3cc/src/m3makefile: forgot this again (m3-parse.h) 2010-11-05 10:34 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse.c: more C++ (declare variables anywhere) 2010-11-05 10:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-def.h, m3-parse.h, parse.c: Again with the small objects and virtual functions and splitting read/trace. Small change here to scan_float and for now no trace_float. caltech-parser ok. Problem probably optimization related. Will be looked into, later. 2010-11-05 10:02 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse.c, m3-def.h: go back a version, roughly, due to problem with caltech-parser 2010-11-05 09:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-def.h, m3-parse.h, parse.c: separate reading/scanning from tracing because we really want to trace probably everything up front and whenever we process an opcode use a vector of pointers to small heap allocated m3cg_op_ts seems no slower use virtual functions 2010-11-05 07:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3-parse.h: let's forward declare more stuff, in a separate file, to be sure not to have to move things around to suit (not yet used, but soon) 2010-11-05 07:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add comment 2010-11-05 07:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: comment out unused parameters (C++) 2010-11-05 06:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/Make-lang.in: link with CXX 2010-11-05 06:27 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix most of the typos/errors/warnings 2010-11-05 06:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in, config-lang.in: back to parse.c but with configure -enable-build-with-cxx 2010-11-05 06:14 jkrell * m3-sys/m3cc/: src/clean_marker.txt, src/m3makefile, gcc/gcc/m3cg/parse.c, gcc/gcc/m3cg/parse.cpp: work in progress, temporarily broken: it wasn't compiling parse.cpp, it was just compiling the old parse.c Start fixing that. At least for 4.5. This won't work for ARM_DARWIN. 2010-11-05 06:04 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.cpp: remove void* and casts 2010-11-05 05:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.cpp: remove extra serialization, access member data instead 2010-11-05 05:11 jkrell * m3-sys/m3cc/: src/m3makefile, gcc/gcc/m3cg/Make-lang.in, gcc/gcc/m3cg/config-lang.in, gcc/gcc/m3cg/m3-def.h, gcc/gcc/m3cg/parse.c, gcc/gcc/m3cg/parse.cpp: switch to C++, I want to use 'scope tricks' to avoid repeating the serialization macros in the handler functions -- the handlers will access member data instead 2010-11-05 05:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: restore debug_struct to reveal_opaque 2010-11-04 21:31 jkrell * m3-sys/m3cc/src/m3makefile: forgot this file -- needed to copy m3-def to gcc-4.5 directory 2010-11-04 07:42 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-def.h, m3gty43.h, m3gty45.h, parse.c: typeid => type_id for C++ compat 2010-11-04 07:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: be more mindful of alignment 2010-11-04 06:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: tune initial allocation way up -- such that m3x86.m3 doesn't need a realloc 2010-11-03 23:15 rodney * m3-sys/m3gdb/gdb/gdb/m3-eval.c: Fix m3gdb to tolerate misaligned pseudo-pointers and print them as integers. 2010-11-03 23:12 rodney * m3-sys/m3gdb/gdb/gdb/m3-eval.c (release_branch_cm3_5_8): Fix m3gdb to tolerate misaligned pseudo-pointers and print them as integers. 2010-11-03 15:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: grow buffer before serialize, so as to avoid memcpy 2010-11-03 14:41 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: very very minor reordering to mimic historical ordering; the reason things were the other way is just because I forgot these 3 initially and then added them at the start 2010-11-03 14:34 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-def.h, parse.c: restructure so that we can make multiple efficient passes over the m3cg data specifically, declare structs to hold each call's data and then "parse" the data into a packed array of such structs and then loop over that array so far, loop just once, but that will change neuter the "replay" mechanism, as this work is meant to replace it the file m3-def.h defines the structs case_jump is a special case The intent here is to handle circular (or out of order) types reasonable. 2010-11-03 13:39 jkrell * m3-sys/m3back/src/M3C.m3: work in progress 2010-11-03 13:05 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: mark all pointers as aliasable to all; this is just out of paranoia and should maybe be considered more; another thing to consider is being more pessimistic in unsafe modules 2010-11-03 13:00 jkrell * m3-sys/m3back/src/M3C.m3: fix warning: remove set_runtime_hook 2010-11-03 12:55 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3-def.h: work in progress 2010-11-03 12:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3-def.h, m3cg.def: work in progress 2010-11-03 08:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3cg.def: whitespace/work in progress 2010-11-03 08:50 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3cg.def: whitespace/work in progress 2010-11-03 08:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3cg.def: work in progress I would like to make multiple passes over the m3cg intermediate form, without "reparsing" it more than once. So, I would like to read it into an array of structs. So, I would like the "marshalling" to be more data driven/declarative, such as by using the existing declarativeness but in a slightly more malleable form. That is -- a "data" file that can be evaluated under the influence of varying macros. Such as, one set of macros to declare struct fields, and another set of macros to do the marshalling like currently. 2010-11-03 06:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: also use cgraph_mark_needed_node on all functions 2010-11-02 22:01 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use DECL_PRESERVE_P to preserve all functions it isn't clear if one is supposed to muck around with the cgraph nodes the way I was don't do anything with typenames, in the new fangled type effort 2010-11-01 10:03 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: struct cgraph_node.needed = true instead of TREE_PUBLIC = true to keep all functions, without making them extern or exported from shared objects 2010-11-01 09:59 jkrell * scripts/python/upgrade.py, m3-sys/m3cggen/src/Main.m3, m3-sys/m3middle/src/M3CG_BinRd.m3, m3-sys/m3middle/src/M3CG_Binary.i3, m3-sys/m3cc/gcc/gcc/m3cg/m3cg.h, m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove the rest of set_runtime_hook 2010-11-01 09:37 jkrell * m3-sys/: m3cggen/src/Main.m3, m3middle/src/M3CG.m3, m3middle/src/M3CG_BinRd.m3, m3middle/src/M3CG_BinWr.m3, m3middle/src/M3CG_Binary.i3, m3middle/src/M3CG_Check.m3, m3middle/src/M3CG_Ops.i3, m3middle/src/M3CG_Rd.m3, m3middle/src/M3CG_Wr.m3, m3back/src/M3C.m3, m3back/src/M3x86.m3, m3cc/gcc/gcc/m3cg/parse.c: remove get_runtime_hook, set_runtime_hook small part remains, until I work m3cggen into upgrade.py so that m3cg.h can be more easily updated 2010-11-01 09:34 jkrell * scripts/pkginfo.txt: move m3cggen back into base/core/front because it should actually be used by "upgrade", such as when operations are added/removed from m3cg 2010-11-01 08:35 jkrell * m3-sys/m3front/src/misc/: CG.i3, CG.m3: remove get_runtime_hook 1) it is unused 2) it is incompatible with the unidirectional nature of the m3cc backend, so it can't ever be used, in some sense (The middle end could perhaps cache the values and feed them back the frontend? The frontend could do it itself?) 2010-11-01 08:24 jkrell * m3-sys/m3front/src/misc/: CG.i3, CG.m3: remove unused Set_runtime_hook 2010-11-01 07:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove all but one use of TREE_SIDE_EFFECTS optimized m3core and libm3 are unchanged presumably unoptimized is also unchanged 2010-11-01 06:46 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add comment that flag_ipa_cp_clone breaks m3tohtml 2010-11-01 06:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix comment 2010-11-01 06:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: allow most optimizations, again, but not dse (dead store elimination) or sra (aggregate to scalar conversion) 2010-11-01 05:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: disable lots of optimizations, again, at least it can compile everything.. 2010-10-31 22:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: alas: == package /Users/jay/dev2/cm3/m3-demo/fisheye == ../src/GraphData.m3: In function 'GraphData__ReadEdge': ../src/GraphData.m3:308:0: internal compiler error: in create_tmp_var, at gimplify.c:505 so disable a few optimizations again 2010-10-31 22:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: allow two more optimizations unfortunately, dead store elimination seems to be the problem dead store elimination is a nice sound optimization disabled prototype to use view_convert on load/store this seemed to break things 2010-10-31 20:55 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: allow back a few more optimizations 2010-10-31 13:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: allow back a few optimizations 2010-10-31 13:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: -O3 is broken again disable some optimizations I checked and it didn't seem to be caused the loophole/view_convert change or the subrange declaration change. 2010-10-31 13:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: remove all the type stuff, I'm not sure it will be structured that way 2010-10-31 12:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/m3gty45.h: work in progress: in-memory deserialized form of m3cg, use a union, use the property gty annotations for union 2010-10-31 12:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix unfortunate gcc warnings 2010-10-31 12:33 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: loophole: for integer to integer, continue using cast otherwise, assert the types are equal size and use view_convert I looked at m3core and libm3, but I forget what happened in m3core, possibly nothing. In libm3, unoptimized, this affected only Transform.Hash and PickleStubs.SwapReal, both slightly positively. In the optimized case, this affected only Transform.Hash, a slight reordering but not any obvious improvement. (Maybe it is slightly faster but it isn't *obvious*.) loophole is of course rare. We might want to do similar in load/store, which will have bigger effect. 2010-10-29 19:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h: I forgot to commit these files. 2010-10-29 19:13 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: consider VIEW_CONVERT_EXPR for loophole 2010-10-28 07:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: o => offset declare subranges properly work in progress: declare open arrays properly introduce UNSIGNED_INTEGER besides INTEGER among the marshaling macros -- that assert the value is >= 0 and use it a lot change more types to WIDE or UWIDE disabled prototype to find where type information is inadequate (e.g. open arrays) 2010-10-21 10:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: exprerimental work in progress, but actually making progress (disabled here) added function m3_deduce_field_reference and it sometimes work note that it uses linear search, lame would be really great to do something else here.. fields should probably be given typeids, based on their containing record and name or offset, and then we can use binary search against all fields, OR fields should be given small indices 0..n per containing record struct lang_type could/should be brought to bear note that array references still have nothing done for them (even this m3_deduce_field_reference isn't really doing anything yet) widen current_record_size from ULONG to UWIDE so 32bit host can target 64bit and deal with large records (frontend is still broken here, due to use of INTEGER instead of Target.Int or LONGINT (32bit C implementations have had 64bit integers for something like 20 years now..) fix type comparison in load/store to account for the fact that we now have many pointer types -- make all pointer types compare equal change the level of indirection on pointers to records This might fix debugging them, not yet tested. 2010-10-21 07:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cosmetic; more substantial coming soon 2010-10-21 07:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add pointer_size and bits_per_unit visible in debugger, unlike the macros BITS_PER_UNIT, POINTER_SIZE 2010-10-21 07:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: long => WIDE so that 32bit hosts can target 64bit and access fields/sizes beyond 2GB (some of these should probably be UWIDE but that ignored) 2010-10-21 07:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove whitespace from ends of lines 2010-10-21 06:43 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cosmetic -- casts to ULONG in tracing, uppercase %lX in tracing, remove space in cast operator 2010-10-20 09:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: typedef char* PSTR; typedef HOST_WIDE_INT WIDE; #define WIDE_PRINT_HEX HOST_WIDE_INT_PRINT_HEX #define WIDE_PRINT_DEC HOST_WIDE_INT_PRINT_DEC 2010-10-20 07:47 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: typedef const char* PCSTR; typedef unsigned char UCHAR; typedef unsigned int UINT; typedef unsigned long ULONG; typedef unsigned HOST_WIDE_INT UWIDE; 2010-10-19 22:27 jkrell * m3-sys/m3back/src/M3x86.m3: xor is not reversible -- the new value is in memory and not atomically readable; only add/sub are reversible 2010-10-19 10:55 jkrell * m3-sys/m3back/src/: Codex86.i3, Codex86.m3, M3x86.m3, Stackx86.i3, Stackx86.m3: atomic add, sub, xor of 32bit variables don't need to use compare/exchange loop (not enabled, not tested, odds of working slim, but it is in the right direction) 2010-10-19 10:28 jkrell * scripts/win/cvs.c: whitespace 2010-10-19 10:28 jkrell * scripts/win/dos2unix.c: fix comment 2010-10-19 10:27 jkrell * scripts/win/: cvs.c, dos2unix.c: smaller 2010-10-19 10:13 jkrell * scripts/win/dos2unix.c: change it from cvs to dos2unix 2010-10-19 09:49 jkrell * scripts/win/dos2unix.c: copy of cvs.c 2010-10-19 08:55 jkrell * m3-sys/m3back/src/: Codex86.m3, M3x86.m3, M3x86Rep.i3, Stackx86.m3: go back from IsTypeDoubleInt to IsType64 2010-10-19 08:46 jkrell * m3-sys/m3back/src/M3x86.m3: just some whitespace changes 2010-10-19 08:45 jkrell * m3-sys/m3back/src/: Codex86.m3, M3x86.m3, M3x86Rep.i3, Stackx86.m3: rename TypeIs64 to TypeIsDoubleInt many other "64" remain however and I doubt we'll retarget this to AMD64 or any other architecture more likely to generate C In gcc parlance, SI is single int, 32bits, DI is double int, 64bits however here that's not what I mean, but rather an integer that uses two registers. It is tempting to call it just "double", but that means double precision floating point. 2010-10-19 08:03 jkrell * m3-sys/m3back/src/: Codex86.i3, Codex86.m3, M3x86.m3: back to bt/bts/btr/btc instructions for set_member, set_singleton They are not in fact slow/atomic, I was mislead by a comment in gcc/config/i386/i386.md and I thought other finds on the Internet. 2010-10-16 12:31 jkrell * m3-sys/m3back/src/Codex86.m3: parens 2010-10-16 12:31 jkrell * m3-sys/m3back/src/Codex86.m3: don't use push/pop to load esp with a one byte constant -- highly highly unlikely to ever hit this 2010-10-16 12:26 jkrell * m3-sys/m3back/src/Codex86.m3: just add a comment 2010-10-16 12:23 jkrell * m3-sys/m3back/src/Codex86.m3: handle -1 before handling -128 through 127 (3 byte or with -1, one instruction, vs. 3 bytes 2 instructions..anyway..I don't know the cycle count or scheduling nuances, but emulate the C compiler!) 2010-10-16 12:12 jkrell * m3-sys/m3back/src/Codex86.m3: push one byte integers with 2 byte 0x6A instruction instead of 5 byte 0x68 instruction load one byte integers into registers with 2 byte push followed by 1 byte pop, instead of 5 byte move (except for 0 which is xor and 1 which is xor/inc) pessimize this and previous xor/inc for 1 to only handle 32 bit integers (it'd work for 64bit as xor/xor/inc but we might check for the overflow upon inc, conditional branch, etc. (0 is still xor; a pair of xors is still better than almost anything else; notice though that there are optimizations based on knowing you are modifying two registers, where one is computed from the other, such as via a mov or mov/inc) 2010-10-16 11:06 jkrell * m3-sys/m3back/src/Codex86.m3: don't duplicate code -- having assignment be an expression sure would be handy! 2010-10-16 10:58 jkrell * m3-sys/m3back/src/: Codex86.m3, M3x86Rep.i3: generate the constant 1 with xor and inc for a total of 3 bytes instead of a 5 byte mov, just like the C compiler does (when optimizing for size instead of speed) 2010-10-16 10:44 jkrell * m3-sys/m3back/src/: Codex86.i3, Codex86.m3: add "interlocked" or "Interlocked" to the various BitOp, BitTestOp, BitTestAndSetOp identifiers, to indicate that they are, alas, interlocked. They would be so much more useful of they were only interlocked if they had a lock prefix. These functions are now unused and should probably be removed. 2010-10-16 10:39 jkrell * m3-sys/m3back/src/M3x86.m3: go back to function calls for set_member and set_range The inline code was wonderfully small, but unfortunately had an implied and unremovable interlock, which is not good. 2010-10-16 10:31 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: remove comments that say set_member and set_singleton are never used, as I'm inclined at least temporary to go back to function calls 2010-10-16 10:26 jkrell * m3-libs/m3core/src/Csupport/Common/test_hand.c: add __fastcall versions of set_member, set_singleton: point being to read the code and have m3back use it instead of what currently does, which is very very well size optimized but not very well speed optimized, since the instruction it uses imply an interlock, unfortunate 2010-10-16 10:22 jkrell * m3-libs/m3core/src/m3core.h: move up #ifdef _MSC_VER #pragma warning(disable...) in order to quash: ../..\m3core.h(33) : warning C4668: '__GNUC__' is not defined as a preprocessor macro, replacing with '0' for '#if/#elif' when compiling with -Wall 2010-10-16 10:19 jkrell * m3-libs/m3core/src/runtime/common/RTUntracedMemoryC.c: remove K&R 2010-10-16 10:15 jkrell * m3-libs/: m3core/src/C/Common/CstdioC.c, m3core/src/C/Common/CstdlibC.c, m3core/src/C/Common/CstringC.c, m3core/src/Csupport/Common/dtoa.h, m3core/src/Csupport/Common/hand.c, m3core/src/runtime/WIN32/RTOSc.c, m3core/src/runtime/common/RTIOc.c, m3core/src/runtime/common/RTMiscC.c, m3core/src/runtime/common/RTUntracedMemoryC.c, m3core/src/runtime/ex_frame/RTStackC.c, m3core/src/thread/WIN32/ThreadWin32C.c, m3core/src/unix/Common/Uexec.c, m3core/src/unix/Common/Uin.c, m3core/src/unix/Common/Unetdb.c, m3core/src/unix/Common/UnixC.c, m3core/src/unix/Common/UnixLink.c, m3core/src/unix/Common/Uprocess.c, m3core/src/unix/Common/UtimeC.c, m3core/src/unix/Common/Uuio.c, sysutils/src/SystemC.c: Remove the _DLL/_MT hacking that I had put in, which purported to let one set of object code link with either msvcrt.lib or libcmt.lib. Not a bad idea, not a bad implementation, but a bit on the unsupported side. If user really wants to use libcmt.lib, he should modify the config file and rebuild everything (esp. m3core). We should possibly make such a configuration in Hudson. We should possibly automatically multiply out compile/link for any directories that contain any C? And then build_standalone could imply libmt.lib. Not a bad idea, but unlikely to happen. 2010-10-16 09:27 jkrell * m3-sys/m3back/src/: M3C.i3, m3makefile: compile nascent C backend again, there is almost nothing actually here 2010-10-16 09:24 jkrell * m3-sys/m3back/src/M3C.m3: work in progress: it compiles and has a few lines of real code, but is missing *a lot* 2010-10-16 08:42 jkrell * m3-sys/m3back/src/M3C.m3: work in progress 2010-10-16 08:39 jkrell * m3-sys/m3back/src/M3C.m3: work in progress 2010-10-16 06:19 jkrell * m3-sys/m3back/src/: M3C.i3, M3C.m3: work in progress 2010-10-16 05:33 jkrell * scripts/win/cvs.c: remove wcscmp use and tabs 2010-10-13 16:31 jkrell * scripts/: regression/hudson_build_system.sh, pkgmap.sh: fix plin instrumentation that broke everything 2010-10-13 16:29 jkrell * scripts/python/pylib.py: experimental: don't set M3CONFIG into the source tree; e.g. so we can upgrade from SOLsun with stack walker to without 2010-10-13 16:10 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS.common: cm3 bootstapped ok with -O2 so let's try that 2010-10-13 16:01 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS.common: go back a version: unresolved symbols, probably we can just disable a small number of optimizations though 2010-10-13 15:57 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS.common: let it be -O3 2010-10-13 11:18 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS.common, m3-sys/m3cc/gcc/gcc/m3cg/parse.c, m3-sys/m3cc/src/clean_marker.txt, m3-sys/m3cc/src/m3makefile, m3-libs/m3core/src/runtime/m3makefile, m3-sys/m3middle/src/Target.m3, m3-libs/m3core/src/runtime/SOLgnu/m3makefile, m3-libs/m3core/src/runtime/SOLgnu/m3makefile-old, m3-libs/m3core/src/runtime/SOLsun/m3makefile, m3-libs/m3core/src/runtime/SOLsun/m3makefile-old: disable Solaris/sparc32 stack walker switch Solaris/sparc32 to gcc 4.5 backend function.c: make failure to volatilize when setjmp/vfork present an error instead of a warning add missing volatilization pin Solaris/sparc32 at -O1 in the config file as -O2/-O3 were seen to hit internal compiler errors (assertion failures) remove the "all volatile" paths from parse.c (since they were only for Solaris/sparc32's stack walker) 2010-10-09 11:36 jkrell * m3-sys/m3cc/src/m3makefile: cleanup the "NOACTION" feature, by wrapping the whole thing in a function and using early return NOTE: This would also be perfectly clean and natural using goto. Goto is not evil! Compare it to the contortions people go through to avoid it. Those are evil. It would be evil to not have the option of if/else/switch/for/while/break/continue, but not having goto is also evil. let PREBUILT_CM3CG work with cross builds, by copying to build_dir instead of just dot (move the code down to after build_dir is computed/created) PREBUILT_CM3CG doesn't use $WORKSPACE but requires it be set. Why? To avoid honoring it in other random settings? Let PREBUILT_CM3CG also work if $USER = jay. Really: we should not be defining our own environment variables that don't start with CM3_! Even that isn't great. And we should try to use cm3 -D options instead? Environment variables are fairly flat namespace (though you can use underscores and long names) and they flow into unrelated processes, so perhaps to be avoided. However they also flow automatically into child processes, which can be good, when you don't control the command lines all the way through. (It turns out, there's just no perfect solution here. You can also store configuration state globally like in files or registry, but then you can't scope it to a particular process or process tree. A good hybrid, if there is much parameters/state, is stash it in a temporary file/directory, and put that file/directory path in an environment variable -- ie: use just one environment variable). 2010-10-07 12:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: go back a version 2010-10-07 12:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: safe keeping: use volatile more consistently and more often 2010-10-07 10:40 jkrell * m3-sys/m3cc/src/gnucc.common: gcc 3.4.3 can't compile gcc 4.5.1 targeting AMD64_SOLARIS see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45929 It would be nice to split up the files for portability. So favor gcc 4.x on the opencsw machines, where we can find it. When doing native AMD64_SOLARIS builds. Other folks will have to modify $PATH. Note that cc in path should and I think also does take precedence. We generally favor Sun cc. Eh? 2010-10-07 09:46 jkrell * scripts/: pkgmap.sh, regression/hudson_build_system.sh: instrumentation: try to find when the PPC_LINUX directory permisions get broken, if indeed it is even within here; maybe should reinstall OS... 2010-10-07 07:46 jkrell * m3-sys/m3cc/src/m3makefile: switch AMD64_SOLARIS to gcc 4.5.1 backend It worked far enough to build and run a cross/boot cm3. workaround http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45927 2010-10-06 14:59 jkrell * m3-sys/m3cc/src/m3makefile: move SPARC32_LINUX to gcc 4.5.1 backend still testing but looking ok, bootstrap cm3 runs ok move I386_OPENBSD to gcc 4.5.1 backend I think I tested it. It is the only I386 target not moved. move MIPS64_OPENBSD to gcc 4.5.1 backend Not tested. This platform hasn't really arrived and isn't very likely -- SGI hardware, which I do have.. move MIPS64EL_OPENBSD to gcc 4.5.1 backend. Not tested. Much more viable than MIPS64_OPENBSD as there is recently developed laptops running it (yes, I have one). (They run Linux too.) 2010-10-06 14:52 jkrell * scripts/python/pylib.py: fidget with pic/app-regs flags -- looking better for SPARC32_LINUX but still not for SPARC32_SOLARIS 2010-10-06 14:44 jkrell * m3-sys/cminstall/src/config-no-install/: SPARC.common, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD: work in progress (or possibly done) on pic/regs flags (SPARC64 less actively tested!) 2010-10-06 14:20 jkrell * m3-sys/cminstall/src/config-no-install/: SPARC64.common, SPARC.common, SPARC32_LINUX: just remove the second trailing newline 2010-10-06 12:47 jkrell * m3-sys/cminstall/src/config-no-install/NetBSD.common: fix typo, now PklFonts can run 2010-10-06 12:08 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64.common, AMD64_LINUX, I386_LINUX.common: remove -mno-align-double from m3back_flags and SYSTEM_CC Beware 2010-10-06 12:06 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: remove -mno-align-double it should no longer matter But anyone using Cygwin or MinGW, beware! 2010-10-06 12:03 jkrell * m3-sys/cminstall/src/config-no-install/I386.common: remove -mno-align-double I would really like the cm3cg command lines to be very cruft free, and this should no longer make a difference. Frontend aligns doubles to 8 bytes on all platforms, even though it could get away with 4 bytes on some e.g. x86. If there are any problems on any x86 platforms, try putting this back. It was especially painful at some point to debug this on Cygwin. Tested only I386_LINUX, but affects far more. 2010-10-06 11:52 jkrell * m3-sys/cminstall/src/config-no-install/NetBSD.common: also look in /usr/X11R7/lib in addition to /usr/X11R6/lib, as that is where things are on my 5.0.2 system (really should use $ORIGIN here..at least if on a 5.0+ system 2010-10-06 11:41 jkrell * m3-libs/m3core/src/runtime/SOLgnu/m3makefile: use forward slash directly instead of SL 2010-10-06 10:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: -O3 breaks Solaris/sparc32 internally silently convert it to -O2, for this target only (when you run a bootstrap cm3 from -O3, the exception upon not finding cm3.cfg isn't dispatched correctly) 2010-10-06 09:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix typo 2010-10-06 09:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cleaner 2010-10-06 09:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cleaner and add comment -- disabling all type code on SPARC32_SOLARIS 2010-10-06 09:16 jkrell * m3-sys/m3cc/gcc/gcc/ipa.c: go back a version 2010-10-06 09:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: turn off stablize_reference and all the type code, on SPARC32_SOLARIS (which is also volatile_all, and gcc 4.3) 2010-10-06 09:03 jkrell * m3-sys/m3cc/gcc/gcc/ipa.c: neuter 4.3 cgraph_remove_unreachable_nodes that doesn't like our trees 2010-10-04 19:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: grow some buffers from 100 to 256 (there's another one, but it should be growable and start small) 2010-10-04 19:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: squeeze out a bit more nul termination inefficiency -- don't allocate room for it or copy it in 2010-10-04 19:06 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: missed a dependency on nul termination (beware strdup) 2010-10-04 18:56 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: take advantage of the entire file being in memory and for strings, use a direct pointer into the buffer instead of copying byte by byte into alloca'ed buffer (which I think was malloced until recently) (note that access is no longer linear, if these strings are used much, they will bring into working set nearby unused data) and then the attendant reduction/elimination of nul terminated strings 2010-10-04 09:59 jkrell * m3-libs/m3core/src/text/TextLiteral.i3: allow larger TEXTs, breaking 32 to 64 bit cross builds, as they always were (frontend needs to be fixed to either use LONGINT or Target.Int, to enable the level of cross building that is normal in C and C++!) 2010-10-03 23:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: limit replay passes to 100 instead of hanging; in practise 1 seems to suffice, and they go very fast so 100 won't be a long lag (I know because an earlier version went forever, looking for end_unit to repeat) 2010-10-03 23:23 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: turn off the tracing about forward type references 2010-10-03 23:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: sprinkle stabilize_reference eveywhere it will likely save some recompution and is otherwise often a no-op 2010-10-03 18:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix subranges, to be small in size restore not volatile turn back on type code make it easy to turn on/off replay; turn it on remove assert that subrange min <= max, as it breaks X some small tweaks combine code for declare_pointer and declare_indirect consider using stabilize_reference more (after every indirect_ref remove temporaries from: shift rotate check_nil check_lo check_hi check_range check_eq very few temporaries remain: ones the frontend asks for (indefinite) floating point (round, floor, ceiling) loophole sometimes, pop_static_link, compare_exchange 2010-10-03 12:20 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: read entire file into memory Even if the file is large, they usually aren't, our access pattern is linear, so virtual memory suffices. This can help with some possible simplifications and speedups, including the next item, which ends up separting the buffer from any file. To deal with circular types, which inhibit us from building good type information in one pass, introduce a mechanism where an opcode can request that it be "replayed"; still, some amount of type information must be created to make forward progress; this is not fully fleshed out yet; what we need to do be sure to create The node that will represent the types, even if we don't fill in its details until later; and then, later, retrieve the node, and fill in more. That is, during "replay", we must not create brand new nodes. e.g. records could be initially empty, then define all the types of their constituent fields, including perhaps pointers to the record itself, and then go back and fill in the fields In general, due to circularities, there is not an ordering that can work in one pass. There are multiple examples in the tree where the declarations come in in a non-working order (possibly there not being a working order). sortedtableextras, for example. To this end, of the "replay" feature, generally move "M3_TYPES" code ahead of the m3gdb code, to avoid the m3gdb code running twice, since I don't know if that will work. The m3gdb code will be deferred until the M3_TYPES code has enough information to complete. disable all type code for now put back all volatile because something is amiss neither of these edits are meant to last remove the mechanism for altering return types That which I recently cleaned up to stop widening return types. put in the missing builtin WIDECHAR Should this be in RTBuiltin.m3x? Put in UID_NULL as well. These last two get us somewhat more complete typeinfo, but there are still circularities we don't likely handle correctly yet. (Not to mention not handling the various array types correctly.) Use VOID_TYPE_P instead of comparison to t_void. Probably no difference in Modula-3, but we were already inconsistent. Make line number unsigned. 2010-10-03 08:00 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: default to -g on Darwin, since there is no m3gdb to consume -gstabs 2010-10-03 07:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more manual tracing cleanup, not much manual tracing left now 2010-10-03 07:32 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: t => type id => typeid MTYPE2 => MTYPE where adequate 2010-10-03 06:40 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove growable and fixed size type table, just use VEC version 2010-10-03 06:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: enable debugging of enums, in stock gdb start code for debugging of globals, which are always embedded in global structs debugging of structs has the indirection off wrong, for example: t.r1 := 2; t.r2 := 3; t.r3 := 10; (gdb) p *t $4 = (struct Main.T1 *) 0xa32 oops. To be fixed shortly. There are probably many cases that don't debug correctly, because typenames, subranges, and esp. packing probably aren't handled correctly. The code is careful given an untyped integer, not to assign it a type of a different types. That is, when the frontend gives us: TYPE typecode = BITS 20 FOR [...] VAR tc:typecode; and it tells backend tc is a word32 of type typecode, we ignore the stronger type and just say it is word32. Not doing that was caused me a lot of grief/debugging/staring at code. Since this is a subrange and not an enum anyway, not clear we should do anything different. Subranges aren't really types, unless, e.g. you wanted the backend to generate the range checks (which isn't crazy, as it could optimize away redundant checks). As well, what does it mean: TYPE Color={Red,Blue}; TYPE T1 = BITS 2 FOR Color; TYPE T2 = BITS 8 FOR Color; TYPE T3 = BITS 800 FOR Color; Currently enum names are probably wrong, they show as Red, Blue in this example, probably should be Interface.Color.Red. same some pointer overhead in backend 0 => NULL a bit more add function m3_make_integer_type for maybe future use, that can create integers of any number of bits from 1 to 64 remove some more signed math 2010-10-03 05:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: no point to: #define NAME STRING just use STRING everywhere 2010-10-03 05:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: two missing spaces after function calls (formating) 2010-10-03 05:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: go ahead and just always use 64bit math in get_int 2010-10-03 05:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 1 => true 0 => false or NULL but still intialize with the nice generic form { 0 } 2010-10-02 13:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: rename variables whose name is just a single lowercase l to avoid ambiguity with the number 1 l => label l => length l => m (as in a, b, c, d, ..., j, k, m) 2010-10-02 13:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: a => align 2010-10-02 13:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: t => type s => size a => align #if 0 unused function (avoid warning) #define foo bar when foo is just a function that calls bar 2010-10-02 13:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: tipe => type tipe is a Modula-3-ism, where "TYPE" is a reserved word? type is not a reserved word in C or C++ 2010-10-02 12:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: again eliminate INTEGER vs. TARGET_INTEGER distinction INTEGER always suffices, TARGET_INTEGER is no more callers can call build_int_cst if they need a tree, as many but not all do 64bits is always enough I think the problem in previous attempt was the cast to long in get_int () where HOST_WIDE_INT is needed (32bits vs. 64bits) eliminate a little bit of 64bit math on 32bit hosts Though overall we overuse 64bit math on purpose. eliminate a little unnecessary signed math unsigned is generally preferred m3cg sign parameter is never used, in div/mod, adjust code accordingly (They used to be used to optimize our unusual div/mod operations, but now we always optimize; hm..could probably do better though, using the signs -- if both positive or both negative, use truncation, which is more commonly what the processors do?) eliminate some temporaries unoptimized code probably affected accordingly positively 2010-10-02 11:20 jkrell * m3-sys/m3cc/gcc/gcc/c-common.c: workaround ffs problem on VMS see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44037 2010-10-02 10:39 jkrell * m3-sys/m3cc/gcc/gcc/ginclude/stddef.h: Don't trash __size_t, on VMS. Already applied to 4.5. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44003 2010-10-02 10:36 jkrell * m3-sys/m3cc/gcc/libiberty/pex-common.h: #include for pid_t, for VMS see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44002 2010-10-02 09:53 jkrell * m3-sys/m3cc/: gcc/gcc/config.gcc, gcc/gcc/config.in, gcc/gcc/configure, gcc/gcc/configure.ac, gcc/gcc/hwint.h, gcc/gcc/m3cg/parse.c, src/clean_marker.txt, src/m3makefile: small cleanup in target integer reading make sure HOST_WIDE_INT is always at least 64bits which was already the case on most targets anyway due to "biarch", the fact that x86 backends can target AMD64 with -m64 2010-10-01 11:03 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: odd, go back a version 2010-10-01 10:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Eliminate INTEGER vs. TARGET_INTEGER distinction. INTEGER is HOST_WIDE_INT which is at least 64bits when targeting 64bit. Equivalent to using LONGINT more instead of INTEGER. Typical 32bit C compilers have had 64bit long long/__int64 for something like 20 years now I think. (ok, at least 15, for certain) 2010-09-30 10:55 jkrell * m3-sys/m3front/src/types/: ObjectType.m3, RefType.m3: make the comments unique 2010-09-30 10:06 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: 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. 2010-09-30 08:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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? 2010-09-28 10:58 jkrell * m3-sys/m3gdb/gdb/md5.sum: delete paltry 300K unused 2010-09-28 10:55 jkrell * m3-sys/m3cc/gcc/MD5SUMS: delete 10MB unused 2010-09-28 10:53 jkrell * m3-sys/m3gdb/gdb/sim/: ChangeLog, MAINTAINERS, Makefile.in, README-HACKING, configure, configure.ac, mips/Makefile.in, mips/config.in, mips/m16.dc, mips/m16.igen, mips/mips3264r2.igen, mips/ChangeLog, mips/acconfig.h, mips/configure, mips/configure.ac, mips/cp1.c, mips/cp1.h, mips/dv-tx3904cpu.c, mips/dv-tx3904irc.c, mips/dv-tx3904sio.c, mips/dv-tx3904tmr.c, mips/interp.c, mips/m16e.igen, mips/m16run.c, mips/mdmx.c, mips/mdmx.igen, mips/mips.dc, mips/mips.igen, mips/mips3d.igen, mips/sb1.igen, mips/sim-main.c, mips/sim-main.h, mips/tconfig.in, mips/tx.igen, mips/vr.igen, frv/arch.c, frv/profile-fr500.c, frv/profile-fr550.c, frv/Makefile.in, frv/README, frv/TODO, frv/cache.h, frv/config.in, frv/configure.ac, frv/cpuall.h, frv/decode.h, frv/frv-sim.h, frv/options.c, frv/pipeline.c, frv/profile-fr450.c, frv/profile-fr500.h, frv/profile.c, frv/tconfig.in, frv/traps.c, frv/arch.h, frv/cache.c, frv/cpu.c, frv/frv.c, frv/profile-fr400.h, frv/sem.c, frv/sim-main.h, frv/mloop.in, frv/profile.h, frv/ChangeLog, frv/configure, frv/cpu.h, frv/interrupts.c, frv/profile-fr400.c, frv/profile-fr550.h, frv/registers.c, frv/registers.h, frv/reset.c, frv/sim-if.c, frv/decode.c, frv/devices.c, frv/memory.c, frv/model.c, ppc/ld-cache.c, ppc/psim.h, ppc/Makefile.in, ppc/aclocal.m4, ppc/altivec_registers.h, ppc/bits.h, ppc/cap.h, ppc/dc-complex, ppc/emul_bugapi.c, ppc/emul_netbsd.c, ppc/emul_unix.c, ppc/hw_cpu.h, ppc/idecode_branch.h, ppc/idecode_fields.h, ppc/ld-decode.c, ppc/lf.h, ppc/pk_disklabel.c, ppc/.gdbinit, ppc/BUGS, ppc/INSTALL, ppc/README, ppc/config.in, ppc/configure.ac, ppc/device_table.c, ppc/device_table.h, ppc/e500.igen, ppc/emul_generic.h, ppc/filter.c, ppc/filter_filename.h, ppc/gen-icache.h, ppc/gen-model.h, ppc/gen-support.h, ppc/hw_cpu.c, ppc/hw_disk.c, ppc/hw_memory.c, ppc/hw_vm.c, ppc/inline.c, ppc/ld-decode.h, ppc/table.h, ppc/vm.c, ppc/vm_n.h, ppc/acconfig.h, ppc/corefile-n.h, ppc/corefile.c, ppc/corefile.h, ppc/dc-simple, ppc/dc-stupid, ppc/dc-test.01, ppc/debug.c, ppc/debug.h, ppc/dgen.c, ppc/emul_bugapi.h, ppc/filter.h, ppc/gdb-sim.c, ppc/gen-itable.h, ppc/gen-model.c, ppc/hw_com.c, ppc/hw_core.c, ppc/hw_glue.c, ppc/hw_htab.c, ppc/idecode_expression.h, ppc/igen.c, ppc/interrupts.h, ppc/misc.h, ppc/mon.c, ppc/mon.h, ppc/options.c, ppc/os_emul.c, ppc/ppc-instructions, ppc/ppc-spr-table, ppc/ppc.mt, ppc/sim-endian.c, ppc/sim-endian.h, ppc/sim_calls.c, ppc/tree.h, ppc/COPYING.LIB, ppc/ChangeLog.00, ppc/altivec_expression.h, ppc/bits.c, ppc/cap.c, ppc/cpu.c, ppc/device.c, ppc/emul_chirp.c, ppc/emul_chirp.h, ppc/events.h, ppc/filter_filename.c, ppc/gen-idecode.c, ppc/gen-idecode.h, ppc/gen-semantics.c, ppc/gen-support.c, ppc/hw_eeprom.c, ppc/hw_nvram.c, ppc/hw_opic.c, ppc/hw_phb.c, ppc/hw_trace.c, ppc/igen.h, ppc/inline.h, ppc/ld-cache.h, ppc/ld-insn.c, ppc/os_emul.h, ppc/sim-endian-n.h, ppc/sim-main.h, ppc/std-config.h, ppc/table.c, ppc/tree.c, ppc/words.h, ppc/ChangeLog, ppc/RUN, ppc/configure, ppc/cpu.h, ppc/dc-test.02, ppc/double.c, ppc/emul_generic.c, ppc/emul_netbsd.h, ppc/events.c, ppc/gen-icache.c, ppc/gen-itable.c, ppc/gen-semantics.h, ppc/hw_ide.c, ppc/hw_init.c, ppc/hw_iobus.c, ppc/hw_register.c, ppc/interrupts.c, ppc/ld-insn.h, ppc/lf.c, ppc/main.c, ppc/psim.c, ppc/registers.c, ppc/registers.h, ppc/sim_callbacks.h, ppc/altivec.igen, ppc/device.h, ppc/dp-bit.c, ppc/e500_registers.h, ppc/misc.c, ppc/psim.texinfo, ppc/basics.h, ppc/e500_expression.h, ppc/options.h, ppc/COPYING, ppc/emul_unix.h, ppc/hw_pal.c, ppc/hw_phb.h, ppc/vm.h, v850/ChangeLog, v850/Makefile.in, v850/acconfig.h, v850/config.in, v850/configure, v850/configure.ac, v850/interp.c, v850/sim-main.h, v850/simops.c, v850/simops.h, v850/v850-dc, v850/v850.igen, v850/v850_sim.h, d10v/ChangeLog, d10v/Makefile.in, d10v/acconfig.h, d10v/config.in, d10v/configure, d10v/configure.ac, d10v/d10v_sim.h, d10v/endian.c, d10v/gencode.c, d10v/interp.c, d10v/simops.c, sh/Makefile.in, sh/config.in, sh/configure.ac, sh/interp.c, sh/acconfig.h, sh/tconfig.in, sh/ChangeLog, sh/syscall.h, sh/configure, sh/gencode.c, m32r/Makefile.in, m32r/arch.c, m32r/m32r.c, m32r/traps-linux.c, m32r/config.in, m32r/cpux.h, m32r/README, m32r/mloop2.in, m32r/semx-switch.c, m32r/TODO, m32r/acconfig.h, m32r/configure.ac, m32r/cpuall.h, m32r/cpux.c, m32r/decode.h, m32r/decode2.c, m32r/decode2.h, m32r/decodex.c, m32r/decodex.h, m32r/m32r2.c, m32r/model2.c, m32r/modelx.c, m32r/tconfig.in, m32r/traps.c, m32r/ChangeLog, m32r/arch.h, m32r/configure, m32r/cpu.c, m32r/cpu.h, m32r/cpu2.c, m32r/decode.c, m32r/m32rx.c, m32r/mloop.in, m32r/model.c, m32r/sem.c, m32r/sem2-switch.c, m32r/sim-if.c, m32r/sim-main.h, m32r/syscall.h, m32r/cpu2.h, m32r/devices.c, m32r/m32r-sim.h, m32r/mloopx.in, m32r/sem-switch.c, mn10300/Makefile.in, mn10300/acconfig.h, mn10300/am33-2.igen, mn10300/config.in, mn10300/configure.ac, mn10300/dv-mn103int.c, mn10300/dv-mn103tim.c, mn10300/interp.c, mn10300/mn10300_sim.h, mn10300/op_utils.c, mn10300/sim-main.c, mn10300/sim-main.h, mn10300/tconfig.in, common/Makefile.in, common/cgen-par.h, common/cgen-trace.h, common/hw-alloc.c, common/sim-base.h, common/sim-module.c, common/sim-run.c, common/sim-utils.c, common/sim-utils.h, mn10300/ChangeLog, mn10300/am33.igen, mn10300/configure, mn10300/dv-mn103cpu.c, mn10300/dv-mn103iop.c, mn10300/dv-mn103ser.c, mn10300/mn10300.dc, mn10300/mn10300.igen, common/aclocal.m4, common/callback.c, common/cgen-scache.c, common/cgen-scache.h, common/cgen-trace.c, common/cgen-utils.c, common/config.in, common/configure.ac, common/dv-core.c, common/gentvals.sh, common/hw-alloc.h, common/hw-handles.h, common/hw-instances.h, common/hw-properties.c, common/hw-properties.h, common/nltvals.def, common/sim-bits.c, common/sim-bits.h, common/sim-config.h, common/sim-events.c, common/sim-info.c, common/sim-io.c, common/sim-load.c, common/sim-module.h, common/sim-reg.c, common/Make-common.in, common/acconfig.h, common/cgen-fpu.c, common/cgen-fpu.h, common/cgen-run.c, common/cgen-sim.h, common/cgen.sh, common/gdbinit.in, common/genmloop.sh, common/hw-base.c, common/hw-device.h, common/hw-events.h, common/hw-tree.c, common/run.1, common/sim-abort.c, common/sim-alu.h, common/sim-assert.h, common/sim-core.h, common/sim-cpu.c, common/sim-cpu.h, common/sim-endian.c, common/sim-endian.h, common/sim-hload.c, common/sim-hrw.c, common/sim-inline.c, common/sim-inline.h, common/sim-memopt.c, common/sim-model.c, common/sim-model.h, common/sim-n-core.h, common/sim-options.c, common/sim-options.h, common/sim-profile.c, common/sim-profile.h, common/sim-reason.c, common/sim-signal.h, common/sim-stop.c, common/sim-trace.c, common/sim-watch.h, common/tconfig.in, common/ChangeLog, common/cgen-cpu.h, common/cgen-engine.h, common/cgen-mem.h, common/cgen-ops.h, common/cgen-par.c, common/cgen-types.h, common/configure, common/dv-pal.c, common/dv-sockser.c, common/dv-sockser.h, common/gennltvals.sh, common/gentmap.c, common/hw-handles.c, common/hw-instances.c, common/hw-ports.c, common/hw-ports.h, common/nrun.c, common/run-sim.h, common/sim-arange.h, common/sim-basics.h, common/sim-config.c, common/sim-engine.c, common/sim-engine.h, common/sim-events.h, common/sim-fpu.c, common/sim-hw.c, common/sim-hw.h, common/sim-memopt.h, common/sim-n-bits.h, common/sim-signal.c, common/sim-trace.h, common/sim-types.h, common/cgen-accfp.c, common/cgen-defs.h, common/common.m4, common/dv-glue.c, common/hw-base.h, common/hw-device.c, common/hw-events.c, common/hw-main.h, common/hw-tree.h, common/run.c, common/sim-arange.c, common/sim-core.c, common/sim-fpu.h, common/sim-io.h, common/sim-n-endian.h, common/sim-resume.c, common/sim-watch.c, common/syscall.c, cris/Makefile.in, cris/arch.c, cris/cris-opc.h, cris/crisv32f.c, cris/modelv32.c, mcore/ChangeLog, mcore/Makefile.in, mcore/config.in, mcore/configure, mcore/configure.ac, mcore/interp.c, mcore/sysdep.h, cris/config.in, cris/configure.ac, cris/cpuall.h, cris/cpuv10.h, cris/cpuv32.h, cris/cris-desc.c, cris/cris-desc.h, cris/crisv10f.c, cris/decodev10.h, cris/decodev32.c, cris/decodev32.h, cris/semcrisv32f-switch.c, cris/tconfig.in, cris/traps.c, cris/arch.h, cris/configure, cris/cpuv10.c, cris/cpuv32.c, cris/cris-sim.h, cris/cris-tmpl.c, cris/decodev10.c, cris/devices.c, cris/mloop.in, cris/modelv10.c, cris/semcrisv10f-switch.c, cris/sim-if.c, cris/sim-main.h, h8300/ChangeLog, h8300/Makefile.in, h8300/acconfig.h, h8300/compile.c, h8300/config.in, h8300/configure, h8300/configure.ac, h8300/inst.h, h8300/sim-main.h, h8300/tconfig.in, h8300/writecode.c, testsuite/ChangeLog, testsuite/Makefile.in, testsuite/configure, testsuite/configure.ac, testsuite/d10v-elf/Makefile.in, testsuite/d10v-elf/t-ae-ld-id.s, testsuite/d10v-elf/t-ae-ld2w-id.s, testsuite/d10v-elf/t-ae-st-d.s, testsuite/d10v-elf/t-ae-st-i.s, testsuite/d10v-elf/t-ae-st2w-d.s, testsuite/d10v-elf/t-ld-st.s, testsuite/d10v-elf/t-rac.s, testsuite/d10v-elf/t-rdt.s, testsuite/d10v-elf/t-sub2w.s, testsuite/d10v-elf/configure.ac, testsuite/d10v-elf/loop.s, testsuite/d10v-elf/t-ae-ld2w-im.s, testsuite/d10v-elf/t-ae-ld2w-ip.s, testsuite/d10v-elf/t-mac.s, testsuite/d10v-elf/t-macros.i, testsuite/d10v-elf/t-mulxu.s, testsuite/d10v-elf/t-rep.s, testsuite/d10v-elf/t-slae.s, testsuite/d10v-elf/t-subi.s, testsuite/d10v-elf/hello.s, testsuite/d10v-elf/t-ae-ld-i.s, testsuite/d10v-elf/t-ae-ld2w-i.s, testsuite/d10v-elf/t-ae-st-is.s, testsuite/d10v-elf/t-ae-st2w-id.s, testsuite/d10v-elf/t-dbt.s, testsuite/d10v-elf/t-msbu.s, testsuite/d10v-elf/t-mvtc.s, testsuite/d10v-elf/t-rie-xx.s, testsuite/d10v-elf/t-sac.s, testsuite/d10v-elf/t-sub.s, testsuite/d10v-elf/ChangeLog, testsuite/d10v-elf/configure, testsuite/d10v-elf/exit47.s, testsuite/d10v-elf/t-ae-ld-d.s, testsuite/d10v-elf/t-ae-ld-im.s, testsuite/d10v-elf/t-ae-ld-ip.s, testsuite/d10v-elf/t-ae-ld2w-d.s, testsuite/d10v-elf/t-ae-st-id.s, testsuite/d10v-elf/t-ae-st-im.s, testsuite/d10v-elf/t-ae-st-ip.s, testsuite/d10v-elf/t-mod-ld-pre.s, testsuite/d10v-elf/t-mvtac.s, testsuite/d10v-elf/t-rachi.s, testsuite/d10v-elf/t-rte.s, testsuite/d10v-elf/t-sachi.s, testsuite/d10v-elf/t-sp.s, testsuite/d10v-elf/t-trap.s, testsuite/d10v-elf/t-ae-st2w-i.s, testsuite/d10v-elf/t-ae-st2w-im.s, testsuite/d10v-elf/t-ae-st2w-ip.s, testsuite/d10v-elf/t-ae-st2w-is.s, testsuite/d10v-elf/t-sadd.s, testsuite/lib/sim-defs.exp, testsuite/m32r-elf/ChangeLog, testsuite/m32r-elf/Makefile.in, testsuite/m32r-elf/configure, testsuite/m32r-elf/configure.ac, testsuite/m32r-elf/exit47.s, testsuite/m32r-elf/hello.s, testsuite/m32r-elf/loop.s, testsuite/sim/frv/cldsh.cgs, testsuite/sim/mips/ChangeLog, testsuite/sim/mips/basic.exp, testsuite/sim/mips/fpu64-ps-sb1.s, testsuite/sim/mips/fpu64-ps.s, testsuite/sim/mips/hilo-hazard-1.s, testsuite/sim/mips/hilo-hazard-2.s, testsuite/sim/mips/hilo-hazard-3.s, testsuite/sim/mips/mdmx-ob-sb1.s, testsuite/sim/mips/mdmx-ob.s, testsuite/sim/mips/sanity.s, testsuite/sim/mips/testutils.inc, testsuite/sim/mips/utils-fpu.inc, testsuite/sim/mips/utils-mdmx.inc, testsuite/sim/frv/bclslr.cgs, testsuite/sim/frv/bgelr.cgs, testsuite/sim/frv/cfckle.cgs, testsuite/sim/frv/cmmulhs.cgs, testsuite/sim/frv/cor.cgs, testsuite/sim/frv/fcbolr.cgs, testsuite/sim/frv/fcku.cgs, testsuite/sim/frv/fdmovs.cgs, testsuite/sim/frv/ftino.cgs, testsuite/sim/frv/ldi.cgs, testsuite/sim/frv/mcutss.cgs, testsuite/sim/frv/mqsllhi.cgs, testsuite/sim/frv/nandcr.cgs, testsuite/sim/frv/nfadds.cgs, testsuite/sim/frv/orncr.cgs, testsuite/sim/frv/umulicc.cgs, testsuite/sim/frv/cldhfu.cgs, testsuite/sim/frv/clrfr.cgs, testsuite/sim/frv/cmcpxiu.cgs, testsuite/sim/frv/commitfr.cgs, testsuite/sim/frv/csth.cgs, testsuite/sim/frv/ftiu.cgs, testsuite/sim/frv/ftug.cgs, testsuite/sim/frv/jmpl.pcgs, testsuite/sim/frv/nfdcmps.cgs, testsuite/sim/frv/scani.cgs, testsuite/sim/frv/setlos.cgs, testsuite/sim/frv/stf.cgs, testsuite/sim/frv/stqc.cgs, testsuite/sim/frv/swapi.cgs, testsuite/sim/frv/teq.cgs, testsuite/sim/frv/bcnclr.cgs, testsuite/sim/frv/bno.cgs, testsuite/sim/frv/bra.cgs, testsuite/sim/frv/cadd.cgs, testsuite/sim/frv/call.pcgs, testsuite/sim/frv/cfckno.cgs, testsuite/sim/frv/cfmas.cgs, testsuite/sim/frv/cldbfu.cgs, testsuite/sim/frv/cldfu.cgs, testsuite/sim/frv/corcc.cgs, testsuite/sim/frv/csllcc.cgs, testsuite/sim/frv/cstdf.cgs, testsuite/sim/frv/csthf.cgs, testsuite/sim/frv/dci.cgs, testsuite/sim/frv/fbge.cgs, testsuite/sim/frv/fbuglr.cgs, testsuite/sim/frv/fbule.cgs, testsuite/sim/frv/fcbuelr.cgs, testsuite/sim/frv/fcbugelr.cgs, testsuite/sim/frv/fcbuglr.cgs, testsuite/sim/frv/fcbulelr.cgs, testsuite/sim/frv/fckne.cgs, testsuite/sim/frv/fitos.cgs, testsuite/sim/frv/fmsubd.cgs, testsuite/sim/frv/fnop.cgs, testsuite/sim/frv/ftiug.cgs, testsuite/sim/frv/lddi.cgs, testsuite/sim/frv/ldfu.cgs, testsuite/sim/frv/ldqi.cgs, testsuite/sim/frv/maddhus.cgs, testsuite/sim/frv/mcmpuh.cgs, testsuite/sim/frv/mcpxiu.cgs, testsuite/sim/frv/mmulxhu.cgs, testsuite/sim/frv/mpackh.cgs, testsuite/sim/frv/mtrap.cgs, testsuite/sim/frv/nldqf.cgs, testsuite/sim/frv/nlduhu.cgs, testsuite/sim/frv/scan.cgs, testsuite/sim/frv/sll.cgs, testsuite/sim/frv/stbfu.cgs, testsuite/sim/frv/stc.cgs, testsuite/sim/frv/stfi.cgs, testsuite/sim/frv/stqf.cgs, testsuite/sim/frv/testutils.inc, testsuite/sim/frv/tils.cgs, testsuite/sim/frv/tilt.cgs, testsuite/sim/frv/tin.cgs, testsuite/sim/frv/tira.cgs, testsuite/sim/frv/tls.cgs, testsuite/sim/frv/xor.cgs, testsuite/sim/frv/bclr.cgs, testsuite/sim/frv/ble.cgs, testsuite/sim/frv/bnelr.cgs, testsuite/sim/frv/candcc.cgs, testsuite/sim/frv/ccalll.cgs, testsuite/sim/frv/cfadds.cgs, testsuite/sim/frv/cfcmps.cgs, testsuite/sim/frv/cfmss.cgs, testsuite/sim/frv/cknc.cgs, testsuite/sim/frv/cldf.cgs, testsuite/sim/frv/cldshu.cgs, testsuite/sim/frv/cldubu.cgs, testsuite/sim/frv/cmovfg.cgs, testsuite/sim/frv/cmovfgd.cgs, testsuite/sim/frv/cmpba.cgs, testsuite/sim/frv/cmsubhus.cgs, testsuite/sim/frv/cstu.cgs, testsuite/sim/frv/fbue.cgs, testsuite/sim/frv/fbuge.cgs, testsuite/sim/frv/fcbnelr.cgs, testsuite/sim/frv/fddivs.cgs, testsuite/sim/frv/fmad.cgs, testsuite/sim/frv/fsqrts.cgs, testsuite/sim/frv/ftgt.cgs, testsuite/sim/frv/ftilt.cgs, testsuite/sim/frv/ftlg.cgs, testsuite/sim/frv/ldshu.cgs, testsuite/sim/frv/ldubu.cgs, testsuite/sim/frv/lduhi.cgs, testsuite/sim/frv/mand.cgs, testsuite/sim/frv/mcplhi.cgs, testsuite/sim/frv/movfgq.cgs, testsuite/sim/frv/movgs.cgs, testsuite/sim/frv/mqxmacxhs.cgs, testsuite/sim/frv/mrdaccg.cgs, testsuite/sim/frv/msrlhi.cgs, testsuite/sim/frv/or.cgs, testsuite/sim/frv/sllcc.cgs, testsuite/sim/frv/sracc.cgs, testsuite/sim/frv/st.cgs, testsuite/sim/frv/stqfi.cgs, testsuite/sim/frv/subi.cgs, testsuite/sim/frv/tnc.cgs, testsuite/sim/frv/tno.cgs, testsuite/sim/frv/umuli.cgs, testsuite/sim/frv/xoricc.cgs, testsuite/sim/frv/add.pcgs, testsuite/sim/frv/addicc.cgs, testsuite/sim/frv/addxcc.cgs, testsuite/sim/frv/bge.cgs, testsuite/sim/frv/blt.cgs, testsuite/sim/frv/bp.cgs, testsuite/sim/frv/caddcc.cgs, testsuite/sim/frv/cckne.cgs, testsuite/sim/frv/cfdivs.cgs, testsuite/sim/frv/ckls.cgs, testsuite/sim/frv/cldhf.cgs, testsuite/sim/frv/cldsb.cgs, testsuite/sim/frv/cldu.cgs, testsuite/sim/frv/cnot.cgs, testsuite/sim/frv/fckeq.cgs, testsuite/sim/frv/fcmpd.cgs, testsuite/sim/frv/fdtoi.cgs, testsuite/sim/frv/ftue.cgs, testsuite/sim/frv/ldcu.cgs, testsuite/sim/frv/ldf.cgs, testsuite/sim/frv/mcut.cgs, testsuite/sim/frv/mdaddaccs.cgs, testsuite/sim/frv/mexpdhw.cgs, testsuite/sim/frv/mhdsets.cgs, testsuite/sim/frv/mmulhs.cgs, testsuite/sim/frv/movgfd.cgs, testsuite/sim/frv/mqcpxis.cgs, testsuite/sim/frv/mqmachu.cgs, testsuite/sim/frv/msubhus.cgs, testsuite/sim/frv/mwcut.cgs, testsuite/sim/frv/nfdivs.cgs, testsuite/sim/frv/nfsqrts.cgs, testsuite/sim/frv/nfstoi.cgs, testsuite/sim/frv/nldbfu.cgs, testsuite/sim/frv/nldhfi.cgs, testsuite/sim/frv/nldubi.cgs, testsuite/sim/frv/notcr.cgs, testsuite/sim/frv/rett.cgs, testsuite/sim/frv/srlcc.cgs, testsuite/sim/frv/stbi.cgs, testsuite/sim/frv/stdc.cgs, testsuite/sim/frv/tge.cgs, testsuite/sim/frv/bcltlr.cgs, testsuite/sim/frv/bcralr.cgs, testsuite/sim/frv/blelr.cgs, testsuite/sim/frv/cckge.cgs, testsuite/sim/frv/cckn.cgs, testsuite/sim/frv/cklt.cgs, testsuite/sim/frv/ckno.cgs, testsuite/sim/frv/cmpb.cgs, testsuite/sim/frv/cmsubhss.cgs, testsuite/sim/frv/csll.cgs, testsuite/sim/frv/cstb.cgs, testsuite/sim/frv/cudiv.cgs, testsuite/sim/frv/fbug.cgs, testsuite/sim/frv/fckra.cgs, testsuite/sim/frv/fckul.cgs, testsuite/sim/frv/fdmuls.cgs, testsuite/sim/frv/fdsqrts.cgs, testsuite/sim/frv/fmuls.cgs, testsuite/sim/frv/ldbfu.cgs, testsuite/sim/frv/lddfi.cgs, testsuite/sim/frv/lddu.cgs, testsuite/sim/frv/ldqu.cgs, testsuite/sim/frv/mbtohe.cgs, testsuite/sim/frv/mqmulxhu.cgs, testsuite/sim/frv/mxor.cgs, testsuite/sim/frv/nlddfi.cgs, testsuite/sim/frv/nldfu.cgs, testsuite/sim/frv/nldsh.cgs, testsuite/sim/frv/subicc.cgs, testsuite/sim/frv/thi.cgs, testsuite/sim/frv/tige.cgs, testsuite/sim/frv/umul.cgs, testsuite/sim/frv/addcc.cgs, testsuite/sim/frv/addxicc.cgs, testsuite/sim/frv/blslr.cgs, testsuite/sim/frv/calll.cgs, testsuite/sim/frv/cfcklg.cgs, testsuite/sim/frv/cfcklt.cgs, testsuite/sim/frv/ckle.cgs, testsuite/sim/frv/csdiv.cgs, testsuite/sim/frv/dcef.cgs, testsuite/sim/frv/fdsads.cgs, testsuite/sim/frv/fmuld.cgs, testsuite/sim/frv/jmpil.cgs, testsuite/sim/frv/mqcpxru.cgs, testsuite/sim/frv/mrdacc.cgs, testsuite/sim/frv/msrahi.cgs, testsuite/sim/frv/nfditos.cgs, testsuite/sim/frv/nfitos.cgs, testsuite/sim/frv/stdfi.cgs, testsuite/sim/frv/stfu.cgs, testsuite/sim/frv/sthu.cgs, testsuite/sim/frv/stq.pcgs, testsuite/sim/frv/ccknv.cgs, testsuite/sim/frv/cfmovs.cgs, testsuite/sim/frv/cldqu.cgs, testsuite/sim/frv/cmbtohe.cgs, testsuite/sim/frv/cmcpxru.cgs, testsuite/sim/frv/cop1.cgs, testsuite/sim/frv/fbgtlr.cgs, testsuite/sim/frv/fbul.cgs, testsuite/sim/frv/fdivs.cgs, testsuite/sim/frv/ftine.cgs, testsuite/sim/frv/fto.cgs, testsuite/sim/frv/ldsbi.cgs, testsuite/sim/frv/mcmpsh.cgs, testsuite/sim/frv/mmulhu.cgs, testsuite/sim/frv/movgf.cgs, testsuite/sim/frv/movsg.cgs, testsuite/sim/frv/mqsaths.cgs, testsuite/sim/frv/nfmadds.cgs, testsuite/sim/frv/nlddu.cgs, testsuite/sim/frv/nldf.cgs, testsuite/sim/frv/nldqu.cgs, testsuite/sim/frv/nldsbi.cgs, testsuite/sim/frv/nldshi.cgs, testsuite/sim/frv/smulcc.cgs, testsuite/sim/frv/stdf.pcgs, testsuite/sim/frv/stdfu.cgs, testsuite/sim/frv/sthf.cgs, testsuite/sim/frv/tgt.cgs, testsuite/sim/frv/tinv.cgs, testsuite/sim/frv/udiv.cgs, testsuite/sim/frv/addx.cgs, testsuite/sim/frv/and.cgs, testsuite/sim/frv/andicc.cgs, testsuite/sim/frv/callil.cgs, testsuite/sim/frv/cckgt.cgs, testsuite/sim/frv/clddu.cgs, testsuite/sim/frv/cstf.cgs, testsuite/sim/frv/faddd.cgs, testsuite/sim/frv/fblelr.cgs, testsuite/sim/frv/fblg.cgs, testsuite/sim/frv/fbnolr.cgs, testsuite/sim/frv/fbra.cgs, testsuite/sim/frv/fckno.cgs, testsuite/sim/frv/ldqcu.cgs, testsuite/sim/frv/mcuti.cgs, testsuite/sim/frv/mhtob.cgs, testsuite/sim/frv/mmachs.cgs, testsuite/sim/frv/mnop.cgs, testsuite/sim/frv/mqmulhu.cgs, testsuite/sim/frv/msllhi.cgs, testsuite/sim/frv/nfdsads.cgs, testsuite/sim/frv/nlddfu.cgs, testsuite/sim/frv/nlddi.cgs, testsuite/sim/frv/ret.cgs, testsuite/sim/frv/smulicc.cgs, testsuite/sim/frv/stq.cgs, testsuite/sim/frv/stu.cgs, testsuite/sim/frv/subxi.cgs, testsuite/sim/frv/tiv.cgs, testsuite/sim/frv/addi.cgs, testsuite/sim/frv/cckeq.cgs, testsuite/sim/frv/cfckeq.cgs, testsuite/sim/frv/cfmsubs.cgs, testsuite/sim/frv/cmqmulhu.cgs, testsuite/sim/frv/csrlcc.cgs, testsuite/sim/frv/ldsb.cgs, testsuite/sim/frv/mabshs.cgs, testsuite/sim/frv/mrotli.cgs, testsuite/sim/frv/nfdadds.cgs, testsuite/sim/frv/parallel.exp, testsuite/sim/frv/stbfi.cgs, testsuite/sim/frv/tinc.cgs, testsuite/sim/frv/cld.cgs, testsuite/sim/frv/nfdsubs.cgs, testsuite/sim/frv/bcnelr.cgs, testsuite/sim/frv/bnvlr.cgs, testsuite/sim/frv/branch.pcgs, testsuite/sim/frv/cfsqrts.cgs, testsuite/sim/frv/clrgr.cgs, testsuite/sim/frv/cstbu.cgs, testsuite/sim/frv/csubcc.cgs, testsuite/sim/frv/fbuelr.cgs, testsuite/sim/frv/fbulr.cgs, testsuite/sim/frv/fcko.cgs, testsuite/sim/frv/fsubs.cgs, testsuite/sim/frv/ftiul.cgs, testsuite/sim/frv/ld.cgs, testsuite/sim/frv/ldubi.cgs, testsuite/sim/frv/mdunpackh.cgs, testsuite/sim/frv/mmulxhs.cgs, testsuite/sim/frv/mqlclrhs.cgs, testsuite/sim/frv/mqmulxhs.cgs, testsuite/sim/frv/nfdsqrts.cgs, testsuite/sim/frv/sethi.cgs, testsuite/sim/frv/tp.cgs, testsuite/sim/frv/xorcr.cgs, testsuite/sim/frv/add.cgs, testsuite/sim/frv/bctrlr.cgs, testsuite/sim/frv/bgt.cgs, testsuite/sim/frv/cfcko.cgs, testsuite/sim/frv/cfckul.cgs, testsuite/sim/frv/cfitos.cgs, testsuite/sim/frv/cfsubs.cgs, testsuite/sim/frv/cldbf.cgs, testsuite/sim/frv/cmcpxis.cgs, testsuite/sim/frv/cmmachu.cgs, testsuite/sim/frv/cmov.cgs, testsuite/sim/frv/cmpi.cgs, testsuite/sim/frv/csra.cgs, testsuite/sim/frv/fadds.cgs, testsuite/sim/frv/fbralr.cgs, testsuite/sim/frv/fcbullr.cgs, testsuite/sim/frv/fcklt.cgs, testsuite/sim/frv/fditos.cgs, testsuite/sim/frv/fmas.cgs, testsuite/sim/frv/fmsd.cgs, testsuite/sim/frv/fnegd.cgs, testsuite/sim/frv/ftra.cgs, testsuite/sim/frv/mcpxis.cgs, testsuite/sim/frv/mdasaccs.cgs, testsuite/sim/frv/mmrdhs.cgs, testsuite/sim/frv/mnot.cgs, testsuite/sim/frv/nfmsubs.cgs, testsuite/sim/frv/nfsubs.cgs, testsuite/sim/frv/nldbfi.cgs, testsuite/sim/frv/sdivi.cgs, testsuite/sim/frv/srl.cgs, testsuite/sim/frv/srli.cgs, testsuite/sim/frv/sthfu.cgs, testsuite/sim/frv/stqu.cgs, testsuite/sim/frv/subcc.cgs, testsuite/sim/frv/subx.cgs, testsuite/sim/frv/tc.cgs, testsuite/sim/frv/tile.cgs, testsuite/sim/frv/tlt.cgs, testsuite/sim/frv/andcr.cgs, testsuite/sim/frv/bc.cgs, testsuite/sim/frv/bcclr.cgs, testsuite/sim/frv/bgtlr.cgs, testsuite/sim/frv/bls.cgs, testsuite/sim/frv/bn.cgs, testsuite/sim/frv/bnc.cgs, testsuite/sim/frv/bv.cgs, testsuite/sim/frv/call.cgs, testsuite/sim/frv/cckc.cgs, testsuite/sim/frv/cckle.cgs, testsuite/sim/frv/cckls.cgs, testsuite/sim/frv/ccknc.cgs, testsuite/sim/frv/cckv.cgs, testsuite/sim/frv/ckc.cgs, testsuite/sim/frv/clduhu.cgs, testsuite/sim/frv/cmaddhus.cgs, testsuite/sim/frv/cmovgf.cgs, testsuite/sim/frv/cstbf.cgs, testsuite/sim/frv/cstd.cgs, testsuite/sim/frv/fbgelr.cgs, testsuite/sim/frv/fcbeqlr.cgs, testsuite/sim/frv/fckge.cgs, testsuite/sim/frv/fdivd.cgs, testsuite/sim/frv/fdmss.cgs, testsuite/sim/frv/fdmulcs.cgs, testsuite/sim/frv/fmaddd.cgs, testsuite/sim/frv/fnegs.cgs, testsuite/sim/frv/ftge.cgs, testsuite/sim/frv/ftige.cgs, testsuite/sim/frv/ldc.cgs, testsuite/sim/frv/lddcu.cgs, testsuite/sim/frv/lddf.cgs, testsuite/sim/frv/ldhfu.cgs, testsuite/sim/frv/ldqc.cgs, testsuite/sim/frv/ldqfu.cgs, testsuite/sim/frv/ldsbu.cgs, testsuite/sim/frv/lduhu.cgs, testsuite/sim/frv/mexpdhd.cgs, testsuite/sim/frv/mhsethih.cgs, testsuite/sim/frv/mmachu.cgs, testsuite/sim/frv/mmrdhu.cgs, testsuite/sim/frv/mov.cgs, testsuite/sim/frv/mqcpxiu.cgs, testsuite/sim/frv/mwtaccg.cgs, testsuite/sim/frv/nandncr.cgs, testsuite/sim/frv/nfmss.cgs, testsuite/sim/frv/nld.cgs, testsuite/sim/frv/nldhfu.cgs, testsuite/sim/frv/nlduhi.cgs, testsuite/sim/frv/not.cgs, testsuite/sim/frv/smul.cgs, testsuite/sim/frv/stdcu.cgs, testsuite/sim/frv/stdf.cgs, testsuite/sim/frv/stdi.cgs, testsuite/sim/frv/sthfi.cgs, testsuite/sim/frv/swap.cgs, testsuite/sim/frv/tine.cgs, testsuite/sim/frv/bcvlr.cgs, testsuite/sim/frv/beqlr.cgs, testsuite/sim/frv/cfckue.cgs, testsuite/sim/frv/cjmpl.cgs, testsuite/sim/frv/cmbtoh.cgs, testsuite/sim/frv/cmhtob.cgs, testsuite/sim/frv/cmqmachu.cgs, testsuite/sim/frv/csmulcc.cgs, testsuite/sim/frv/cst.cgs, testsuite/sim/frv/cstdu.cgs, testsuite/sim/frv/fabss.cgs, testsuite/sim/frv/fbugelr.cgs, testsuite/sim/frv/fbullr.cgs, testsuite/sim/frv/fcbgtlr.cgs, testsuite/sim/frv/fcbnolr.cgs, testsuite/sim/frv/fdstoi.cgs, testsuite/sim/frv/fitod.cgs, testsuite/sim/frv/icei.cgs, testsuite/sim/frv/ldd.cgs, testsuite/sim/frv/lddfu.cgs, testsuite/sim/frv/ldhf.cgs, testsuite/sim/frv/ldqf.cgs, testsuite/sim/frv/ldub.cgs, testsuite/sim/frv/mcpxru.cgs, testsuite/sim/frv/mor.cgs, testsuite/sim/frv/mqcpxrs.cgs, testsuite/sim/frv/mqsrahi.cgs, testsuite/sim/frv/nfdmuls.cgs, testsuite/sim/frv/nldq.cgs, testsuite/sim/frv/norncr.cgs, testsuite/sim/frv/nsdivi.cgs, testsuite/sim/frv/nudivi.cgs, testsuite/sim/frv/srai.cgs, testsuite/sim/frv/sraicc.cgs, testsuite/sim/frv/tihi.cgs, testsuite/sim/frv/umulcc.cgs, testsuite/sim/frv/bceqlr.cgs, testsuite/sim/frv/cand.cgs, testsuite/sim/frv/ccmp.cgs, testsuite/sim/frv/cfckne.cgs, testsuite/sim/frv/cmqmachs.cgs, testsuite/sim/frv/fckue.cgs, testsuite/sim/frv/ftne.cgs, testsuite/sim/frv/lddc.cgs, testsuite/sim/frv/ldsh.cgs, testsuite/sim/frv/mdcutssi.cgs, testsuite/sim/frv/mdpackh.cgs, testsuite/sim/frv/mqmulhs.cgs, testsuite/sim/frv/nldi.cgs, testsuite/sim/frv/nldub.cgs, testsuite/sim/frv/ori.cgs, testsuite/sim/frv/srlicc.cgs, testsuite/sim/frv/sub.cgs, testsuite/sim/frv/bnlr.cgs, testsuite/sim/frv/bnolr.cgs, testsuite/sim/frv/bnv.cgs, testsuite/sim/frv/cfabss.cgs, testsuite/sim/frv/ckgt.cgs, testsuite/sim/frv/ckp.cgs, testsuite/sim/frv/cldd.cgs, testsuite/sim/frv/clrfa.cgs, testsuite/sim/frv/cxor.cgs, testsuite/sim/frv/cxorcc.cgs, testsuite/sim/frv/dcf.cgs, testsuite/sim/frv/fbno.cgs, testsuite/sim/frv/fckule.cgs, testsuite/sim/frv/ftuge.cgs, testsuite/sim/frv/ici.cgs, testsuite/sim/frv/icpl.cgs, testsuite/sim/frv/ldqfi.cgs, testsuite/sim/frv/mcop2.cgs, testsuite/sim/frv/mdrotli.cgs, testsuite/sim/frv/movfg.cgs, testsuite/sim/frv/movgfq.cgs, testsuite/sim/frv/mqlmths.cgs, testsuite/sim/frv/mqmachs.cgs, testsuite/sim/frv/nfddivs.cgs, testsuite/sim/frv/nldfi.cgs, testsuite/sim/frv/nldqfi.cgs, testsuite/sim/frv/nop.cgs, testsuite/sim/frv/norcr.cgs, testsuite/sim/frv/orcr.cgs, testsuite/sim/frv/slli.cgs, testsuite/sim/frv/stbu.cgs, testsuite/sim/frv/stdu.cgs, testsuite/sim/frv/stqi.cgs, testsuite/sim/frv/tnv.cgs, testsuite/sim/frv/tra.cgs, testsuite/sim/frv/xorcc.cgs, testsuite/sim/frv/andi.cgs, testsuite/sim/frv/bar.cgs, testsuite/sim/frv/bcnlr.cgs, testsuite/sim/frv/bcnolr.cgs, testsuite/sim/frv/bhi.cgs, testsuite/sim/frv/bhilr.cgs, testsuite/sim/frv/bvlr.cgs, testsuite/sim/frv/cckhi.cgs, testsuite/sim/frv/ccklt.cgs, testsuite/sim/frv/cfstoi.cgs, testsuite/sim/frv/ckeq.cgs, testsuite/sim/frv/cknv.cgs, testsuite/sim/frv/cldub.cgs, testsuite/sim/frv/clrga.cgs, testsuite/sim/frv/cstdfu.cgs, testsuite/sim/frv/fbgt.cgs, testsuite/sim/frv/fbne.cgs, testsuite/sim/frv/fcbralr.cgs, testsuite/sim/frv/fckuge.cgs, testsuite/sim/frv/fdcmps.cgs, testsuite/sim/frv/fdmas.cgs, testsuite/sim/frv/fdnegs.cgs, testsuite/sim/frv/fsqrtd.cgs, testsuite/sim/frv/fsubd.cgs, testsuite/sim/frv/ftile.cgs, testsuite/sim/frv/ftlt.cgs, testsuite/sim/frv/ftule.cgs, testsuite/sim/frv/jmpl.cgs, testsuite/sim/frv/ldbfi.cgs, testsuite/sim/frv/mcpxrs.cgs, testsuite/sim/frv/mqxmachs.cgs, testsuite/sim/frv/msathu.cgs, testsuite/sim/frv/msubhss.cgs, testsuite/sim/frv/munpackh.cgs, testsuite/sim/frv/nfdmadds.cgs, testsuite/sim/frv/nldubu.cgs, testsuite/sim/frv/nlduh.cgs, testsuite/sim/frv/sllicc.cgs, testsuite/sim/frv/stbf.cgs, testsuite/sim/frv/stdc.pcgs, testsuite/sim/frv/stqc.pcgs, testsuite/sim/frv/tn.cgs, testsuite/sim/frv/tne.cgs, testsuite/sim/frv/andncr.cgs, testsuite/sim/frv/cfckgt.cgs, testsuite/sim/frv/cfckug.cgs, testsuite/sim/frv/cfmuls.cgs, testsuite/sim/frv/ckhi.cgs, testsuite/sim/frv/cmmachs.cgs, testsuite/sim/frv/cmor.cgs, testsuite/sim/frv/cmp.cgs, testsuite/sim/frv/cscan.cgs, testsuite/sim/frv/csmul.cgs, testsuite/sim/frv/cstbfu.cgs, testsuite/sim/frv/csthu.cgs, testsuite/sim/frv/csub.cgs, testsuite/sim/frv/fbulelr.cgs, testsuite/sim/frv/fcbgelr.cgs, testsuite/sim/frv/fcblelr.cgs, testsuite/sim/frv/fcblglr.cgs, testsuite/sim/frv/fdsubs.cgs, testsuite/sim/frv/fstoi.cgs, testsuite/sim/frv/fteq.cgs, testsuite/sim/frv/ftieq.cgs, testsuite/sim/frv/ftiuge.cgs, testsuite/sim/frv/ldu.cgs, testsuite/sim/frv/maveh.cgs, testsuite/sim/frv/mhsethis.cgs, testsuite/sim/frv/mhsetloh.cgs, testsuite/sim/frv/movfgd.cgs, testsuite/sim/frv/mwtacc.cgs, testsuite/sim/frv/nfdmulcs.cgs, testsuite/sim/frv/nldhf.cgs, testsuite/sim/frv/oricc.cgs, testsuite/sim/frv/sdiv.cgs, testsuite/sim/frv/smuli.cgs, testsuite/sim/frv/sthi.cgs, testsuite/sim/frv/stqcu.cgs, testsuite/sim/frv/stqf.pcgs, testsuite/sim/frv/subxcc.cgs, testsuite/sim/frv/tino.cgs, testsuite/sim/frv/addxi.cgs, testsuite/sim/frv/bcgelr.cgs, testsuite/sim/frv/bchilr.cgs, testsuite/sim/frv/bcnvlr.cgs, testsuite/sim/frv/bnclr.cgs, testsuite/sim/frv/break.cgs, testsuite/sim/frv/cfckge.cgs, testsuite/sim/frv/cfckuge.cgs, testsuite/sim/frv/cfckule.cgs, testsuite/sim/frv/ckn.cgs, testsuite/sim/frv/ckne.cgs, testsuite/sim/frv/ckra.cgs, testsuite/sim/frv/clddfu.cgs, testsuite/sim/frv/cldq.cgs, testsuite/sim/frv/cmaddhss.cgs, testsuite/sim/frv/cmexpdhd.cgs, testsuite/sim/frv/cmexpdhw.cgs, testsuite/sim/frv/cmnot.cgs, testsuite/sim/frv/commitga.cgs, testsuite/sim/frv/cop2.cgs, testsuite/sim/frv/csthfu.cgs, testsuite/sim/frv/cstq.cgs, testsuite/sim/frv/fbeqlr.cgs, testsuite/sim/frv/fble.cgs, testsuite/sim/frv/fblglr.cgs, testsuite/sim/frv/fbolr.cgs, testsuite/sim/frv/fcmps.cgs, testsuite/sim/frv/fdabss.cgs, testsuite/sim/frv/fmadds.cgs, testsuite/sim/frv/ftio.cgs, testsuite/sim/frv/ftiue.cgs, testsuite/sim/frv/ftno.cgs, testsuite/sim/frv/ftu.cgs, testsuite/sim/frv/interrupts.exp, testsuite/sim/frv/ldhfi.cgs, testsuite/sim/frv/ldq.cgs, testsuite/sim/frv/ldshi.cgs, testsuite/sim/frv/lrbranch.pcgs, testsuite/sim/frv/maddhss.cgs, testsuite/sim/frv/mclracc.cgs, testsuite/sim/frv/mwcuti.cgs, testsuite/sim/frv/nfdmas.cgs, testsuite/sim/frv/nfdstoi.cgs, testsuite/sim/frv/nfmuls.cgs, testsuite/sim/frv/nldd.cgs, testsuite/sim/frv/nudiv.cgs, testsuite/sim/frv/setlo.cgs, testsuite/sim/frv/sra.cgs, testsuite/sim/frv/stb.cgs, testsuite/sim/frv/std.pcgs, testsuite/sim/frv/sth.cgs, testsuite/sim/frv/subxicc.cgs, testsuite/sim/frv/tic.cgs, testsuite/sim/frv/tieq.cgs, testsuite/sim/frv/bclelr.cgs, testsuite/sim/frv/bltlr.cgs, testsuite/sim/frv/cfckra.cgs, testsuite/sim/frv/cldsbu.cgs, testsuite/sim/frv/commitfa.cgs, testsuite/sim/frv/cswap.cgs, testsuite/sim/frv/fabsd.cgs, testsuite/sim/frv/fbltlr.cgs, testsuite/sim/frv/fbnelr.cgs, testsuite/sim/frv/fcklg.cgs, testsuite/sim/frv/ftilg.cgs, testsuite/sim/frv/ftul.cgs, testsuite/sim/frv/ldbf.cgs, testsuite/sim/frv/nlddf.cgs, testsuite/sim/frv/tv.cgs, testsuite/sim/frv/allinsn.exp, testsuite/sim/frv/andcc.cgs, testsuite/sim/frv/bcplr.cgs, testsuite/sim/frv/bne.cgs, testsuite/sim/frv/cckp.cgs, testsuite/sim/frv/cckra.cgs, testsuite/sim/frv/ckge.cgs, testsuite/sim/frv/clddf.cgs, testsuite/sim/frv/clduh.cgs, testsuite/sim/frv/cmand.cgs, testsuite/sim/frv/cmcpxrs.cgs, testsuite/sim/frv/cmmulhu.cgs, testsuite/sim/frv/cmqmulhs.cgs, testsuite/sim/frv/csracc.cgs, testsuite/sim/frv/csrl.cgs, testsuite/sim/frv/fblt.cgs, testsuite/sim/frv/fbo.cgs, testsuite/sim/frv/fcbulr.cgs, testsuite/sim/frv/fckgt.cgs, testsuite/sim/frv/fckug.cgs, testsuite/sim/frv/fdadds.cgs, testsuite/sim/frv/fdmadds.cgs, testsuite/sim/frv/fmovd.cgs, testsuite/sim/frv/fmovs.cgs, testsuite/sim/frv/fmss.cgs, testsuite/sim/frv/ftigt.cgs, testsuite/sim/frv/ftira.cgs, testsuite/sim/frv/ldfi.cgs, testsuite/sim/frv/lduh.cgs, testsuite/sim/frv/mcpli.cgs, testsuite/sim/frv/mcutssi.cgs, testsuite/sim/frv/mrotri.cgs, testsuite/sim/frv/nfmas.cgs, testsuite/sim/frv/nldbf.cgs, testsuite/sim/frv/nldsb.cgs, testsuite/sim/frv/nldshu.cgs, testsuite/sim/frv/stcu.cgs, testsuite/sim/frv/std.cgs, testsuite/sim/frv/sti.cgs, testsuite/sim/frv/tigt.cgs, testsuite/sim/frv/tip.cgs, testsuite/sim/frv/tle.cgs, testsuite/sim/frv/udivi.cgs, testsuite/sim/frv/bcgtlr.cgs, testsuite/sim/frv/beq.cgs, testsuite/sim/frv/bralr.cgs, testsuite/sim/frv/cckno.cgs, testsuite/sim/frv/cfmadds.cgs, testsuite/sim/frv/cfnegs.cgs, testsuite/sim/frv/ckv.cgs, testsuite/sim/frv/cmovgfd.cgs, testsuite/sim/frv/cmxor.cgs, testsuite/sim/frv/commitgr.cgs, testsuite/sim/frv/cstfu.cgs, testsuite/sim/frv/dcei.cgs, testsuite/sim/frv/fbeq.cgs, testsuite/sim/frv/fbu.cgs, testsuite/sim/frv/fcbltlr.cgs, testsuite/sim/frv/fckle.cgs, testsuite/sim/frv/fmsubs.cgs, testsuite/sim/frv/ftle.cgs, testsuite/sim/frv/icul.cgs, testsuite/sim/frv/mbtoh.cgs, testsuite/sim/frv/mcop1.cgs, testsuite/sim/frv/mdsubaccs.cgs, testsuite/sim/frv/membar.cgs, testsuite/sim/frv/mhdseth.cgs, testsuite/sim/frv/mhsetlos.cgs, testsuite/sim/frv/mqmacxhs.cgs, testsuite/sim/frv/msaths.cgs, testsuite/sim/frv/nfdmss.cgs, testsuite/sim/frv/nldqfu.cgs, testsuite/sim/frv/nldsbu.cgs, testsuite/sim/frv/nldu.cgs, testsuite/sim/frv/nsdiv.cgs, testsuite/sim/frv/orcc.cgs, testsuite/sim/frv/sethilo.pcgs, testsuite/sim/frv/stqfu.cgs, testsuite/sim/frv/xori.cgs, testsuite/sim/frv/bplr.cgs, testsuite/sim/frv/cfcku.cgs, testsuite/sim/frv/interrupts/Ipipe-fr400.cgs, testsuite/sim/frv/interrupts/badalign-fr550.cgs, testsuite/sim/frv/interrupts/badalign.cgs, testsuite/sim/frv/interrupts/compound-fr550.cgs, testsuite/sim/frv/interrupts/compound.cgs, testsuite/sim/frv/interrupts/data_store_error-fr550.cgs, testsuite/sim/frv/interrupts/data_store_error.cgs, testsuite/sim/frv/interrupts/fp_exception.cgs, testsuite/sim/frv/interrupts/illinsn.cgs, testsuite/sim/frv/interrupts/insn_access_error-fr550.cgs, testsuite/sim/frv/interrupts/insn_access_error.cgs, testsuite/sim/frv/interrupts/mp_exception.cgs, testsuite/sim/frv/interrupts/regalign.cgs, testsuite/sim/frv/interrupts/reset.cgs, testsuite/sim/frv/interrupts/shadow_regs.cgs, testsuite/sim/frv/interrupts/timer.cgs, testsuite/sim/frv/fr400/addss.cgs, testsuite/sim/frv/fr400/allinsn.exp, testsuite/sim/frv/fr400/csdiv.cgs, testsuite/sim/frv/fr400/maddaccs.cgs, testsuite/sim/frv/fr400/masaccs.cgs, testsuite/sim/frv/fr400/maveh.cgs, testsuite/sim/frv/fr400/mclracc.cgs, testsuite/sim/frv/fr400/mhdsets.cgs, testsuite/sim/frv/fr400/mhsethih.cgs, testsuite/sim/frv/fr400/mhsethis.cgs, testsuite/sim/frv/fr400/mhsetloh.cgs, testsuite/sim/frv/fr400/movgs.cgs, testsuite/sim/frv/fr400/movsg.cgs, testsuite/sim/frv/fr400/msubaccs.cgs, testsuite/sim/frv/fr400/scutss.cgs, testsuite/sim/frv/fr400/sdiv.cgs, testsuite/sim/frv/fr400/sdivi.cgs, testsuite/sim/frv/fr400/slass.cgs, testsuite/sim/frv/fr400/smass.cgs, testsuite/sim/frv/fr400/smsss.cgs, testsuite/sim/frv/fr400/smu.cgs, testsuite/sim/frv/fr400/subss.cgs, testsuite/sim/frv/fr400/udiv.cgs, testsuite/sim/frv/fr400/udivi.cgs, testsuite/sim/frv/interrupts/Ipipe-fr500.cgs, testsuite/sim/frv/interrupts/fp_exception-fr550.cgs, testsuite/sim/frv/interrupts/privileged_instruction.cgs, testsuite/sim/frv/fr400/mhdseth.cgs, testsuite/sim/frv/fr400/mhsetlos.cgs, testsuite/sim/frv/fr550/cmaddhus.cgs, testsuite/sim/frv/fr550/cmcpxiu.cgs, testsuite/sim/frv/fr550/cmcpxru.cgs, testsuite/sim/frv/fr550/cmmachu.cgs, testsuite/sim/frv/fr550/cmqaddhss.cgs, testsuite/sim/frv/fr550/cmqsubhss.cgs, testsuite/sim/frv/fr550/cmsubhss.cgs, testsuite/sim/frv/fr550/cmsubhus.cgs, testsuite/sim/frv/fr550/mabshs.cgs, testsuite/sim/frv/fr550/maddhus.cgs, testsuite/sim/frv/fr550/masaccs.cgs, testsuite/sim/frv/fr550/mdaddaccs.cgs, testsuite/sim/frv/fr550/mdasaccs.cgs, testsuite/sim/frv/fr550/mmachs.cgs, testsuite/sim/frv/fr550/mmachu.cgs, testsuite/sim/frv/fr550/mmrdhs.cgs, testsuite/sim/frv/fr550/mqaddhss.cgs, testsuite/sim/frv/fr550/mqaddhus.cgs, testsuite/sim/frv/fr550/mqmachu.cgs, testsuite/sim/frv/fr550/mqsubhus.cgs, testsuite/sim/frv/fr550/mqxmacxhs.cgs, testsuite/sim/frv/fr550/msubhus.cgs, testsuite/sim/frv/fr550/mtrap.cgs, testsuite/sim/frv/fr550/udiv.cgs, testsuite/sim/frv/fr550/allinsn.exp, testsuite/sim/frv/fr550/cmaddhss.cgs, testsuite/sim/frv/fr550/cmmachs.cgs, testsuite/sim/frv/fr550/cmqaddhus.cgs, testsuite/sim/frv/fr550/cmqmachs.cgs, testsuite/sim/frv/fr550/cmqmachu.cgs, testsuite/sim/frv/fr550/cmqsubhus.cgs, testsuite/sim/frv/fr550/dcpl.cgs, testsuite/sim/frv/fr550/dcul.cgs, testsuite/sim/frv/fr550/maddaccs.cgs, testsuite/sim/frv/fr550/maddhss.cgs, testsuite/sim/frv/fr550/mdsubaccs.cgs, testsuite/sim/frv/fr550/mmrdhu.cgs, testsuite/sim/frv/fr550/mqmachs.cgs, testsuite/sim/frv/fr550/mqmacxhs.cgs, testsuite/sim/frv/fr550/mqsubhss.cgs, testsuite/sim/frv/fr550/mqxmachs.cgs, testsuite/sim/frv/fr550/msubaccs.cgs, testsuite/sim/frv/fr550/msubhss.cgs, testsuite/sim/frv/fr550/udivi.cgs, testsuite/sim/frv/fr500/allinsn.exp, testsuite/sim/frv/fr500/cmqaddhss.cgs, testsuite/sim/frv/fr500/cmqaddhus.cgs, testsuite/sim/frv/fr500/cmqsubhss.cgs, testsuite/sim/frv/fr500/cmqsubhus.cgs, testsuite/sim/frv/fr500/dcpl.cgs, testsuite/sim/frv/fr500/dcul.cgs, testsuite/sim/frv/fr500/mclracc.cgs, testsuite/sim/frv/fr500/mqaddhss.cgs, testsuite/sim/frv/fr500/mqaddhus.cgs, testsuite/sim/frv/fr500/mqsubhss.cgs, testsuite/sim/frv/fr500/mqsubhus.cgs, testsuite/sim/fr30/add.cgs, testsuite/sim/fr30/addn.cgs, testsuite/sim/fr30/addsp.cgs, testsuite/sim/fr30/and.cgs, testsuite/sim/fr30/asr.cgs, testsuite/sim/fr30/asr2.cgs, testsuite/sim/fr30/bandl.cgs, testsuite/sim/fr30/bc.cgs, testsuite/sim/fr30/bge.cgs, testsuite/sim/fr30/bgt.cgs, testsuite/sim/fr30/ble.cgs, testsuite/sim/fr30/bls.cgs, testsuite/sim/fr30/blt.cgs, testsuite/sim/fr30/bn.cgs, testsuite/sim/fr30/bnc.cgs, testsuite/sim/fr30/bno.cgs, testsuite/sim/fr30/borl.cgs, testsuite/sim/fr30/bp.cgs, testsuite/sim/fr30/bra.cgs, testsuite/sim/fr30/btsth.cgs, testsuite/sim/fr30/bv.cgs, testsuite/sim/fr30/call.cgs, testsuite/sim/fr30/cmp2.cgs, testsuite/sim/fr30/copld.cgs, testsuite/sim/fr30/copst.cgs, testsuite/sim/fr30/div.ms, testsuite/sim/fr30/div0s.cgs, testsuite/sim/fr30/div0u.cgs, testsuite/sim/fr30/div1.cgs, testsuite/sim/fr30/dmovh.cgs, testsuite/sim/fr30/eor.cgs, testsuite/sim/fr30/eorb.cgs, testsuite/sim/fr30/eorh.cgs, testsuite/sim/fr30/extsh.cgs, testsuite/sim/fr30/extub.cgs, testsuite/sim/fr30/jmp.cgs, testsuite/sim/fr30/ld.cgs, testsuite/sim/fr30/ldi20.cgs, testsuite/sim/fr30/ldi32.cgs, testsuite/sim/fr30/ldm1.cgs, testsuite/sim/fr30/ldres.cgs, testsuite/sim/fr30/lsr2.cgs, testsuite/sim/fr30/misc.exp, testsuite/sim/fr30/mov.cgs, testsuite/sim/fr30/mul.cgs, testsuite/sim/fr30/mulh.cgs, testsuite/sim/fr30/or.cgs, testsuite/sim/fr30/orccr.cgs, testsuite/sim/fr30/ret.cgs, testsuite/sim/fr30/reti.cgs, testsuite/sim/fr30/st.cgs, testsuite/sim/fr30/stilm.cgs, testsuite/sim/fr30/stm0.cgs, testsuite/sim/fr30/stm1.cgs, testsuite/sim/fr30/subc.cgs, testsuite/sim/fr30/subn.cgs, testsuite/sim/fr30/testutils.inc, testsuite/sim/fr30/add.ms, testsuite/sim/fr30/add2.cgs, testsuite/sim/fr30/addc.cgs, testsuite/sim/fr30/andb.cgs, testsuite/sim/fr30/andccr.cgs, testsuite/sim/fr30/bandh.cgs, testsuite/sim/fr30/bhi.cgs, testsuite/sim/fr30/bnv.cgs, testsuite/sim/fr30/btstl.cgs, testsuite/sim/fr30/cmp.cgs, testsuite/sim/fr30/copop.cgs, testsuite/sim/fr30/div3.cgs, testsuite/sim/fr30/div4s.cgs, testsuite/sim/fr30/extsb.cgs, testsuite/sim/fr30/extuh.cgs, testsuite/sim/fr30/hello.ms, testsuite/sim/fr30/ldm0.cgs, testsuite/sim/fr30/ldub.cgs, testsuite/sim/fr30/leave.cgs, testsuite/sim/fr30/lsl.cgs, testsuite/sim/fr30/lsl2.cgs, testsuite/sim/fr30/lsr.cgs, testsuite/sim/fr30/mulu.cgs, testsuite/sim/fr30/muluh.cgs, testsuite/sim/fr30/nop.cgs, testsuite/sim/fr30/orb.cgs, testsuite/sim/fr30/sub.cgs, testsuite/sim/fr30/xchb.cgs, testsuite/sim/fr30/addn2.cgs, testsuite/sim/fr30/allinsn.exp, testsuite/sim/fr30/andh.cgs, testsuite/sim/fr30/beorh.cgs, testsuite/sim/fr30/beorl.cgs, testsuite/sim/fr30/beq.cgs, testsuite/sim/fr30/bne.cgs, testsuite/sim/fr30/borh.cgs, testsuite/sim/fr30/copsv.cgs, testsuite/sim/fr30/div2.cgs, testsuite/sim/fr30/dmov.cgs, testsuite/sim/fr30/dmovb.cgs, testsuite/sim/fr30/enter.cgs, testsuite/sim/fr30/int.cgs, testsuite/sim/fr30/inte.cgs, testsuite/sim/fr30/ldi8.cgs, testsuite/sim/fr30/lduh.cgs, testsuite/sim/fr30/orh.cgs, testsuite/sim/fr30/stb.cgs, testsuite/sim/fr30/sth.cgs, testsuite/sim/fr30/stres.cgs, testsuite/sim/sh/fcmpeq.s, testsuite/sim/sh/fpchg.s, testsuite/sim/sh/swap.s, testsuite/sim/sh/add.s, testsuite/sim/sh/bclr.s, testsuite/sim/sh/bset.s, testsuite/sim/sh/bst.s, testsuite/sim/sh/bxor.s, testsuite/sim/sh/clip.s, testsuite/sim/sh/div.s, testsuite/sim/sh/fadd.s, testsuite/sim/sh/fail.s, testsuite/sim/sh/fcmpgt.s, testsuite/sim/sh/fcnvds.s, testsuite/sim/sh/fcnvsd.s, testsuite/sim/sh/fdiv.s, testsuite/sim/sh/fldi1.s, testsuite/sim/sh/fmov.s, testsuite/sim/sh/fmul.s, testsuite/sim/sh/fneg.s, testsuite/sim/sh/frchg.s, testsuite/sim/sh/fsca.s, testsuite/sim/sh/fsub.s, testsuite/sim/sh/ldrc.s, testsuite/sim/sh/loop.s, testsuite/sim/sh/macl.s, testsuite/sim/sh/macw.s, testsuite/sim/sh/mov.s, testsuite/sim/sh/movi.s, testsuite/sim/sh/movua.s, testsuite/sim/sh/movxy.s, testsuite/sim/sh/mulr.s, testsuite/sim/sh/pabs.s, testsuite/sim/sh/padd.s, testsuite/sim/sh/paddc.s, testsuite/sim/sh/pdmsb.s, testsuite/sim/sh/pmuls.s, testsuite/sim/sh/prnd.s, testsuite/sim/sh/pshai.s, testsuite/sim/sh/pshar.s, testsuite/sim/sh/pshli.s, testsuite/sim/sh/pshlr.s, testsuite/sim/sh/pswap.s, testsuite/sim/sh/pushpop.s, testsuite/sim/sh/sett.s, testsuite/sim/sh/shll.s, testsuite/sim/sh/shlr16.s, testsuite/sim/sh/shlr2.s, testsuite/sim/sh/testutils.inc, testsuite/sim/sh/ChangeLog, testsuite/sim/sh/and.s, testsuite/sim/sh/bldnot.s, testsuite/sim/sh/dmxy.s, testsuite/sim/sh/fipr.s, testsuite/sim/sh/fldi0.s, testsuite/sim/sh/fschg.s, testsuite/sim/sh/fsqrt.s, testsuite/sim/sh/ftrc.s, testsuite/sim/sh/movli.s, testsuite/sim/sh/pand.s, testsuite/sim/sh/pclr.s, testsuite/sim/sh/pdec.s, testsuite/sim/sh/pinc.s, testsuite/sim/sh/shll16.s, testsuite/sim/sh/shll2.s, testsuite/sim/sh/shlr.s, testsuite/sim/sh/shlr8.s, testsuite/sim/m32r/jmp.cgs, testsuite/sim/m32r/ld-d.cgs, testsuite/sim/m32r/lock.cgs, testsuite/sim/m32r/mvfachi.cgs, testsuite/sim/m32r/rem.cgs, testsuite/sim/m32r/sra3.cgs, testsuite/sim/m32r/testutils.inc, testsuite/sim/m32r/xor.cgs, testsuite/sim/sh/allinsn.exp, testsuite/sim/sh/bandor.s, testsuite/sim/sh/bandornot.s, testsuite/sim/sh/bld.s, testsuite/sim/sh/fabs.s, testsuite/sim/sh/flds.s, testsuite/sim/sh/float.s, testsuite/sim/sh/fmac.s, testsuite/sim/sh/fsrra.s, testsuite/sim/sh/pass.s, testsuite/sim/sh/psub.s, testsuite/sim/sh/resbank.s, testsuite/sim/sh/shll8.s, testsuite/sim/m32r/addi.cgs, testsuite/sim/m32r/addv3.cgs, testsuite/sim/m32r/addx.cgs, testsuite/sim/m32r/and.cgs, testsuite/sim/m32r/bc24.cgs, testsuite/sim/m32r/bc8.cgs, testsuite/sim/m32r/bgez.cgs, testsuite/sim/m32r/bl8.cgs, testsuite/sim/m32r/bltz.cgs, testsuite/sim/m32r/bnez.cgs, testsuite/sim/m32r/bra24.cgs, testsuite/sim/m32r/bra8.cgs, testsuite/sim/m32r/cmpu.cgs, testsuite/sim/m32r/div.cgs, testsuite/sim/m32r/hw-trap.ms, testsuite/sim/m32r/jl.cgs, testsuite/sim/m32r/ld-plus.cgs, testsuite/sim/m32r/ld.cgs, testsuite/sim/m32r/ldb-d.cgs, testsuite/sim/m32r/ldh-d.cgs, testsuite/sim/m32r/ldi16.cgs, testsuite/sim/m32r/lduh-d.cgs, testsuite/sim/m32r/machi.cgs, testsuite/sim/m32r/misc.exp, testsuite/sim/m32r/mullo.cgs, testsuite/sim/m32r/mulwlo.cgs, testsuite/sim/m32r/mvfc.cgs, testsuite/sim/m32r/or.cgs, testsuite/sim/m32r/rac.cgs, testsuite/sim/m32r/seth.cgs, testsuite/sim/m32r/sll.cgs, testsuite/sim/m32r/sll3.cgs, testsuite/sim/m32r/srl.cgs, testsuite/sim/m32r/srl3.cgs, testsuite/sim/m32r/st-d.cgs, testsuite/sim/m32r/st-minus.cgs, testsuite/sim/m32r/st.cgs, testsuite/sim/m32r/subv.cgs, testsuite/sim/m32r/uread32.ms, testsuite/sim/m32r/add.cgs, testsuite/sim/m32r/add3.cgs, testsuite/sim/m32r/and3.cgs, testsuite/sim/m32r/blez.cgs, testsuite/sim/m32r/bnc24.cgs, testsuite/sim/m32r/bnc8.cgs, testsuite/sim/m32r/cmpi.cgs, testsuite/sim/m32r/cmpui.cgs, testsuite/sim/m32r/divu.cgs, testsuite/sim/m32r/ldb.cgs, testsuite/sim/m32r/ldh.cgs, testsuite/sim/m32r/ldub.cgs, testsuite/sim/m32r/macwhi.cgs, testsuite/sim/m32r/mul.cgs, testsuite/sim/m32r/mv.cgs, testsuite/sim/m32r/mvfaclo.cgs, testsuite/sim/m32r/mvtaclo.cgs, testsuite/sim/m32r/mvtc.cgs, testsuite/sim/m32r/nop.cgs, testsuite/sim/m32r/not.cgs, testsuite/sim/m32r/rach.cgs, testsuite/sim/m32r/remu.cgs, testsuite/sim/m32r/rte.cgs, testsuite/sim/m32r/slli.cgs, testsuite/sim/m32r/srai.cgs, testsuite/sim/m32r/srli.cgs, testsuite/sim/m32r/stb-d.cgs, testsuite/sim/m32r/sub.cgs, testsuite/sim/m32r/subx.cgs, testsuite/sim/m32r/uwrite32.ms, testsuite/sim/m32r/addv.cgs, testsuite/sim/m32r/allinsn.exp, testsuite/sim/m32r/beq.cgs, testsuite/sim/m32r/beqz.cgs, testsuite/sim/m32r/bgtz.cgs, testsuite/sim/m32r/bl24.cgs, testsuite/sim/m32r/bne.cgs, testsuite/sim/m32r/cmp.cgs, testsuite/sim/m32r/hello.ms, testsuite/sim/m32r/ld24.cgs, testsuite/sim/m32r/ldi8.cgs, testsuite/sim/m32r/ldub-d.cgs, testsuite/sim/m32r/lduh.cgs, testsuite/sim/m32r/maclo.cgs, testsuite/sim/m32r/macwlo.cgs, testsuite/sim/m32r/mulhi.cgs, testsuite/sim/m32r/mulwhi.cgs, testsuite/sim/m32r/mvfacmi.cgs, testsuite/sim/m32r/mvtachi.cgs, testsuite/sim/m32r/neg.cgs, testsuite/sim/m32r/or3.cgs, testsuite/sim/m32r/sra.cgs, testsuite/sim/m32r/st-plus.cgs, testsuite/sim/m32r/stb.cgs, testsuite/sim/m32r/sth-d.cgs, testsuite/sim/m32r/sth.cgs, testsuite/sim/m32r/trap.cgs, testsuite/sim/m32r/unlock.cgs, testsuite/sim/m32r/uread16.ms, testsuite/sim/m32r/uwrite16.ms, testsuite/sim/m32r/xor3.cgs, testsuite/sim/h8300/adds.s, testsuite/sim/h8300/addw.s, testsuite/sim/h8300/addx.s, testsuite/sim/h8300/andl.s, testsuite/sim/h8300/biand.s, testsuite/sim/h8300/bra.s, testsuite/sim/h8300/brabc.s, testsuite/sim/h8300/bset.s, testsuite/sim/h8300/dec.s, testsuite/sim/h8300/div.s, testsuite/sim/h8300/extw.s, testsuite/sim/h8300/inc.s, testsuite/sim/h8300/jmp.s, testsuite/sim/h8300/ldm.s, testsuite/sim/h8300/mac.s, testsuite/sim/h8300/movb.s, testsuite/sim/h8300/movmd.s, testsuite/sim/h8300/movsd.s, testsuite/sim/h8300/mul.s, testsuite/sim/h8300/nop.s, testsuite/sim/h8300/orw.s, testsuite/sim/h8300/rotl.s, testsuite/sim/h8300/rotxl.s, testsuite/sim/h8300/shal.s, testsuite/sim/h8300/shar.s, testsuite/sim/h8300/shll.s, testsuite/sim/h8300/subb.s, testsuite/sim/h8300/subl.s, testsuite/sim/h8300/subs.s, testsuite/sim/h8300/subx.s, testsuite/sim/h8300/tas.s, testsuite/sim/h8300/testutils.inc, testsuite/sim/h8300/xorl.s, testsuite/sim/h8300/addb.s, testsuite/sim/h8300/band.s, testsuite/sim/h8300/bfld.s, testsuite/sim/h8300/cmpl.s, testsuite/sim/h8300/das.s, testsuite/sim/h8300/movl.s, testsuite/sim/h8300/movw.s, testsuite/sim/h8300/neg.s, testsuite/sim/h8300/not.s, testsuite/sim/h8300/orl.s, testsuite/sim/h8300/rotxr.s, testsuite/sim/h8300/shlr.s, testsuite/sim/h8300/stack.s, testsuite/sim/h8300/stc.s, testsuite/sim/h8300/subw.s, testsuite/sim/h8300/xorb.s, testsuite/sim/h8300/xorw.s, testsuite/sim/h8300/ChangeLog, testsuite/sim/h8300/addl.s, testsuite/sim/h8300/allinsn.exp, testsuite/sim/h8300/andb.s, testsuite/sim/h8300/andw.s, testsuite/sim/h8300/cmpb.s, testsuite/sim/h8300/cmpw.s, testsuite/sim/h8300/daa.s, testsuite/sim/h8300/extl.s, testsuite/sim/h8300/ldc.s, testsuite/sim/h8300/mova.s, testsuite/sim/h8300/orb.s, testsuite/sim/h8300/rotr.s, testsuite/sim/arm/add.cgs, testsuite/sim/arm/and.cgs, testsuite/sim/arm/b.cgs, testsuite/sim/arm/bic.cgs, testsuite/sim/arm/bl.cgs, testsuite/sim/arm/bx.cgs, testsuite/sim/arm/cmn.cgs, testsuite/sim/arm/eor.cgs, testsuite/sim/arm/ldm.cgs, testsuite/sim/arm/ldr.cgs, testsuite/sim/arm/ldrb.cgs, testsuite/sim/arm/ldrh.cgs, testsuite/sim/arm/ldrsb.cgs, testsuite/sim/arm/ldrsh.cgs, testsuite/sim/arm/misaligned1.ms, testsuite/sim/arm/misaligned2.ms, testsuite/sim/arm/misaligned3.ms, testsuite/sim/arm/misc.exp, testsuite/sim/arm/mov.cgs, testsuite/sim/arm/mrs.cgs, testsuite/sim/arm/mul.cgs, testsuite/sim/arm/mvn.cgs, testsuite/sim/arm/orr.cgs, testsuite/sim/arm/rsb.cgs, testsuite/sim/arm/smlal.cgs, testsuite/sim/arm/stm.cgs, testsuite/sim/arm/swi.cgs, testsuite/sim/arm/swpb.cgs, testsuite/sim/arm/teq.cgs, testsuite/sim/arm/testutils.inc, testsuite/sim/arm/tst.cgs, testsuite/sim/arm/umlal.cgs, testsuite/sim/arm/umull.cgs, testsuite/sim/arm/adc.cgs, testsuite/sim/arm/allinsn.exp, testsuite/sim/arm/cmp.cgs, testsuite/sim/arm/hello.ms, testsuite/sim/arm/mla.cgs, testsuite/sim/arm/msr.cgs, testsuite/sim/arm/rsc.cgs, testsuite/sim/arm/sbc.cgs, testsuite/sim/arm/smull.cgs, testsuite/sim/arm/str.cgs, testsuite/sim/arm/strb.cgs, testsuite/sim/arm/strh.cgs, testsuite/sim/arm/sub.cgs, testsuite/sim/arm/swp.cgs, testsuite/sim/arm/iwmmxt/tmia.cgs, testsuite/sim/arm/iwmmxt/wror.cgs, testsuite/sim/arm/iwmmxt/wsll.cgs, testsuite/sim/arm/iwmmxt/iwmmxt.exp, testsuite/sim/arm/iwmmxt/tbcst.cgs, testsuite/sim/arm/iwmmxt/testutils.inc, testsuite/sim/arm/iwmmxt/textrm.cgs, testsuite/sim/arm/iwmmxt/tinsr.cgs, testsuite/sim/arm/iwmmxt/tmiaph.cgs, testsuite/sim/arm/iwmmxt/tmiaxy.cgs, testsuite/sim/arm/iwmmxt/tmovmsk.cgs, testsuite/sim/arm/iwmmxt/wacc.cgs, testsuite/sim/arm/iwmmxt/wadd.cgs, testsuite/sim/arm/iwmmxt/waligni.cgs, testsuite/sim/arm/iwmmxt/walignr.cgs, testsuite/sim/arm/iwmmxt/wand.cgs, testsuite/sim/arm/iwmmxt/wandn.cgs, testsuite/sim/arm/iwmmxt/wavg2.cgs, testsuite/sim/arm/iwmmxt/wcmpeq.cgs, testsuite/sim/arm/iwmmxt/wcmpgt.cgs, testsuite/sim/arm/iwmmxt/wmac.cgs, testsuite/sim/arm/iwmmxt/wmadd.cgs, testsuite/sim/arm/iwmmxt/wmax.cgs, testsuite/sim/arm/iwmmxt/wmin.cgs, testsuite/sim/arm/iwmmxt/wmov.cgs, testsuite/sim/arm/iwmmxt/wmul.cgs, testsuite/sim/arm/iwmmxt/wor.cgs, testsuite/sim/arm/iwmmxt/wpack.cgs, testsuite/sim/arm/iwmmxt/wsad.cgs, testsuite/sim/arm/iwmmxt/wshufh.cgs, testsuite/sim/arm/iwmmxt/wsra.cgs, testsuite/sim/arm/iwmmxt/wsrl.cgs, testsuite/sim/arm/iwmmxt/wsub.cgs, testsuite/sim/arm/iwmmxt/wunpckeh.cgs, testsuite/sim/arm/iwmmxt/wunpckel.cgs, testsuite/sim/arm/iwmmxt/wunpckih.cgs, testsuite/sim/arm/iwmmxt/wunpckil.cgs, testsuite/sim/arm/iwmmxt/wxor.cgs, testsuite/sim/arm/iwmmxt/wzero.cgs, testsuite/sim/arm/thumb/add-hd-rs.cgs, testsuite/sim/arm/thumb/add.cgs, testsuite/sim/arm/thumb/addi.cgs, testsuite/sim/arm/thumb/and.cgs, testsuite/sim/arm/thumb/asr.cgs, testsuite/sim/arm/thumb/b.cgs, testsuite/sim/arm/thumb/bcs.cgs, testsuite/sim/arm/thumb/bge.cgs, testsuite/sim/arm/thumb/bgt.cgs, testsuite/sim/arm/thumb/bic.cgs, testsuite/sim/arm/thumb/bl-lo.cgs, testsuite/sim/arm/thumb/ble.cgs, testsuite/sim/arm/thumb/blt.cgs, testsuite/sim/arm/thumb/bmi.cgs, testsuite/sim/arm/thumb/bx-rs.cgs, testsuite/sim/arm/thumb/cmn.cgs, testsuite/sim/arm/thumb/cmp-hd-hs.cgs, testsuite/sim/arm/thumb/cmp-hd-rs.cgs, testsuite/sim/arm/thumb/eor.cgs, testsuite/sim/arm/thumb/lda-pc.cgs, testsuite/sim/arm/thumb/lda-sp.cgs, testsuite/sim/arm/thumb/ldr-imm.cgs, testsuite/sim/arm/thumb/ldr-sprel.cgs, testsuite/sim/arm/thumb/ldrb-imm.cgs, testsuite/sim/arm/thumb/ldrb.cgs, testsuite/sim/arm/thumb/ldrh.cgs, testsuite/sim/arm/thumb/ldsb.cgs, testsuite/sim/arm/thumb/mov-hd-rs.cgs, testsuite/sim/arm/thumb/mul.cgs, testsuite/sim/arm/thumb/mvn.cgs, testsuite/sim/arm/thumb/pop-pc.cgs, testsuite/sim/arm/thumb/pop.cgs, testsuite/sim/arm/thumb/push.cgs, testsuite/sim/arm/thumb/str-sprel.cgs, testsuite/sim/arm/thumb/subi.cgs, testsuite/sim/arm/thumb/swi.cgs, testsuite/sim/arm/thumb/testutils.inc, testsuite/sim/arm/thumb/tst.cgs, testsuite/sim/arm/thumb/adc.cgs, testsuite/sim/arm/thumb/add-rd-hs.cgs, testsuite/sim/arm/thumb/add-sp.cgs, testsuite/sim/arm/thumb/addi8.cgs, testsuite/sim/arm/thumb/allthumb.exp, testsuite/sim/arm/thumb/bhi.cgs, testsuite/sim/arm/thumb/bl-hi.cgs, testsuite/sim/arm/thumb/bls.cgs, testsuite/sim/arm/thumb/bpl.cgs, testsuite/sim/arm/thumb/bvc.cgs, testsuite/sim/arm/thumb/bvs.cgs, testsuite/sim/arm/thumb/bx-hs.cgs, testsuite/sim/arm/thumb/cmp-rd-hs.cgs, testsuite/sim/arm/thumb/cmp.cgs, testsuite/sim/arm/thumb/ldmia.cgs, testsuite/sim/arm/thumb/ldr.cgs, testsuite/sim/arm/thumb/ldrh-imm.cgs, testsuite/sim/arm/thumb/ldsh.cgs, testsuite/sim/arm/thumb/lsl.cgs, testsuite/sim/arm/thumb/lsr.cgs, testsuite/sim/arm/thumb/mov-hd-hs.cgs, testsuite/sim/arm/thumb/mov.cgs, testsuite/sim/arm/thumb/orr.cgs, testsuite/sim/arm/thumb/push-lr.cgs, testsuite/sim/arm/thumb/sbc.cgs, testsuite/sim/arm/thumb/stmia.cgs, testsuite/sim/arm/thumb/str.cgs, testsuite/sim/arm/thumb/strb-imm.cgs, testsuite/sim/arm/thumb/strb.cgs, testsuite/sim/arm/thumb/strh-imm.cgs, testsuite/sim/arm/thumb/strh.cgs, testsuite/sim/arm/thumb/sub-sp.cgs, testsuite/sim/arm/thumb/sub.cgs, testsuite/sim/arm/thumb/subi8.cgs, testsuite/sim/arm/thumb/add-hd-hs.cgs, testsuite/sim/arm/thumb/bcc.cgs, testsuite/sim/arm/thumb/beq.cgs, testsuite/sim/arm/thumb/bne.cgs, testsuite/sim/arm/thumb/ldr-pc.cgs, testsuite/sim/arm/thumb/mov-rd-hs.cgs, testsuite/sim/arm/thumb/neg.cgs, testsuite/sim/arm/thumb/ror.cgs, testsuite/sim/arm/thumb/str-imm.cgs, testsuite/sim/arm/xscale/blx.cgs, testsuite/sim/arm/xscale/mia.cgs, testsuite/sim/arm/xscale/miaph.cgs, testsuite/sim/arm/xscale/miaxy.cgs, testsuite/sim/arm/xscale/mra.cgs, testsuite/sim/arm/xscale/testutils.inc, testsuite/sim/arm/xscale/xscale.exp, testsuite/common/Make-common.in, testsuite/common/Makefile.in, testsuite/common/alu-n-tst.h, testsuite/common/alu-tst.c, testsuite/common/bits-gen.c, testsuite/common/bits-tst.c, testsuite/common/fpu-tst.c, testsuite/config/default.exp, testsuite/frv-elf/ChangeLog, testsuite/frv-elf/Makefile.in, testsuite/frv-elf/cache.s, testsuite/frv-elf/configure.ac, testsuite/frv-elf/exit47.s, testsuite/frv-elf/grloop.s, testsuite/frv-elf/hello.s, testsuite/frv-elf/loop.s, arm/Makefile.in, arm/README, arm/armemu.c, arm/armfpe.h, arm/arminit.c, arm/armsupp.c, arm/bag.h, arm/communicate.c, arm/communicate.h, arm/config.in, arm/configure.ac, arm/dbg_conf.h, arm/dbg_cp.h, arm/dbg_hif.h, arm/gdbhost.c, arm/wrapper.c, testsuite/frv-elf/configure, testsuite/mips64el-elf/ChangeLog, testsuite/mips64el-elf/Makefile.in, testsuite/mips64el-elf/configure, testsuite/mips64el-elf/configure.ac, arm/ChangeLog, arm/acconfig.h, arm/armcopro.c, arm/armdefs.h, arm/armos.c, arm/armos.h, arm/armrdi.c, arm/armvirt.c, arm/bag.c, arm/iwmmxt.c, arm/iwmmxt.h, arm/kid.c, arm/main.c, arm/maverick.c, arm/parent.c, arm/tconfig.in, arm/thumbemu.c, arm/COPYING, arm/armemu.h, arm/armopts.h, arm/configure, arm/dbg_rdi.h, arm/gdbhost.h, igen/Makefile.in, igen/gen-engine.h, igen/ld-cache.c, igen/ld-decode.c, igen/lf.h, igen/acconfig.h, igen/config.in, igen/configure.ac, igen/filter.c, igen/filter.h, igen/filter_host.c, igen/filter_host.h, igen/gen-engine.c, igen/gen-icache.c, igen/gen-icache.h, igen/gen-idecode.c, igen/gen-idecode.h, igen/gen-itable.h, igen/gen-model.c, igen/gen-model.h, igen/gen-semantics.c, igen/gen-support.c, igen/gen-support.h, igen/gen.c, igen/gen.h, igen/igen.c, igen/igen.h, igen/ld-cache.h, igen/ld-decode.h, igen/ld-insn.c, igen/misc.h, igen/table.c, igen/table.h, igen/ChangeLog, igen/compare_igen_models, igen/configure, igen/gen-itable.c, igen/gen-semantics.h, igen/ld-insn.h, igen/lf.c, igen/misc.c, m68hc11/ChangeLog, m68hc11/Makefile.in, m68hc11/config.in, m68hc11/configure, m68hc11/configure.ac, m68hc11/dv-m68hc11.c, m68hc11/dv-m68hc11eepr.c, m68hc11/dv-m68hc11sio.c, m68hc11/dv-m68hc11spi.c, m68hc11/dv-m68hc11tim.c, m68hc11/dv-nvram.c, m68hc11/emulos.c, m68hc11/gencode.c, m68hc11/interp.c, m68hc11/interrupts.c, m68hc11/interrupts.h, m68hc11/m68hc11_sim.c, m68hc11/sim-main.h, erc32/ChangeLog, erc32/Makefile.in, erc32/NEWS, erc32/README.erc32, erc32/README.gdb, erc32/README.sis, erc32/acconfig.h, erc32/config.in, erc32/configure, erc32/configure.ac, erc32/end.c, erc32/erc32.c, erc32/exec.c, erc32/float.c, erc32/func.c, erc32/help.c, erc32/interf.c, erc32/sis.c, erc32/sis.h, erc32/startsim, iq2000/ChangeLog, iq2000/Makefile.in, iq2000/acconfig.h, iq2000/arch.c, iq2000/arch.h, iq2000/config.in, iq2000/configure.ac, iq2000/cpu.c, iq2000/cpu.h, iq2000/cpuall.h, iq2000/decode.h, iq2000/iq2000-sim.h, iq2000/iq2000.c, iq2000/mloop.in, iq2000/sem.c, iq2000/sim-main.h, iq2000/tconfig.in, iq2000/configure, iq2000/decode.c, iq2000/model.c, iq2000/sem-switch.c, iq2000/sim-if.c: delete 30MB unused 2010-09-26 14:35 jkrell * m3-sys/m3cc/gcc/: configure, configure.ac, gcc/builtins.c, gcc/real.c, gcc/real.h, gcc/toplev.c: remove mpfr dependency from 4.3 as well, and it successfully links with the reduce gmp 2010-09-26 14:02 jkrell * m3-sys/m3cc/src/clean_marker.txt: trigger clean build 2010-09-26 14:01 jkrell * 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, tests/Makefile.am, tests/Makefile.in, tests/cmp_str.c, tests/inp_str.data, tests/memory.c, tests/mpf_compat.c, tests/mpf_compat.h, tests/mpfr-test.h, tests/mpfr_compat.c, tests/reuse.c, tests/rnd_mode.c, tests/tabs.c, tests/tacos.c, tests/tacosh.c, tests/tadd.c, tests/tadd1sp.c, tests/tadd_ui.c, tests/tagm.c, tests/tasin.c, tests/tasinh.c, tests/tatan.c, tests/tatanh.c, tests/tcan_round.c, tests/tcbrt.c, tests/tcheck.c, tests/tcmp.c, tests/tcmp2.c, tests/tcmp_d.c, tests/tcmp_ld.c, tests/tcmp_ui.c, tests/tcmpabs.c, tests/tcomparisons.c, tests/tconst_catalan.c, tests/tconst_euler.c, tests/tconst_log2.c, tests/tconst_pi.c, tests/tcopysign.c, tests/tcos.c, tests/tcosh.c, tests/tcot.c, tests/tcoth.c, tests/tcsc.c, tests/tcsch.c, tests/tdim.c, tests/tdiv.c, tests/tdiv_ui.c, tests/teint.c, tests/teq.c, tests/terf.c, tests/tests.c, tests/texceptions.c, tests/texp.c, tests/texp10.c, tests/texp2.c, tests/texpm1.c, tests/tfactorial.c, tests/tfits.c, tests/tfma.c, tests/tfms.c, tests/tfrac.c, tests/tgamma.c, tests/tgeneric.c, tests/tgeneric_ui.c, tests/tget_d.c, tests/tget_d_2exp.c, tests/tget_f.c, tests/tget_ld_2exp.c, tests/tget_set_d64.c, tests/tget_sj.c, tests/tget_str.c, tests/tget_z.c, tests/tgmpop.c, tests/thyperbolic.c, tests/thypot.c, tests/tinits.c, tests/tinp_str.c, tests/tinternals.c, tests/tisnan.c, tests/tisqrt.c, tests/tj0.c, tests/tj1.c, tests/tjn.c, tests/tl2b.c, tests/tlgamma.c, tests/tlngamma.c, tests/tlog.c, tests/tlog10.c, tests/tlog1p.c, tests/tlog2.c, tests/tminmax.c, tests/tmul.c, tests/tmul_2exp.c, tests/tmul_ui.c, tests/tnext.c, tests/tout_str.c, tests/toutimpl.c, tests/tpow.c, tests/tpow3.c, tests/tpow_all.c, tests/tpow_z.c, tests/trandom.c, tests/tremquo.c, tests/trint.c, tests/troot.c, tests/tround_prec.c, tests/tsec.c, tests/tsech.c, tests/tset.c, tests/tset_d.c, tests/tset_exp.c, tests/tset_f.c, tests/tset_ld.c, tests/tset_q.c, tests/tset_si.c, tests/tset_sj.c, tests/tset_str.c, tests/tset_z.c, tests/tsgn.c, tests/tsi_op.c, tests/tsin.c, tests/tsin_cos.c, tests/tsinh.c, tests/tsqr.c, tests/tsqrt.c, tests/tsqrt_ui.c, tests/tstckintc.c, tests/tstrtofr.c, tests/tsub.c, tests/tsub1sp.c, tests/tsub_ui.c, tests/tsubnormal.c, tests/tsum.c, tests/tswap.c, tests/ttan.c, tests/ttanh.c, tests/ttrunc.c, tests/tui_div.c, tests/tui_pow.c, tests/tui_sub.c, tests/tversion.c, tests/ty0.c, tests/ty1.c, tests/tyn.c, tests/tzeta.c, tests/tzeta_ui.c: forgotten deletes 2010-09-26 13:56 jkrell * m3-sys/m3cc/gcc/gmp/gmp-impl.h: remove #include fib_table.h again (very late edits weren't tested, but the vast vast majority was) 2010-09-26 13:54 jkrell * m3-sys/m3cc/gcc/gmp/: gmp-h.in, gmp-impl.h: go back a version 2010-09-26 13:47 jkrell * m3-sys/m3cc/: gcc/gmp/Makefile.am, gcc/gmp/Makefile.in, gcc/gmp/acinclude.m4, gcc/gmp/aclocal.m4, gcc/gmp/compat.c, gcc/gmp/configure, gcc/gmp/configure.in, gcc/gmp/extract-dbl.c, gcc/gmp/gen-fac_ui.c, gcc/gmp/gen-fib.c, gcc/gmp/gen-psqr.c, gcc/gmp/gmp-h.in, gcc/gmp/gmp-impl.h, gcc/gmp/gmpxx.h, gcc/gmp/invalid.c, gcc/gmp/libmp.sym, gcc/gmp/longlong.h, gcc/gmp/mp-h.in, gcc/gmp/mp_dv_tab.c, gcc/gmp/mp_get_fns.c, gcc/gmp/mp_minv_tab.c, gcc/gmp/mp_set_fns.c, gcc/gmp/rand.c, gcc/gmp/randbui.c, gcc/gmp/randclr.c, gcc/gmp/randdef.c, gcc/gmp/randiset.c, gcc/gmp/randlc2s.c, gcc/gmp/randlc2x.c, gcc/gmp/randmt.c, gcc/gmp/randmt.h, gcc/gmp/randmts.c, gcc/gmp/randmui.c, gcc/gmp/rands.c, gcc/gmp/randsd.c, gcc/gmp/randsdui.c, gcc/gmp/tal-debug.c, gcc/gmp/tal-notreent.c, gcc/gmp/cxx/Makefile.am, gcc/gmp/cxx/Makefile.in, gcc/gmp/cxx/dummy.cc, gcc/gmp/cxx/isfuns.cc, gcc/gmp/cxx/ismpf.cc, gcc/gmp/cxx/ismpq.cc, gcc/gmp/cxx/ismpz.cc, gcc/gmp/cxx/ismpznw.cc, gcc/gmp/cxx/osdoprnti.cc, gcc/gmp/cxx/osfuns.cc, gcc/gmp/cxx/osmpf.cc, gcc/gmp/cxx/osmpq.cc, gcc/gmp/cxx/osmpz.cc, gcc/gmp/demos/Makefile.am, gcc/gmp/demos/Makefile.in, gcc/gmp/demos/factorize.c, gcc/gmp/demos/isprime.c, gcc/gmp/demos/pexpr-config-h.in, gcc/gmp/demos/pexpr.c, gcc/gmp/demos/primes.c, gcc/gmp/demos/qcn.c, gcc/gmp/demos/calc/Makefile.am, gcc/gmp/demos/calc/Makefile.in, gcc/gmp/demos/calc/README, gcc/gmp/demos/calc/calc-common.h, gcc/gmp/demos/calc/calc-config-h.in, gcc/gmp/demos/calc/calc.c, gcc/gmp/demos/calc/calc.h, gcc/gmp/demos/calc/calc.y, gcc/gmp/demos/calc/calclex.c, gcc/gmp/demos/calc/calclex.l, gcc/gmp/demos/calc/calcread.c, gcc/gmp/demos/expr/Makefile.am, gcc/gmp/demos/expr/Makefile.in, gcc/gmp/demos/expr/README, gcc/gmp/demos/expr/expr-impl.h, gcc/gmp/demos/expr/expr.c, gcc/gmp/demos/expr/expr.h, gcc/gmp/demos/expr/exprf.c, gcc/gmp/demos/expr/exprfa.c, gcc/gmp/demos/expr/exprq.c, gcc/gmp/demos/expr/exprqa.c, gcc/gmp/demos/expr/exprv.c, gcc/gmp/demos/expr/exprz.c, gcc/gmp/demos/expr/exprza.c, gcc/gmp/demos/expr/run-expr.c, gcc/gmp/demos/expr/t-expr.c, gcc/gmp/demos/perl/GMP.pm, gcc/gmp/demos/perl/GMP.xs, gcc/gmp/demos/perl/INSTALL, gcc/gmp/demos/perl/Makefile.PL, gcc/gmp/demos/perl/sample.pl, gcc/gmp/demos/perl/test.pl, gcc/gmp/demos/perl/test2.pl, gcc/gmp/demos/perl/typemap, gcc/gmp/demos/perl/GMP/Mpf.pm, gcc/gmp/demos/perl/GMP/Mpq.pm, gcc/gmp/demos/perl/GMP/Mpz.pm, gcc/gmp/demos/perl/GMP/Rand.pm, gcc/gmp/doc/Makefile.am, gcc/gmp/doc/Makefile.in, gcc/gmp/doc/configuration, gcc/gmp/doc/fdl.texi, gcc/gmp/doc/gmp.info, gcc/gmp/doc/gmp.info-1, gcc/gmp/doc/gmp.info-2, gcc/gmp/doc/gmp.texi, gcc/gmp/doc/isa_abi_headache, gcc/gmp/doc/mdate-sh, gcc/gmp/doc/projects.html, gcc/gmp/doc/stamp-vti, gcc/gmp/doc/tasks.html, gcc/gmp/doc/texinfo.tex, gcc/gmp/doc/version.texi, gcc/gmp/macos/Makefile.in, gcc/gmp/macos/README, gcc/gmp/macos/configure, gcc/gmp/macos/unix2mac, gcc/gmp/mpbsd/Makefile.am, gcc/gmp/mpbsd/Makefile.in, gcc/gmp/mpbsd/itom.c, gcc/gmp/mpbsd/mfree.c, gcc/gmp/mpbsd/min.c, gcc/gmp/mpbsd/mout.c, gcc/gmp/mpbsd/mtox.c, gcc/gmp/mpbsd/rpow.c, gcc/gmp/mpbsd/sdiv.c, gcc/gmp/mpbsd/xtom.c, gcc/gmp/mpf/Makefile.am, gcc/gmp/mpf/Makefile.in, gcc/gmp/mpf/abs.c, gcc/gmp/mpf/add.c, gcc/gmp/mpf/add_ui.c, gcc/gmp/mpf/ceilfloor.c, gcc/gmp/mpf/clear.c, gcc/gmp/mpf/cmp.c, gcc/gmp/mpf/cmp_d.c, gcc/gmp/mpf/cmp_si.c, gcc/gmp/mpf/cmp_ui.c, gcc/gmp/mpf/div.c, gcc/gmp/mpf/div_2exp.c, gcc/gmp/mpf/div_ui.c, gcc/gmp/mpf/dump.c, gcc/gmp/mpf/eq.c, gcc/gmp/mpf/fits_s.h, gcc/gmp/mpf/fits_sint.c, gcc/gmp/mpf/fits_slong.c, gcc/gmp/mpf/fits_sshort.c, gcc/gmp/mpf/fits_u.h, gcc/gmp/mpf/fits_uint.c, gcc/gmp/mpf/fits_ulong.c, gcc/gmp/mpf/fits_ushort.c, gcc/gmp/mpf/get_d.c, gcc/gmp/mpf/get_d_2exp.c, gcc/gmp/mpf/get_dfl_prec.c, gcc/gmp/mpf/get_prc.c, gcc/gmp/mpf/get_si.c, gcc/gmp/mpf/get_str.c, gcc/gmp/mpf/get_ui.c, gcc/gmp/mpf/init.c, gcc/gmp/mpf/init2.c, gcc/gmp/mpf/inp_str.c, gcc/gmp/mpf/int_p.c, gcc/gmp/mpf/iset.c, gcc/gmp/mpf/iset_d.c, gcc/gmp/mpf/iset_si.c, gcc/gmp/mpf/iset_str.c, gcc/gmp/mpf/iset_ui.c, gcc/gmp/mpf/mul.c, gcc/gmp/mpf/mul_2exp.c, gcc/gmp/mpf/mul_ui.c, gcc/gmp/mpf/neg.c, gcc/gmp/mpf/out_str.c, gcc/gmp/mpf/pow_ui.c, gcc/gmp/mpf/random2.c, gcc/gmp/mpf/reldiff.c, gcc/gmp/mpf/set.c, gcc/gmp/mpf/set_d.c, gcc/gmp/mpf/set_dfl_prec.c, gcc/gmp/mpf/set_prc.c, gcc/gmp/mpf/set_prc_raw.c, gcc/gmp/mpf/set_q.c, gcc/gmp/mpf/set_si.c, gcc/gmp/mpf/set_str.c, gcc/gmp/mpf/set_ui.c, gcc/gmp/mpf/set_z.c, gcc/gmp/mpf/size.c, gcc/gmp/mpf/sqrt.c, gcc/gmp/mpf/sqrt_ui.c, gcc/gmp/mpf/sub.c, gcc/gmp/mpf/sub_ui.c, gcc/gmp/mpf/swap.c, gcc/gmp/mpf/trunc.c, gcc/gmp/mpf/ui_div.c, gcc/gmp/mpf/ui_sub.c, gcc/gmp/mpf/urandomb.c, gcc/gmp/mpn/Makeasm.am, gcc/gmp/mpn/Makefile.am, gcc/gmp/mpn/Makefile.in, gcc/gmp/mpn/asm-defs.m4, gcc/gmp/mpn/cpp-ccas, gcc/gmp/mpn/m4-ccas, gcc/gmp/mpn/a29k/add_n.s, gcc/gmp/mpn/a29k/addmul_1.s, gcc/gmp/mpn/a29k/lshift.s, gcc/gmp/mpn/a29k/mul_1.s, gcc/gmp/mpn/a29k/rshift.s, gcc/gmp/mpn/a29k/sub_n.s, gcc/gmp/mpn/a29k/submul_1.s, gcc/gmp/mpn/a29k/udiv.s, gcc/gmp/mpn/a29k/umul.s, gcc/gmp/mpn/alpha/README, gcc/gmp/mpn/alpha/add_n.asm, gcc/gmp/mpn/alpha/addmul_1.asm, gcc/gmp/mpn/alpha/alpha-defs.m4, gcc/gmp/mpn/alpha/aorslsh1_n.asm, gcc/gmp/mpn/alpha/cntlz.asm, gcc/gmp/mpn/alpha/copyd.asm, gcc/gmp/mpn/alpha/copyi.asm, gcc/gmp/mpn/alpha/default.m4, gcc/gmp/mpn/alpha/dive_1.c, gcc/gmp/mpn/alpha/diveby3.asm, gcc/gmp/mpn/alpha/gmp-mparam.h, gcc/gmp/mpn/alpha/invert_limb.asm, gcc/gmp/mpn/alpha/lshift.asm, gcc/gmp/mpn/alpha/mod_34lsub1.asm, gcc/gmp/mpn/alpha/mode1o.asm, gcc/gmp/mpn/alpha/mul_1.asm, gcc/gmp/mpn/alpha/rshift.asm, gcc/gmp/mpn/alpha/sqr_diagonal.asm, gcc/gmp/mpn/alpha/sub_n.asm, gcc/gmp/mpn/alpha/submul_1.asm, gcc/gmp/mpn/alpha/umul.asm, gcc/gmp/mpn/alpha/unicos.m4, gcc/gmp/mpn/alpha/ev5/add_n.asm, gcc/gmp/mpn/alpha/ev5/com_n.asm, gcc/gmp/mpn/alpha/ev5/gmp-mparam.h, gcc/gmp/mpn/alpha/ev5/lshift.asm, gcc/gmp/mpn/alpha/ev5/rshift.asm, gcc/gmp/mpn/alpha/ev5/sub_n.asm, gcc/gmp/mpn/alpha/ev6/add_n.asm, gcc/gmp/mpn/alpha/ev6/addmul_1.asm, gcc/gmp/mpn/alpha/ev6/gmp-mparam.h, gcc/gmp/mpn/alpha/ev6/mul_1.asm, gcc/gmp/mpn/alpha/ev6/slot.pl, gcc/gmp/mpn/alpha/ev6/sqr_diagonal.asm, gcc/gmp/mpn/alpha/ev6/sub_n.asm, gcc/gmp/mpn/alpha/ev6/submul_1.asm, gcc/gmp/mpn/alpha/ev6/nails/README, gcc/gmp/mpn/alpha/ev6/nails/addmul_1.asm, gcc/gmp/mpn/alpha/ev6/nails/addmul_2.asm, gcc/gmp/mpn/alpha/ev6/nails/addmul_3.asm, gcc/gmp/mpn/alpha/ev6/nails/addmul_4.asm, gcc/gmp/mpn/alpha/ev6/nails/aors_n.asm, gcc/gmp/mpn/alpha/ev6/nails/gmp-mparam.h, gcc/gmp/mpn/alpha/ev6/nails/mul_1.asm, gcc/gmp/mpn/alpha/ev6/nails/submul_1.asm, gcc/gmp/mpn/alpha/ev67/gcd_1.asm, gcc/gmp/mpn/alpha/ev67/hamdist.asm, gcc/gmp/mpn/alpha/ev67/popcount.asm, gcc/gmp/mpn/arm/add_n.asm, gcc/gmp/mpn/arm/addmul_1.asm, gcc/gmp/mpn/arm/arm-defs.m4, gcc/gmp/mpn/arm/copyd.asm, gcc/gmp/mpn/arm/copyi.asm, gcc/gmp/mpn/arm/gmp-mparam.h, gcc/gmp/mpn/arm/invert_limb.asm, gcc/gmp/mpn/arm/mul_1.asm, gcc/gmp/mpn/arm/sub_n.asm, gcc/gmp/mpn/arm/submul_1.asm, gcc/gmp/mpn/arm/udiv.asm, gcc/gmp/mpn/clipper/add_n.s, gcc/gmp/mpn/clipper/mul_1.s, gcc/gmp/mpn/clipper/sub_n.s, gcc/gmp/mpn/cray/README, gcc/gmp/mpn/cray/add_n.c, gcc/gmp/mpn/cray/gmp-mparam.h, gcc/gmp/mpn/cray/hamdist.c, gcc/gmp/mpn/cray/lshift.c, gcc/gmp/mpn/cray/mulww.f, gcc/gmp/mpn/cray/popcount.c, gcc/gmp/mpn/cray/rshift.c, gcc/gmp/mpn/cray/sub_n.c, gcc/gmp/mpn/cray/cfp/addmul_1.c, gcc/gmp/mpn/cray/cfp/mul_1.c, gcc/gmp/mpn/cray/cfp/mulwwc90.s, gcc/gmp/mpn/cray/cfp/mulwwj90.s, gcc/gmp/mpn/cray/cfp/submul_1.c, gcc/gmp/mpn/cray/ieee/addmul_1.c, gcc/gmp/mpn/cray/ieee/gmp-mparam.h, gcc/gmp/mpn/cray/ieee/invert_limb.c, gcc/gmp/mpn/cray/ieee/mul_1.c, gcc/gmp/mpn/cray/ieee/mul_basecase.c, gcc/gmp/mpn/cray/ieee/sqr_basecase.c, gcc/gmp/mpn/cray/ieee/submul_1.c, gcc/gmp/mpn/generic/add.c, gcc/gmp/mpn/generic/add_1.c, gcc/gmp/mpn/generic/addsub_n.c, gcc/gmp/mpn/generic/bdivmod.c, gcc/gmp/mpn/generic/cmp.c, gcc/gmp/mpn/generic/dive_1.c, gcc/gmp/mpn/generic/divis.c, gcc/gmp/mpn/generic/divrem.c, gcc/gmp/mpn/generic/dump.c, gcc/gmp/mpn/generic/fib2_ui.c, gcc/gmp/mpn/generic/gcd.c, gcc/gmp/mpn/generic/gcd_1.c, gcc/gmp/mpn/generic/gcdext.c, gcc/gmp/mpn/generic/get_d.c, gcc/gmp/mpn/generic/jacbase.c, gcc/gmp/mpn/generic/mod_1.c, gcc/gmp/mpn/generic/mod_34lsub1.c, gcc/gmp/mpn/generic/mode1o.c, gcc/gmp/mpn/generic/mullow_basecase.c, gcc/gmp/mpn/generic/mullow_n.c, gcc/gmp/mpn/generic/perfsqr.c, gcc/gmp/mpn/generic/popham.c, gcc/gmp/mpn/generic/pow_1.c, gcc/gmp/mpn/generic/pre_mod_1.c, gcc/gmp/mpn/generic/random.c, gcc/gmp/mpn/generic/random2.c, gcc/gmp/mpn/generic/rootrem.c, gcc/gmp/mpn/generic/scan0.c, gcc/gmp/mpn/generic/scan1.c, gcc/gmp/mpn/generic/set_str.c, gcc/gmp/mpn/generic/sizeinbase.c, gcc/gmp/mpn/generic/sqrtrem.c, gcc/gmp/mpn/generic/sub.c, gcc/gmp/mpn/generic/sub_1.c, gcc/gmp/mpn/generic/udiv_w_sdiv.c, gcc/gmp/mpn/i960/README, gcc/gmp/mpn/i960/add_n.s, gcc/gmp/mpn/i960/addmul_1.s, gcc/gmp/mpn/i960/mul_1.s, gcc/gmp/mpn/i960/sub_n.s, gcc/gmp/mpn/ia64/README, gcc/gmp/mpn/ia64/add_n.asm, gcc/gmp/mpn/ia64/addmul_1.asm, gcc/gmp/mpn/ia64/copyd.asm, gcc/gmp/mpn/ia64/copyi.asm, gcc/gmp/mpn/ia64/gcd_1.asm, gcc/gmp/mpn/ia64/gmp-mparam.h, gcc/gmp/mpn/ia64/ia64-defs.m4, gcc/gmp/mpn/ia64/invert_limb.asm, gcc/gmp/mpn/ia64/lorrshift.asm, gcc/gmp/mpn/ia64/mode1o.asm, gcc/gmp/mpn/ia64/mul_1.asm, gcc/gmp/mpn/ia64/popcount.asm, gcc/gmp/mpn/ia64/sub_n.asm, gcc/gmp/mpn/ia64/submul_1.c, gcc/gmp/mpn/lisp/gmpasm-mode.el, gcc/gmp/mpn/m68k/README, gcc/gmp/mpn/m68k/aors_n.asm, gcc/gmp/mpn/m68k/gmp-mparam.h, gcc/gmp/mpn/m68k/lshift.asm, gcc/gmp/mpn/m68k/m68k-defs.m4, gcc/gmp/mpn/m68k/rshift.asm, gcc/gmp/mpn/m68k/t-m68k-defs.pl, gcc/gmp/mpn/m68k/mc68020/aorsmul_1.asm, gcc/gmp/mpn/m68k/mc68020/mul_1.asm, gcc/gmp/mpn/m68k/mc68020/udiv.asm, gcc/gmp/mpn/m68k/mc68020/umul.asm, gcc/gmp/mpn/m88k/README, gcc/gmp/mpn/m88k/add_n.s, gcc/gmp/mpn/m88k/mul_1.s, gcc/gmp/mpn/m88k/sub_n.s, gcc/gmp/mpn/m88k/mc88110/add_n.S, gcc/gmp/mpn/m88k/mc88110/addmul_1.s, gcc/gmp/mpn/m88k/mc88110/mul_1.s, gcc/gmp/mpn/m88k/mc88110/sub_n.S, gcc/gmp/mpn/mips32/add_n.asm, gcc/gmp/mpn/mips32/addmul_1.asm, gcc/gmp/mpn/mips32/gmp-mparam.h, gcc/gmp/mpn/mips32/lshift.asm, gcc/gmp/mpn/mips32/mips-defs.m4, gcc/gmp/mpn/mips32/mips.m4, gcc/gmp/mpn/mips32/mul_1.asm, gcc/gmp/mpn/mips32/rshift.asm, gcc/gmp/mpn/mips32/sub_n.asm, gcc/gmp/mpn/mips32/submul_1.asm, gcc/gmp/mpn/mips32/umul.asm, gcc/gmp/mpn/mips64/README, gcc/gmp/mpn/mips64/add_n.asm, gcc/gmp/mpn/mips64/addmul_1.asm, gcc/gmp/mpn/mips64/divrem_1.asm, gcc/gmp/mpn/mips64/gmp-mparam.h, gcc/gmp/mpn/mips64/lshift.asm, gcc/gmp/mpn/mips64/mul_1.asm, gcc/gmp/mpn/mips64/rshift.asm, gcc/gmp/mpn/mips64/sqr_diagonal.asm, gcc/gmp/mpn/mips64/sub_n.asm, gcc/gmp/mpn/mips64/submul_1.asm, gcc/gmp/mpn/mips64/umul.asm, gcc/gmp/mpn/ns32k/add_n.s, gcc/gmp/mpn/ns32k/addmul_1.s, gcc/gmp/mpn/ns32k/mul_1.s, gcc/gmp/mpn/ns32k/sub_n.s, gcc/gmp/mpn/ns32k/submul_1.s, gcc/gmp/mpn/pa32/README, gcc/gmp/mpn/pa32/add_n.asm, gcc/gmp/mpn/pa32/gmp-mparam.h, gcc/gmp/mpn/pa32/lshift.asm, gcc/gmp/mpn/pa32/pa-defs.m4, gcc/gmp/mpn/pa32/rshift.asm, gcc/gmp/mpn/pa32/sub_n.asm, gcc/gmp/mpn/pa32/udiv.asm, gcc/gmp/mpn/pa32/hppa1_1/addmul_1.asm, gcc/gmp/mpn/pa32/hppa1_1/gmp-mparam.h, gcc/gmp/mpn/pa32/hppa1_1/mul_1.asm, gcc/gmp/mpn/pa32/hppa1_1/sqr_diagonal.asm, gcc/gmp/mpn/pa32/hppa1_1/submul_1.asm, gcc/gmp/mpn/pa32/hppa1_1/udiv.asm, gcc/gmp/mpn/pa32/hppa1_1/umul.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/add_n.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/addmul_1.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/lshift.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/rshift.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/sub_n.asm, gcc/gmp/mpn/pa32/hppa1_1/pa7100/submul_1.asm, gcc/gmp/mpn/pa32/hppa2_0/add_n.asm, gcc/gmp/mpn/pa32/hppa2_0/gmp-mparam.h, gcc/gmp/mpn/pa32/hppa2_0/sqr_diagonal.asm, gcc/gmp/mpn/pa32/hppa2_0/sub_n.asm, gcc/gmp/mpn/pa64/README, gcc/gmp/mpn/pa64/add_n.asm, gcc/gmp/mpn/pa64/addmul_1.asm, gcc/gmp/mpn/pa64/aorslsh1_n.asm, gcc/gmp/mpn/pa64/gmp-mparam.h, gcc/gmp/mpn/pa64/lshift.asm, gcc/gmp/mpn/pa64/mul_1.asm, gcc/gmp/mpn/pa64/rshift.asm, gcc/gmp/mpn/pa64/sqr_diagonal.asm, gcc/gmp/mpn/pa64/sub_n.asm, gcc/gmp/mpn/pa64/submul_1.asm, gcc/gmp/mpn/pa64/udiv.asm, gcc/gmp/mpn/pa64/umul.asm, gcc/gmp/mpn/power/add_n.asm, gcc/gmp/mpn/power/addmul_1.asm, gcc/gmp/mpn/power/gmp-mparam.h, gcc/gmp/mpn/power/lshift.asm, gcc/gmp/mpn/power/mul_1.asm, gcc/gmp/mpn/power/rshift.asm, gcc/gmp/mpn/power/sdiv.asm, gcc/gmp/mpn/power/sub_n.asm, gcc/gmp/mpn/power/submul_1.asm, gcc/gmp/mpn/power/umul.asm, gcc/gmp/mpn/powerpc32/README, gcc/gmp/mpn/powerpc32/add_n.asm, gcc/gmp/mpn/powerpc32/addlsh1_n.asm, gcc/gmp/mpn/powerpc32/addmul_1.asm, gcc/gmp/mpn/powerpc32/aix.m4, gcc/gmp/mpn/powerpc32/darwin.m4, gcc/gmp/mpn/powerpc32/diveby3.asm, gcc/gmp/mpn/powerpc32/eabi.m4, gcc/gmp/mpn/powerpc32/elf.m4, gcc/gmp/mpn/powerpc32/gmp-mparam.h, gcc/gmp/mpn/powerpc32/lshift.asm, gcc/gmp/mpn/powerpc32/mod_34lsub1.asm, gcc/gmp/mpn/powerpc32/mode1o.asm, gcc/gmp/mpn/powerpc32/mul_1.asm, gcc/gmp/mpn/powerpc32/powerpc-defs.m4, gcc/gmp/mpn/powerpc32/rshift.asm, gcc/gmp/mpn/powerpc32/sqr_diagonal.asm, gcc/gmp/mpn/powerpc32/sub_n.asm, gcc/gmp/mpn/powerpc32/sublsh1_n.asm, gcc/gmp/mpn/powerpc32/submul_1.asm, gcc/gmp/mpn/powerpc32/umul.asm, gcc/gmp/mpn/powerpc32/750/com_n.asm, gcc/gmp/mpn/powerpc32/750/gmp-mparam.h, gcc/gmp/mpn/powerpc32/750/lshift.asm, gcc/gmp/mpn/powerpc32/750/rshift.asm, gcc/gmp/mpn/powerpc32/vmx/copyd.asm, gcc/gmp/mpn/powerpc32/vmx/copyi.asm, gcc/gmp/mpn/powerpc32/vmx/logops_n.asm, gcc/gmp/mpn/powerpc32/vmx/popcount.asm, gcc/gmp/mpn/powerpc64/README, gcc/gmp/mpn/powerpc64/aix.m4, gcc/gmp/mpn/powerpc64/copyd.asm, gcc/gmp/mpn/powerpc64/copyi.asm, gcc/gmp/mpn/powerpc64/darwin.m4, gcc/gmp/mpn/powerpc64/elf.m4, gcc/gmp/mpn/powerpc64/gmp-mparam.h, gcc/gmp/mpn/powerpc64/lshift.asm, gcc/gmp/mpn/powerpc64/rshift.asm, gcc/gmp/mpn/powerpc64/sqr_diagonal.asm, gcc/gmp/mpn/powerpc64/umul.asm, gcc/gmp/mpn/powerpc64/mode32/add_n.asm, gcc/gmp/mpn/powerpc64/mode32/addmul_1.asm, gcc/gmp/mpn/powerpc64/mode32/mul_1.asm, gcc/gmp/mpn/powerpc64/mode32/sub_n.asm, gcc/gmp/mpn/powerpc64/mode32/submul_1.asm, gcc/gmp/mpn/powerpc64/mode64/add_n.asm, gcc/gmp/mpn/powerpc64/mode64/addmul_1.asm, gcc/gmp/mpn/powerpc64/mode64/mul_1.asm, gcc/gmp/mpn/powerpc64/mode64/sub_n.asm, gcc/gmp/mpn/powerpc64/mode64/submul_1.asm, gcc/gmp/mpn/powerpc64/mode64/umul.asm, gcc/gmp/mpn/powerpc64/vmx/popcount.asm, gcc/gmp/mpn/pyr/add_n.s, gcc/gmp/mpn/pyr/addmul_1.s, gcc/gmp/mpn/pyr/mul_1.s, gcc/gmp/mpn/pyr/sub_n.s, gcc/gmp/mpn/s390/README, gcc/gmp/mpn/s390/addmul_1.asm, gcc/gmp/mpn/s390/gmp-mparam.h, gcc/gmp/mpn/s390/mul_1.asm, gcc/gmp/mpn/s390/submul_1.asm, gcc/gmp/mpn/sh/add_n.s, gcc/gmp/mpn/sh/sub_n.s, gcc/gmp/mpn/sh/sh2/addmul_1.s, gcc/gmp/mpn/sh/sh2/mul_1.s, gcc/gmp/mpn/sh/sh2/submul_1.s, gcc/gmp/mpn/sparc32/README, gcc/gmp/mpn/sparc32/add_n.asm, gcc/gmp/mpn/sparc32/addmul_1.asm, gcc/gmp/mpn/sparc32/gmp-mparam.h, gcc/gmp/mpn/sparc32/lshift.asm, gcc/gmp/mpn/sparc32/mul_1.asm, gcc/gmp/mpn/sparc32/rshift.asm, gcc/gmp/mpn/sparc32/sparc-defs.m4, gcc/gmp/mpn/sparc32/sub_n.asm, gcc/gmp/mpn/sparc32/submul_1.asm, gcc/gmp/mpn/sparc32/udiv.asm, gcc/gmp/mpn/sparc32/udiv_nfp.asm, gcc/gmp/mpn/sparc32/umul.asm, gcc/gmp/mpn/sparc32/v8/addmul_1.asm, gcc/gmp/mpn/sparc32/v8/gmp-mparam.h, gcc/gmp/mpn/sparc32/v8/mul_1.asm, gcc/gmp/mpn/sparc32/v8/submul_1.asm, gcc/gmp/mpn/sparc32/v8/udiv.asm, gcc/gmp/mpn/sparc32/v8/umul.asm, gcc/gmp/mpn/sparc32/v8/supersparc/gmp-mparam.h, gcc/gmp/mpn/sparc32/v8/supersparc/udiv.asm, gcc/gmp/mpn/sparc32/v9/README, gcc/gmp/mpn/sparc32/v9/add_n.asm, gcc/gmp/mpn/sparc32/v9/addmul_1.asm, gcc/gmp/mpn/sparc32/v9/gmp-mparam.h, gcc/gmp/mpn/sparc32/v9/mul_1.asm, gcc/gmp/mpn/sparc32/v9/sqr_diagonal.asm, gcc/gmp/mpn/sparc32/v9/sub_n.asm, gcc/gmp/mpn/sparc32/v9/submul_1.asm, gcc/gmp/mpn/sparc32/v9/udiv.asm, gcc/gmp/mpn/sparc64/README, gcc/gmp/mpn/sparc64/add_n.asm, gcc/gmp/mpn/sparc64/addmul_1.asm, gcc/gmp/mpn/sparc64/addmul_2.asm, gcc/gmp/mpn/sparc64/copyd.asm, gcc/gmp/mpn/sparc64/copyi.asm, gcc/gmp/mpn/sparc64/dive_1.c, gcc/gmp/mpn/sparc64/divrem_1.c, gcc/gmp/mpn/sparc64/gmp-mparam.h, gcc/gmp/mpn/sparc64/lshift.asm, gcc/gmp/mpn/sparc64/mod_1.c, gcc/gmp/mpn/sparc64/mode1o.c, gcc/gmp/mpn/sparc64/mul_1.asm, gcc/gmp/mpn/sparc64/rshift.asm, gcc/gmp/mpn/sparc64/sparc64.h, gcc/gmp/mpn/sparc64/sqr_diagonal.asm, gcc/gmp/mpn/sparc64/sub_n.asm, gcc/gmp/mpn/sparc64/submul_1.asm, gcc/gmp/mpn/thumb/add_n.s, gcc/gmp/mpn/thumb/sub_n.s, gcc/gmp/mpn/vax/add_n.s, gcc/gmp/mpn/vax/addmul_1.s, gcc/gmp/mpn/vax/gmp-mparam.h, gcc/gmp/mpn/vax/lshift.s, gcc/gmp/mpn/vax/mul_1.s, gcc/gmp/mpn/vax/rshift.s, gcc/gmp/mpn/vax/sub_n.s, gcc/gmp/mpn/vax/submul_1.s, gcc/gmp/mpn/x86/README, gcc/gmp/mpn/x86/aors_n.asm, gcc/gmp/mpn/x86/aorsmul_1.asm, gcc/gmp/mpn/x86/copyd.asm, gcc/gmp/mpn/x86/copyi.asm, gcc/gmp/mpn/x86/dive_1.asm, gcc/gmp/mpn/x86/diveby3.asm, gcc/gmp/mpn/x86/divrem_1.asm, gcc/gmp/mpn/x86/gmp-mparam.h, gcc/gmp/mpn/x86/lshift.asm, gcc/gmp/mpn/x86/mod_1.asm, gcc/gmp/mpn/x86/mod_34lsub1.asm, gcc/gmp/mpn/x86/mul_1.asm, gcc/gmp/mpn/x86/mul_basecase.asm, gcc/gmp/mpn/x86/rshift.asm, gcc/gmp/mpn/x86/sqr_basecase.asm, gcc/gmp/mpn/x86/t-zdisp.sh, gcc/gmp/mpn/x86/t-zdisp2.pl, gcc/gmp/mpn/x86/udiv.asm, gcc/gmp/mpn/x86/umul.asm, gcc/gmp/mpn/x86/x86-defs.m4, gcc/gmp/mpn/x86/fat/fat.c, gcc/gmp/mpn/x86/fat/fat_entry.asm, gcc/gmp/mpn/x86/fat/gcd_1.c, gcc/gmp/mpn/x86/fat/gmp-mparam.h, gcc/gmp/mpn/x86/fat/mode1o.c, gcc/gmp/mpn/x86/i486/gmp-mparam.h, gcc/gmp/mpn/x86/k6/README, gcc/gmp/mpn/x86/k6/aors_n.asm, gcc/gmp/mpn/x86/k6/aorsmul_1.asm, gcc/gmp/mpn/x86/k6/cross.pl, gcc/gmp/mpn/x86/k6/diveby3.asm, gcc/gmp/mpn/x86/k6/divrem_1.asm, gcc/gmp/mpn/x86/k6/gcd_1.asm, gcc/gmp/mpn/x86/k6/gcd_finda.asm, gcc/gmp/mpn/x86/k6/gmp-mparam.h, gcc/gmp/mpn/x86/k6/mod_34lsub1.asm, gcc/gmp/mpn/x86/k6/mode1o.asm, gcc/gmp/mpn/x86/k6/mul_1.asm, gcc/gmp/mpn/x86/k6/mul_basecase.asm, gcc/gmp/mpn/x86/k6/pre_mod_1.asm, gcc/gmp/mpn/x86/k6/sqr_basecase.asm, gcc/gmp/mpn/x86/k6/k62mmx/copyd.asm, gcc/gmp/mpn/x86/k6/k62mmx/lshift.asm, gcc/gmp/mpn/x86/k6/k62mmx/rshift.asm, gcc/gmp/mpn/x86/k6/mmx/com_n.asm, gcc/gmp/mpn/x86/k6/mmx/dive_1.asm, gcc/gmp/mpn/x86/k6/mmx/logops_n.asm, gcc/gmp/mpn/x86/k6/mmx/lshift.asm, gcc/gmp/mpn/x86/k6/mmx/popham.asm, gcc/gmp/mpn/x86/k6/mmx/rshift.asm, gcc/gmp/mpn/x86/k7/README, gcc/gmp/mpn/x86/k7/aors_n.asm, gcc/gmp/mpn/x86/k7/aorsmul_1.asm, gcc/gmp/mpn/x86/k7/dive_1.asm, gcc/gmp/mpn/x86/k7/diveby3.asm, gcc/gmp/mpn/x86/k7/gcd_1.asm, gcc/gmp/mpn/x86/k7/gmp-mparam.h, gcc/gmp/mpn/x86/k7/mod_34lsub1.asm, gcc/gmp/mpn/x86/k7/mode1o.asm, gcc/gmp/mpn/x86/k7/mul_1.asm, gcc/gmp/mpn/x86/k7/mul_basecase.asm, gcc/gmp/mpn/x86/k7/sqr_basecase.asm, gcc/gmp/mpn/x86/k7/mmx/com_n.asm, gcc/gmp/mpn/x86/k7/mmx/copyd.asm, gcc/gmp/mpn/x86/k7/mmx/copyi.asm, gcc/gmp/mpn/x86/k7/mmx/divrem_1.asm, gcc/gmp/mpn/x86/k7/mmx/lshift.asm, gcc/gmp/mpn/x86/k7/mmx/mod_1.asm, gcc/gmp/mpn/x86/k7/mmx/popham.asm, gcc/gmp/mpn/x86/k7/mmx/rshift.asm, gcc/gmp/mpn/x86/p6/README, gcc/gmp/mpn/x86/p6/aors_n.asm, gcc/gmp/mpn/x86/p6/aorsmul_1.asm, gcc/gmp/mpn/x86/p6/copyd.asm, gcc/gmp/mpn/x86/p6/dive_1.asm, gcc/gmp/mpn/x86/p6/diveby3.asm, gcc/gmp/mpn/x86/p6/gmp-mparam.h, gcc/gmp/mpn/x86/p6/mod_1.asm, gcc/gmp/mpn/x86/p6/mod_34lsub1.asm, gcc/gmp/mpn/x86/p6/mode1o.asm, gcc/gmp/mpn/x86/p6/mul_basecase.asm, gcc/gmp/mpn/x86/p6/sqr_basecase.asm, gcc/gmp/mpn/x86/p6/mmx/divrem_1.asm, gcc/gmp/mpn/x86/p6/mmx/gmp-mparam.h, gcc/gmp/mpn/x86/p6/mmx/lshift.asm, gcc/gmp/mpn/x86/p6/mmx/popham.asm, gcc/gmp/mpn/x86/p6/mmx/rshift.asm, gcc/gmp/mpn/x86/p6/p3mmx/popham.asm, gcc/gmp/mpn/x86/pentium/README, gcc/gmp/mpn/x86/pentium/aors_n.asm, gcc/gmp/mpn/x86/pentium/aorsmul_1.asm, gcc/gmp/mpn/x86/pentium/com_n.asm, gcc/gmp/mpn/x86/pentium/copyd.asm, gcc/gmp/mpn/x86/pentium/copyi.asm, gcc/gmp/mpn/x86/pentium/dive_1.asm, gcc/gmp/mpn/x86/pentium/diveby3.asm, gcc/gmp/mpn/x86/pentium/gmp-mparam.h, gcc/gmp/mpn/x86/pentium/hamdist.asm, gcc/gmp/mpn/x86/pentium/logops_n.asm, gcc/gmp/mpn/x86/pentium/lshift.asm, gcc/gmp/mpn/x86/pentium/mod_1.asm, gcc/gmp/mpn/x86/pentium/mod_34lsub1.asm, gcc/gmp/mpn/x86/pentium/mode1o.asm, gcc/gmp/mpn/x86/pentium/mul_1.asm, gcc/gmp/mpn/x86/pentium/mul_2.asm, gcc/gmp/mpn/x86/pentium/mul_basecase.asm, gcc/gmp/mpn/x86/pentium/popcount.asm, gcc/gmp/mpn/x86/pentium/rshift.asm, gcc/gmp/mpn/x86/pentium/sqr_basecase.asm, gcc/gmp/mpn/x86/pentium/mmx/gmp-mparam.h, gcc/gmp/mpn/x86/pentium/mmx/hamdist.asm, gcc/gmp/mpn/x86/pentium/mmx/lshift.asm, gcc/gmp/mpn/x86/pentium/mmx/mul_1.asm, gcc/gmp/mpn/x86/pentium/mmx/rshift.asm, gcc/gmp/mpn/x86/pentium4/README, gcc/gmp/mpn/x86/pentium4/copyd.asm, gcc/gmp/mpn/x86/pentium4/copyi.asm, gcc/gmp/mpn/x86/pentium4/mmx/lshift.asm, gcc/gmp/mpn/x86/pentium4/mmx/popham.asm, gcc/gmp/mpn/x86/pentium4/mmx/rshift.asm, gcc/gmp/mpn/x86/pentium4/sse2/add_n.asm, gcc/gmp/mpn/x86/pentium4/sse2/addlsh1_n.asm, gcc/gmp/mpn/x86/pentium4/sse2/addmul_1.asm, gcc/gmp/mpn/x86/pentium4/sse2/dive_1.asm, gcc/gmp/mpn/x86/pentium4/sse2/diveby3.asm, gcc/gmp/mpn/x86/pentium4/sse2/divrem_1.asm, gcc/gmp/mpn/x86/pentium4/sse2/gmp-mparam.h, gcc/gmp/mpn/x86/pentium4/sse2/mod_1.asm, gcc/gmp/mpn/x86/pentium4/sse2/mod_34lsub1.asm, gcc/gmp/mpn/x86/pentium4/sse2/mode1o.asm, gcc/gmp/mpn/x86/pentium4/sse2/mul_1.asm, gcc/gmp/mpn/x86/pentium4/sse2/mul_basecase.asm, gcc/gmp/mpn/x86/pentium4/sse2/rsh1add_n.asm, gcc/gmp/mpn/x86/pentium4/sse2/sqr_basecase.asm, gcc/gmp/mpn/x86/pentium4/sse2/sub_n.asm, gcc/gmp/mpn/x86/pentium4/sse2/submul_1.asm, gcc/gmp/mpn/x86_64/README, gcc/gmp/mpn/x86_64/add_n.asm, gcc/gmp/mpn/x86_64/addmul_1.asm, gcc/gmp/mpn/x86_64/gmp-mparam.h, gcc/gmp/mpn/x86_64/lshift.asm, gcc/gmp/mpn/x86_64/mode1o.asm, gcc/gmp/mpn/x86_64/mul_1.asm, gcc/gmp/mpn/x86_64/rshift.asm, gcc/gmp/mpn/x86_64/sub_n.asm, gcc/gmp/mpn/x86_64/submul_1.asm, gcc/gmp/mpn/x86_64/x86_64-defs.m4, gcc/gmp/mpn/z8000/README, gcc/gmp/mpn/z8000/add_n.s, gcc/gmp/mpn/z8000/gmp-mparam.h, gcc/gmp/mpn/z8000/mul_1.s, gcc/gmp/mpn/z8000/sub_n.s, gcc/gmp/mpn/z8000x/add_n.s, gcc/gmp/mpn/z8000x/sub_n.s, gcc/gmp/mpq/Makefile.am, gcc/gmp/mpq/Makefile.in, gcc/gmp/mpq/abs.c, gcc/gmp/mpq/aors.c, gcc/gmp/mpq/canonicalize.c, gcc/gmp/mpq/clear.c, gcc/gmp/mpq/cmp.c, gcc/gmp/mpq/cmp_si.c, gcc/gmp/mpq/cmp_ui.c, gcc/gmp/mpq/div.c, gcc/gmp/mpq/equal.c, gcc/gmp/mpq/get_d.c, gcc/gmp/mpq/get_den.c, gcc/gmp/mpq/get_num.c, gcc/gmp/mpq/get_str.c, gcc/gmp/mpq/init.c, gcc/gmp/mpq/inp_str.c, gcc/gmp/mpq/inv.c, gcc/gmp/mpq/md_2exp.c, gcc/gmp/mpq/mul.c, gcc/gmp/mpq/neg.c, gcc/gmp/mpq/out_str.c, gcc/gmp/mpq/set.c, gcc/gmp/mpq/set_d.c, gcc/gmp/mpq/set_den.c, gcc/gmp/mpq/set_f.c, gcc/gmp/mpq/set_num.c, gcc/gmp/mpq/set_si.c, gcc/gmp/mpq/set_str.c, gcc/gmp/mpq/set_ui.c, gcc/gmp/mpq/set_z.c, gcc/gmp/mpq/swap.c, gcc/gmp/mpz/Makefile.am, gcc/gmp/mpz/Makefile.in, gcc/gmp/mpz/abs.c, gcc/gmp/mpz/and.c, gcc/gmp/mpz/aorsmul.c, gcc/gmp/mpz/aorsmul_i.c, gcc/gmp/mpz/array_init.c, gcc/gmp/mpz/bin_ui.c, gcc/gmp/mpz/bin_uiui.c, gcc/gmp/mpz/cdiv_q.c, gcc/gmp/mpz/cdiv_q_ui.c, gcc/gmp/mpz/cdiv_qr.c, gcc/gmp/mpz/cdiv_qr_ui.c, gcc/gmp/mpz/cdiv_r.c, gcc/gmp/mpz/cdiv_r_ui.c, gcc/gmp/mpz/cdiv_ui.c, gcc/gmp/mpz/cfdiv_q_2exp.c, gcc/gmp/mpz/cfdiv_r_2exp.c, gcc/gmp/mpz/clrbit.c, gcc/gmp/mpz/cmp_d.c, gcc/gmp/mpz/cmp_si.c, gcc/gmp/mpz/cmp_ui.c, gcc/gmp/mpz/cmpabs.c, gcc/gmp/mpz/cmpabs_d.c, gcc/gmp/mpz/cmpabs_ui.c, gcc/gmp/mpz/com.c, gcc/gmp/mpz/combit.c, gcc/gmp/mpz/cong.c, gcc/gmp/mpz/cong_2exp.c, gcc/gmp/mpz/cong_ui.c, gcc/gmp/mpz/dive_ui.c, gcc/gmp/mpz/divegcd.c, gcc/gmp/mpz/divexact.c, gcc/gmp/mpz/divis.c, gcc/gmp/mpz/divis_2exp.c, gcc/gmp/mpz/divis_ui.c, gcc/gmp/mpz/dump.c, gcc/gmp/mpz/fac_ui.c, gcc/gmp/mpz/fdiv_q_ui.c, gcc/gmp/mpz/fdiv_qr.c, gcc/gmp/mpz/fdiv_qr_ui.c, gcc/gmp/mpz/fdiv_r.c, gcc/gmp/mpz/fdiv_r_ui.c, gcc/gmp/mpz/fdiv_ui.c, gcc/gmp/mpz/fib2_ui.c, gcc/gmp/mpz/fib_ui.c, gcc/gmp/mpz/fits_s.h, gcc/gmp/mpz/fits_sint.c, gcc/gmp/mpz/fits_slong.c, gcc/gmp/mpz/fits_sshort.c, gcc/gmp/mpz/fits_uint.c, gcc/gmp/mpz/fits_ulong.c, gcc/gmp/mpz/fits_ushort.c, gcc/gmp/mpz/gcd.c, gcc/gmp/mpz/gcd_ui.c, gcc/gmp/mpz/gcdext.c, gcc/gmp/mpz/get_d.c, gcc/gmp/mpz/get_d_2exp.c, gcc/gmp/mpz/get_si.c, gcc/gmp/mpz/get_str.c, gcc/gmp/mpz/get_ui.c, gcc/gmp/mpz/getlimbn.c, gcc/gmp/mpz/hamdist.c, gcc/gmp/mpz/init2.c, gcc/gmp/mpz/inp_raw.c, gcc/gmp/mpz/inp_str.c, gcc/gmp/mpz/invert.c, gcc/gmp/mpz/ior.c, gcc/gmp/mpz/iset_d.c, gcc/gmp/mpz/iset_si.c, gcc/gmp/mpz/iset_str.c, gcc/gmp/mpz/iset_ui.c, gcc/gmp/mpz/jacobi.c, gcc/gmp/mpz/kronsz.c, gcc/gmp/mpz/kronuz.c, gcc/gmp/mpz/kronzs.c, gcc/gmp/mpz/kronzu.c, gcc/gmp/mpz/lcm.c, gcc/gmp/mpz/lcm_ui.c, gcc/gmp/mpz/lucnum2_ui.c, gcc/gmp/mpz/lucnum_ui.c, gcc/gmp/mpz/millerrabin.c, gcc/gmp/mpz/mod.c, gcc/gmp/mpz/mul.c, gcc/gmp/mpz/mul_2exp.c, gcc/gmp/mpz/mul_i.h, gcc/gmp/mpz/mul_si.c, gcc/gmp/mpz/mul_ui.c, gcc/gmp/mpz/n_pow_ui.c, gcc/gmp/mpz/nextprime.c, gcc/gmp/mpz/out_raw.c, gcc/gmp/mpz/perfpow.c, gcc/gmp/mpz/perfsqr.c, gcc/gmp/mpz/popcount.c, gcc/gmp/mpz/pow_ui.c, gcc/gmp/mpz/powm.c, gcc/gmp/mpz/powm_ui.c, gcc/gmp/mpz/pprime_p.c, gcc/gmp/mpz/random.c, gcc/gmp/mpz/random2.c, gcc/gmp/mpz/realloc2.c, gcc/gmp/mpz/remove.c, gcc/gmp/mpz/root.c, gcc/gmp/mpz/rootrem.c, gcc/gmp/mpz/rrandomb.c, gcc/gmp/mpz/scan0.c, gcc/gmp/mpz/scan1.c, gcc/gmp/mpz/set_d.c, gcc/gmp/mpz/set_f.c, gcc/gmp/mpz/set_q.c, gcc/gmp/mpz/set_si.c, gcc/gmp/mpz/set_str.c, gcc/gmp/mpz/setbit.c, gcc/gmp/mpz/size.c, gcc/gmp/mpz/sqrt.c, gcc/gmp/mpz/sqrtrem.c, gcc/gmp/mpz/tdiv_q.c, gcc/gmp/mpz/tdiv_q_2exp.c, gcc/gmp/mpz/tdiv_q_ui.c, gcc/gmp/mpz/tdiv_qr_ui.c, gcc/gmp/mpz/tdiv_r.c, gcc/gmp/mpz/tdiv_r_2exp.c, gcc/gmp/mpz/tdiv_r_ui.c, gcc/gmp/mpz/tdiv_ui.c, gcc/gmp/mpz/tstbit.c, gcc/gmp/mpz/ui_pow_ui.c, gcc/gmp/mpz/ui_sub.c, gcc/gmp/mpz/urandomb.c, gcc/gmp/mpz/urandomm.c, gcc/gmp/mpz/xor.c, gcc/gmp/printf/Makefile.am, gcc/gmp/printf/Makefile.in, gcc/gmp/printf/asprintf.c, gcc/gmp/printf/asprntffuns.c, gcc/gmp/printf/doprnt.c, gcc/gmp/printf/doprntf.c, gcc/gmp/printf/doprnti.c, gcc/gmp/printf/fprintf.c, gcc/gmp/printf/obprintf.c, gcc/gmp/printf/obprntffuns.c, gcc/gmp/printf/obvprintf.c, gcc/gmp/printf/printf.c, gcc/gmp/printf/printffuns.c, gcc/gmp/printf/repl-vsnprintf.c, gcc/gmp/printf/snprintf.c, gcc/gmp/printf/snprntffuns.c, gcc/gmp/printf/sprintf.c, gcc/gmp/printf/sprintffuns.c, gcc/gmp/printf/vasprintf.c, gcc/gmp/printf/vfprintf.c, gcc/gmp/printf/vprintf.c, gcc/gmp/printf/vsnprintf.c, gcc/gmp/printf/vsprintf.c, gcc/gmp/scanf/Makefile.am, gcc/gmp/scanf/Makefile.in, gcc/gmp/scanf/doscan.c, gcc/gmp/scanf/fscanf.c, gcc/gmp/scanf/fscanffuns.c, gcc/gmp/scanf/scanf.c, gcc/gmp/scanf/sscanf.c, gcc/gmp/scanf/sscanffuns.c, gcc/gmp/scanf/vfscanf.c, gcc/gmp/scanf/vscanf.c, gcc/gmp/scanf/vsscanf.c, gcc/gmp/tests/Makefile.am, gcc/gmp/tests/Makefile.in, gcc/gmp/tests/amd64call.asm, gcc/gmp/tests/amd64check.c, gcc/gmp/tests/memory.c, gcc/gmp/tests/misc.c, gcc/gmp/tests/refmpf.c, gcc/gmp/tests/refmpn.c, gcc/gmp/tests/refmpq.c, gcc/gmp/tests/refmpz.c, gcc/gmp/tests/spinner.c, gcc/gmp/tests/t-bswap.c, gcc/gmp/tests/t-constants.c, gcc/gmp/tests/t-count_zeros.c, gcc/gmp/tests/t-gmpmax.c, gcc/gmp/tests/t-hightomask.c, gcc/gmp/tests/t-modlinv.c, gcc/gmp/tests/t-parity.c, gcc/gmp/tests/t-popc.c, gcc/gmp/tests/t-sub.c, gcc/gmp/tests/tests.h, gcc/gmp/tests/trace.c, gcc/gmp/tests/x86call.asm, gcc/gmp/tests/x86check.c, gcc/gmp/tests/cxx/Makefile.am, gcc/gmp/tests/cxx/Makefile.in, gcc/gmp/tests/cxx/clocale.c, gcc/gmp/tests/cxx/t-assign.cc, gcc/gmp/tests/cxx/t-binary.cc, gcc/gmp/tests/cxx/t-cast.cc, gcc/gmp/tests/cxx/t-constr.cc, gcc/gmp/tests/cxx/t-headers.cc, gcc/gmp/tests/cxx/t-istream.cc, gcc/gmp/tests/cxx/t-locale.cc, gcc/gmp/tests/cxx/t-misc.cc, gcc/gmp/tests/cxx/t-ops.cc, gcc/gmp/tests/cxx/t-ostream.cc, gcc/gmp/tests/cxx/t-prec.cc, gcc/gmp/tests/cxx/t-rand.cc, gcc/gmp/tests/cxx/t-ternary.cc, gcc/gmp/tests/cxx/t-unary.cc, gcc/gmp/tests/devel/Makefile.am, gcc/gmp/tests/devel/Makefile.in, gcc/gmp/tests/devel/README, gcc/gmp/tests/devel/addmul_N.c, gcc/gmp/tests/devel/anymul_1.c, gcc/gmp/tests/devel/aors_n.c, gcc/gmp/tests/devel/copy.c, gcc/gmp/tests/devel/divmod_1.c, gcc/gmp/tests/devel/divrem.c, gcc/gmp/tests/devel/logops_n.c, gcc/gmp/tests/devel/mul_N.c, gcc/gmp/tests/devel/shift.c, gcc/gmp/tests/devel/try.c, gcc/gmp/tests/misc/Makefile.am, gcc/gmp/tests/misc/Makefile.in, gcc/gmp/tests/misc/t-locale.c, gcc/gmp/tests/misc/t-printf.c, gcc/gmp/tests/misc/t-scanf.c, gcc/gmp/tests/mpbsd/Makefile.am, gcc/gmp/tests/mpbsd/Makefile.in, gcc/gmp/tests/mpbsd/allfuns.c, gcc/gmp/tests/mpbsd/t-itom.c, gcc/gmp/tests/mpbsd/t-mtox.c, gcc/gmp/tests/mpf/Makefile.am, gcc/gmp/tests/mpf/Makefile.in, gcc/gmp/tests/mpf/reuse.c, gcc/gmp/tests/mpf/t-add.c, gcc/gmp/tests/mpf/t-cmp_d.c, gcc/gmp/tests/mpf/t-cmp_si.c, gcc/gmp/tests/mpf/t-conv.c, gcc/gmp/tests/mpf/t-div.c, gcc/gmp/tests/mpf/t-dm2exp.c, gcc/gmp/tests/mpf/t-fits.c, gcc/gmp/tests/mpf/t-get_d.c, gcc/gmp/tests/mpf/t-get_d_2exp.c, gcc/gmp/tests/mpf/t-get_si.c, gcc/gmp/tests/mpf/t-get_ui.c, gcc/gmp/tests/mpf/t-gsprec.c, gcc/gmp/tests/mpf/t-inp_str.c, gcc/gmp/tests/mpf/t-int_p.c, gcc/gmp/tests/mpf/t-mul_ui.c, gcc/gmp/tests/mpf/t-muldiv.c, gcc/gmp/tests/mpf/t-set.c, gcc/gmp/tests/mpf/t-set_q.c, gcc/gmp/tests/mpf/t-set_si.c, gcc/gmp/tests/mpf/t-set_ui.c, gcc/gmp/tests/mpf/t-sqrt.c, gcc/gmp/tests/mpf/t-sqrt_ui.c, gcc/gmp/tests/mpf/t-sub.c, gcc/gmp/tests/mpf/t-trunc.c, gcc/gmp/tests/mpf/t-ui_div.c, gcc/gmp/tests/mpn/Makefile.am, gcc/gmp/tests/mpn/Makefile.in, gcc/gmp/tests/mpn/t-aors_1.c, gcc/gmp/tests/mpn/t-asmtype.c, gcc/gmp/tests/mpn/t-divrem_1.c, gcc/gmp/tests/mpn/t-fat.c, gcc/gmp/tests/mpn/t-get_d.c, gcc/gmp/tests/mpn/t-instrument.c, gcc/gmp/tests/mpn/t-iord_u.c, gcc/gmp/tests/mpn/t-mp_bases.c, gcc/gmp/tests/mpn/t-perfsqr.c, gcc/gmp/tests/mpn/t-scan.c, gcc/gmp/tests/mpq/Makefile.am, gcc/gmp/tests/mpq/Makefile.in, gcc/gmp/tests/mpq/t-aors.c, gcc/gmp/tests/mpq/t-cmp.c, gcc/gmp/tests/mpq/t-cmp_si.c, gcc/gmp/tests/mpq/t-cmp_ui.c, gcc/gmp/tests/mpq/t-equal.c, gcc/gmp/tests/mpq/t-get_d.c, gcc/gmp/tests/mpq/t-get_str.c, gcc/gmp/tests/mpq/t-inp_str.c, gcc/gmp/tests/mpq/t-md_2exp.c, gcc/gmp/tests/mpq/t-set_f.c, gcc/gmp/tests/mpq/t-set_str.c, gcc/gmp/tests/mpz/Makefile.am, gcc/gmp/tests/mpz/Makefile.in, gcc/gmp/tests/mpz/bit.c, gcc/gmp/tests/mpz/convert.c, gcc/gmp/tests/mpz/dive.c, gcc/gmp/tests/mpz/dive_ui.c, gcc/gmp/tests/mpz/io.c, gcc/gmp/tests/mpz/logic.c, gcc/gmp/tests/mpz/reuse.c, gcc/gmp/tests/mpz/t-addsub.c, gcc/gmp/tests/mpz/t-aorsmul.c, gcc/gmp/tests/mpz/t-bin.c, gcc/gmp/tests/mpz/t-cdiv_ui.c, gcc/gmp/tests/mpz/t-cmp.c, gcc/gmp/tests/mpz/t-cmp_d.c, gcc/gmp/tests/mpz/t-cmp_si.c, gcc/gmp/tests/mpz/t-cong.c, gcc/gmp/tests/mpz/t-cong_2exp.c, gcc/gmp/tests/mpz/t-div_2exp.c, gcc/gmp/tests/mpz/t-divis.c, gcc/gmp/tests/mpz/t-divis_2exp.c, gcc/gmp/tests/mpz/t-export.c, gcc/gmp/tests/mpz/t-fac_ui.c, gcc/gmp/tests/mpz/t-fdiv.c, gcc/gmp/tests/mpz/t-fdiv_ui.c, gcc/gmp/tests/mpz/t-fib_ui.c, gcc/gmp/tests/mpz/t-fits.c, gcc/gmp/tests/mpz/t-gcd.c, gcc/gmp/tests/mpz/t-gcd_ui.c, gcc/gmp/tests/mpz/t-get_d.c, gcc/gmp/tests/mpz/t-get_d_2exp.c, gcc/gmp/tests/mpz/t-get_si.c, gcc/gmp/tests/mpz/t-hamdist.c, gcc/gmp/tests/mpz/t-import.c, gcc/gmp/tests/mpz/t-inp_str.c, gcc/gmp/tests/mpz/t-io_raw.c, gcc/gmp/tests/mpz/t-jac.c, gcc/gmp/tests/mpz/t-lcm.c, gcc/gmp/tests/mpz/t-lucnum_ui.c, gcc/gmp/tests/mpz/t-mul.c, gcc/gmp/tests/mpz/t-mul_i.c, gcc/gmp/tests/mpz/t-oddeven.c, gcc/gmp/tests/mpz/t-perfsqr.c, gcc/gmp/tests/mpz/t-popcount.c, gcc/gmp/tests/mpz/t-pow.c, gcc/gmp/tests/mpz/t-powm.c, gcc/gmp/tests/mpz/t-powm_ui.c, gcc/gmp/tests/mpz/t-pprime_p.c, gcc/gmp/tests/mpz/t-root.c, gcc/gmp/tests/mpz/t-scan.c, gcc/gmp/tests/mpz/t-set_d.c, gcc/gmp/tests/mpz/t-set_f.c, gcc/gmp/tests/mpz/t-set_si.c, gcc/gmp/tests/mpz/t-set_str.c, gcc/gmp/tests/mpz/t-sizeinbase.c, gcc/gmp/tests/mpz/t-sqrtrem.c, gcc/gmp/tests/mpz/t-tdiv.c, gcc/gmp/tests/mpz/t-tdiv_ui.c, gcc/gmp/tests/rand/Makefile.am, gcc/gmp/tests/rand/Makefile.in, gcc/gmp/tests/rand/findlc.c, gcc/gmp/tests/rand/gen.c, gcc/gmp/tests/rand/gmpstat.h, gcc/gmp/tests/rand/spect.c, gcc/gmp/tests/rand/stat.c, gcc/gmp/tests/rand/statlib.c, gcc/gmp/tests/rand/t-iset.c, gcc/gmp/tests/rand/t-lc2exp.c, gcc/gmp/tests/rand/t-mt.c, gcc/gmp/tests/rand/t-rand.c, gcc/gmp/tests/rand/t-urbui.c, gcc/gmp/tests/rand/t-urmui.c, gcc/gmp/tests/rand/t-urndmm.c, gcc/gmp/tests/rand/zdiv_round.c, gcc/gmp/tune/Makefile.am, gcc/gmp/tune/Makefile.in, gcc/gmp/tune/README, gcc/gmp/tune/alpha.asm, gcc/gmp/tune/common.c, gcc/gmp/tune/divrem1div.c, gcc/gmp/tune/divrem1inv.c, gcc/gmp/tune/divrem2div.c, gcc/gmp/tune/divrem2inv.c, gcc/gmp/tune/freq.c, gcc/gmp/tune/gcd_bin.c, gcc/gmp/tune/gcd_finda_gen.c, gcc/gmp/tune/gcdext_double.c, gcc/gmp/tune/gcdext_single.c, gcc/gmp/tune/gcdextod.c, gcc/gmp/tune/gcdextos.c, gcc/gmp/tune/hppa.asm, gcc/gmp/tune/hppa2.asm, gcc/gmp/tune/hppa2w.asm, gcc/gmp/tune/ia64.asm, gcc/gmp/tune/jacbase1.c, gcc/gmp/tune/jacbase2.c, gcc/gmp/tune/jacbase3.c, gcc/gmp/tune/many.pl, gcc/gmp/tune/mod_1_div.c, gcc/gmp/tune/mod_1_inv.c, gcc/gmp/tune/modlinv.c, gcc/gmp/tune/noop.c, gcc/gmp/tune/pentium.asm, gcc/gmp/tune/powerpc.asm, gcc/gmp/tune/powerpc64.asm, gcc/gmp/tune/powm_mod.c, gcc/gmp/tune/powm_redc.c, gcc/gmp/tune/pre_divrem_1.c, gcc/gmp/tune/sb_div.c, gcc/gmp/tune/sb_inv.c, gcc/gmp/tune/set_strb.c, gcc/gmp/tune/set_strs.c, gcc/gmp/tune/sparcv9.asm, gcc/gmp/tune/speed-ext.c, gcc/gmp/tune/speed.c, gcc/gmp/tune/speed.h, gcc/gmp/tune/time.c, gcc/gmp/tune/tuneup.c, gcc/gmp/tune/x86_64.asm, src/m3makefile: 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. 2010-09-26 12:28 jkrell * scripts/python/pylib.py: fix I386_NT boot support (filter out m3cc and restore copying the *.io and *.mo files) 2010-09-25 14:47 hosking * m3-libs/m3core/src/m3makefile: Disable building of atomic until I fix the compiler front-end. 2010-09-25 11:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: replace m3_convert with convert m3core seemed to have no real change don't bother "copying" memset/memcpy/memmove/etc, just use #define 2010-09-25 10:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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!) 2010-09-25 01:53 hosking * m3-sys/m3middle/src/: M3CG_Ops.i3, M3CG_Check.m3: 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) 2010-09-25 01:43 hosking * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-25 00:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-24 12:29 jkrell * m3-sys/m3cc/: gcc/gcc/Makefile.in, gcc/gcc/dfp.c, src/m3makefile: don't need libdecnumber 2010-09-24 11:50 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix more of configure -enable-checking in particular, widen return types both at the implementation and the call (and then narrow after the call) 2010-09-24 08:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: alignment cannot be 0, it must be at least 1 bit, else plain -g does a divide by zero, crash 2010-09-24 07:46 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix more crashes with plain -g -- use BUILTINS_LOCATION or input_location instead of UNKNOWN_LOCATION UNKNOWN_LOCATION always crashes 2010-09-23 13:54 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fold tiny bit of common code 2010-09-23 13:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: initialize local 2010-09-23 13:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-23 12:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-22 12:33 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add tracing to scan_var, reformat scan_var and varray_extend 2010-09-19 15:18 jkrell * m3-libs/m3core/src/runtime/common/: RTDebug.i3, m3makefile: add RTDebug.IsDebuggerPresent/DebugBreak 2010-09-19 15:17 jkrell * m3-libs/m3core/src/runtime/common/RTDebugC.c: forgot call to raise(sigtrap) 2010-09-19 14:50 jkrell * m3-libs/m3core/src/runtime/common/RTDebugC.c: 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 2010-09-15 12:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: one space 2010-09-15 12:42 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: only print m3name if m3gdb is true, since otherwise it is the same as an already printed name 2010-09-15 12:40 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-15 12:27 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: comment/whitespace 2010-09-15 12:20 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: really remove the sole use of the antiquated 'register' construct 2010-09-15 12:20 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove the sole use of the antiquated 'register' construct 2010-09-15 12:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: smush out a line via style 2010-09-15 12:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: comments/tracing 2010-09-15 12:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix trace 2010-09-15 12:05 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix warning comparing unsigned >=0 is always true 2010-09-15 11:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: trace integers more consistently only mangle names if -gstabs or -gstabs+ specified, and not Macho 2010-09-14 20:55 jkrell * m3-sys/m3gdb/src/: m3makefile, platforms.quake: redefine M3GDB_HOST to be the GNU platform, not the Modula-3 platform, so we don't have to carry around a translation 2010-09-14 20:46 jkrell * m3-sys/m3gdb/src/: m3makefile, platforms.quake: bring back equivalent of cross functionality that was here which isn't clearly what anyone wants anyway 2010-09-14 13:54 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more tracing work, and an 'int' to 'bool' 2010-09-13 12:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: eliminate more manual tracing capitalize hex, yucky code trace_int => m3_trace_int more consistently skip single char names 2010-09-13 12:04 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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. 2010-09-13 09:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: "o" => "offset" 2010-09-13 09:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: "v" => "var" redisable flag_strict_aliasing and flag_strict_overflow pending double checking 2010-09-13 09:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-13 09:26 jkrell * m3-sys/m3gdb/src/: m3makefile, platforms.quake-old: oops: fix a typos, and cleanup more 2010-09-13 09:15 jkrell * m3-sys/m3gdb/src/: m3makefile, platforms.quake: remove cross gdb stuff 2010-09-13 09:14 jkrell * m3-sys/m3gdb/src/m3makefile: Replace bunch of comparisons with one table lookup. 2010-09-13 09:12 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: 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 2010-09-13 08:53 jkrell * m3-sys/: m3gdb/src/m3makefile, m3cc/src/gnucc.common: Drop notion of cross building m3gdb. It is never done. 2010-09-13 08:45 jkrell * m3-sys/m3gdb/src/m3makefile: update m3gdb_Run based on current m3gdb_Run 2010-09-13 08:42 jkrell * m3-sys/m3gdb/src/m3makefile: 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? 2010-09-13 08:39 jkrell * m3-sys/m3gdb/src/m3makefile: 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) 2010-09-13 08:32 jkrell * m3-sys/m3gdb/src/m3makefile: cleanup as-yet unused stuff 2010-09-13 08:30 jkrell * m3-sys/m3gdb/src/m3makefile: remove the CC and CFLAGS stuff here too 2010-09-13 08:28 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: 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). 2010-09-13 08:17 jkrell * m3-sys/m3cc/src/m3makefile: 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. 2010-09-13 08:15 jkrell * m3-sys/m3cc/src/m3makefile: add commented out -enable-checking without =all, as a 'suggestin' 2010-09-13 08:15 jkrell * m3-sys/m3cc/src/m3makefile: Disable the logging. It hurts too much. So lame. 2010-09-13 07:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-13 05:06 jkrell * m3-sys/cminstall/src/config-no-install/FreeBSD.common: use correct comment character 2010-09-13 04:57 jkrell * m3-sys/cminstall/src/config-no-install/FreeBSD.common: untested: split up cc and ld parameters to avoid warnings from cc about ld parameters, that show up as a diff running the tests 2010-09-12 22:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-12 22:01 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-12 19:23 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-12 13:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove manual tracing of object and method as the macros do good enough job (almost identical, not sub-standard or anything) 2010-09-12 13:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-12 11:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-12 10:23 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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.) 2010-09-12 08:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Reformat, particularly with regard to braces. Open braces go on their own line. Braces can be omited for single statement blocks. 2010-09-12 08:27 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove whitespace from ends of lines 2010-09-12 06:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: 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 2010-09-11 11:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Remove the use of bitfields in load/store. configure -enable-checking flags them as a problem. 2010-09-11 11:06 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: 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). 2010-09-11 09:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-11 08:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: oops 2010-09-10 22:01 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use alloca instead of xmalloc remove most strlen calls 2010-09-10 07:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove some but not all #if 0'ed code 2010-09-10 07:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-10 06:52 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: reformat a little 2010-09-10 06:26 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: int to long 2010-09-09 19:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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) 2010-09-09 11:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Don't let flag_split_wide_types make us avoid using bitfields. This seems to fix the optimized I386 problems. More testing to do. 2010-09-08 10:36 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: adjust comment: the more specific it is, the more it tends to be or become wrong, so be less specific 2010-09-03 11:12 jkrell * m3-libs/libm3/src/os/POSIX/FSPosix.m3: use AND instead of nested IF 2010-09-03 11:11 jkrell * m3-libs/libm3/src/os/POSIX/FSPosix.m3: 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) 2010-09-03 10:55 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: untested: move AMD64_FREEBSD to gcc 4.5.1 backend 2010-09-03 10:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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? 2010-09-01 16:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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. 2010-09-01 13:26 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add M3_TYPES_STRICT = 0 or 1 or 2 2010-09-01 13:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add M3_TYPES_STRICT 2010-09-01 13:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: int M3_TYPES = 0; at the top and then if that 2010-09-01 13:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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. 2010-09-01 12:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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. 2010-09-01 11:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-09-01 09:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: arg, don't yet assert that frontend and backend agree on record sizes -- they don't! 2010-09-01 09:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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! 2010-09-01 09:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: just tracing changes 2010-09-01 09:36 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove TREE_ADDRESSABLE prototype, working fix coming shortly 2010-09-01 09:35 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: m3cg_boolstr => boolstr m3cg_typestr => typestr 2010-08-31 23:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: only records/objects addressable, not all the other private stuff passed to m3gdb, suplib still not working 2010-08-31 23:35 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: 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 2010-08-31 17:55 wagner * doc/help/cm3/example.html: fix example syntax 2010-08-31 12:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Nope: ../src/netobjrt/NetObjRT.m3:66:0: internal compiler error: in create_tmp_var_for, at tree-nested.c:160 undo the debug_tag thing since it proved not yet needed disable the new type code again.. 2010-08-31 12:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h: forgot these files, renameing id_tree_pair_t to m3type_t 2010-08-31 12:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Mark all record types as addressable, so they will never be passed in registers. Marking the parameters in-memory doesn't suffice. Also some tracking tweaks. And add an assert. In the new type system, rename id_tree_pair_t to id_tree_pair_t in case it gets more data. Turn on the type code again. 2010-08-31 10:54 jkrell * m3-sys/cm3/test/src/m3overrides: no change, just taking ownership so I can chmod -x on server 2010-08-31 10:50 jkrell * scripts/sysinfo.sh: reformat just one line 2010-08-31 10:49 jkrell * caltech-parser/term/src/TermC.h, scripts/version.quake: no change, just taking ownership so I can chmod -x on server 2010-08-31 10:44 jkrell * scripts/config/libgcc.c, scripts/win/cvs.c, m3-sys/m3middle/src/POSIX/CoffTime.c, m3-sys/m3middle/src/POSIX/m3core.h: no change, just taking ownership so I can chmod -x on server 2010-08-31 10:40 jkrell * m3-tools/m3scan/src/: m3scan_M3ID.i3, m3scan_M3ID.m3: no change, just taking ownership so I can clear executable bit on server 2010-08-31 10:35 jkrell * m3-libs/: sysutils/src/POSIX/FSUnixC.c, unittest-numeric/src/m3overrides: no change, just taking ownership so I can clear executable bit on server 2010-08-31 10:33 jkrell * m3-libs/unittest/.cvsignore: add .cvsignore 2010-08-31 10:29 jkrell * m3-libs/unittest-numeric/.cvsignore: add .cvsignore 2010-08-31 10:25 jkrell * m3-libs/m3core/src/: runtime/common/RTMiscC.c, runtime/common/RTThread.i3, thread/Common/ThreadDebug.c, thread/Common/ThreadDebug.i3, win32/WinConstants.c, win32/WinUser.txt: no change -- just taking ownership so I can clear executable bit on server 2010-08-31 10:12 jkrell * m3-libs/m3core/src/C/Common/: CsignalC.c, CstdioC.c, CstdlibC.c, CstringC.c: no change -- I want to take ownership so I can clear executable bit on server 2010-08-30 07:01 jkrell * m3-sys/m3front/src/: types/RecordType.m3, types/Type.m3, values/Field.i3, values/Field.m3, builtinOps/BitSize.m3: Pass more type information to backend. Hopefully it will use it. In particular, if you imported: TYPE Foo = RECORD a:INTEGER; END: and you also defined yourself unrelated: TYPE Bar = RECORD a:INTEGER; END; then the anonymous "RECORD a:INTEGER END;" would not be described to the backend. 2010-08-30 06:57 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: disable all the new type code for now It needs more work. e.g. bitfields/packed types? Some small tracing fixes. 2010-08-30 03:22 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more tracing and asserts and a very small amount of whitespace change 2010-08-30 02:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: trace with uppercase hex 2010-08-30 02:36 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: more tracing tweaks 2010-08-30 02:33 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: move traces before asserts 2010-08-29 12:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Just tweak comment from previous 2010-08-29 12:13 jkrell * m3-sys/m3linker/src/MxCheck.m3: Allow opaque types to be defined (not revealed, defined) multiple times, as long as every definition has the same super type. This is needed for another change I'm still working on. I actually think this could/should be even further relaxed. It should be ok to say: TYPE Base = ...; TYPE Middle <: Base; TYPE Leaf <: Middle; TYPE Leaf <: Base; but no such change is here or in the works by me. 2010-08-29 12:10 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Tell the backend that opaque types are pointers. It would be nice to tell it more here, i.e. a pointer to some specific record. It appears reveal is called too late currently. This is enough for now, to fix some codegen problems. (some m3front changes still being worked on to make this matter) 2010-08-29 12:05 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: strictly move a few labels all the way to the left 2010-08-29 12:03 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: strictly changes to make it blindingly obvious that locals are not used uninitialized stuff like: int a = { 0 }; int b = something; sometimes moving the declarations lower (but still being ANSI C89!) 2010-08-29 11:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: strictly changes to tracing alignment => align trace booleans as strings "true" or "false" add some more tracing tweak some tracing UNUSED_FOO => FOO when FOO now traced m3cg_typename => m3cg_typestr (used in tracing) a few modules traced with -y to try to shake out any new format string bugs; some could remain, but this stuff isn't on by default 2010-08-29 10:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add a space to pretty much every function or macro invocation and no other change here 2010-08-27 16:08 hosking * m3-libs/m3core/src/runtime/common/RTAllocator.m3: Forgot to copy header to cloned objects. 2010-08-27 12:28 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: further improved debugging with stock gdb I can see VAR parameters now for example. Fields in records that are function pointers aren't implemented correctly currently, for debugging. The information being fed to m3gdb should be unchanged in all of this. 2010-08-27 11:14 jkrell * m3-sys/m3front/src/misc/CG.i3: forgotten file for adding typeid parameter to pop_struct 2010-08-27 10:43 jkrell * m3-sys/: m3back/src/M3x86.m3, m3cc/gcc/gcc/m3cg/parse.c, m3front/src/misc/CG.m3, m3front/src/values/Formal.m3, m3middle/src/M3CG.m3, m3middle/src/M3CG_BinRd.m3, m3middle/src/M3CG_BinWr.m3, m3middle/src/M3CG_Check.m3, m3middle/src/M3CG_Ops.i3, m3middle/src/M3CG_Rd.m3, m3middle/src/M3CG_Wr.m3: Give accurate type information passing and receiving records by value. This should improve debugging with stack gdb. Presently only for records passed by value. VAR records not yet. VAR anything maybe not yet. This should fix SPARC64_SOLARIS (test case p247). This should provide for more efficient passing of some record types on some platforms, e.g. AMD64_DARWIN, probably all AMD64, e.g. some will be passed in registers now. This is a breaking change in the cm3<=>cm3cg interface. Therefore bootstrap MUST be performed in the usual correct careful order. Old cm3cg goes with old cm3. New cm3cg goes with new cm3. You first build new cm3 against old m3core/libm3/cm3/cm3cg. Then build new cm3cg. Then rebuild m3core/m3core/cm3. Then rebuild everything. upgrade.py and presumably upgrade.sh that it was based on do this correctly. I grant that M3CG didn't absolutely have to change here. No type information is needed for passing parameters, given that whatever function we are going to call has had its type declared. But then, neither did we need size/alignment. The information is readily at hand in m3front. 2010-08-27 10:32 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: a bit more cleanup 2010-08-27 10:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: initialize some locals 2010-08-27 10:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use memcmp instead of STREQ 2010-08-27 10:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: whitespace only, fixup my recent changes 2010-08-27 07:43 jkrell * scripts/python/upgrade.py: fix nocleangc option 2010-08-27 07:14 jkrell * m3-sys/m3cc/src/m3makefile: It looks like iconv is all gone now. So we can stop hacking on so many files during build. Leaving just the cygwin/libtool thing. 2010-08-27 07:09 jkrell * m3-sys/m3cc/src/: Math.quake, m3makefile: use Math.quake instead of local incrementor only pay a price on NT actually should reduce this to Win32 host (using cmd) with sh.exe in the path 2010-08-26 09:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: checkpoint work on getting better typeinfo. The breaking change to declare struct parameter types is #if 0'ed out with a comment indicating where there are codegen differences to look at more closely: caltech-parser/parserlib/klexlib/AMD64_DARWIN/RegExpParse.ms m3-libs/libm3/AMD64_DARWIN/Pickle2.ms m3-tools/showheap/AMD64_DARWIN/ShowHeap.ms m3-ui/vbtkit/AMD64_DARWIN/VTReal.ms probably one of the first two for the caltech-parser problem, though ShowHeap.ms is probably nicely relatively standalone The change is here to try to give record fields their correct type, but not hook up parameters to their type Some function renaming for clarity. ie. "name mangling overloads" 2010-08-25 21:09 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c, ThreadOpenBSD.c, m3makefile: A *little* less duplication wrt the "dummy" sections and endeavor to not compile the small versions unnecessarily. 2010-08-25 21:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadOpenBSD.c: add dummy for non-openbsd; not used 2010-08-25 15:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: split up debug_field_fmt into debug_field_fmt / debug_field_fmt_v I'm starting to remember why these splits might be useful.. Either way, an ok factoring. 2010-08-25 15:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: and fix comment 2010-08-25 15:11 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: split up debug_field into debug_field and debug_field_type This should definitely be useful, in giving record fields the correct types and not just always t_int. 2010-08-25 15:10 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: split up debug_tag so there is a function format_tag_v that doesn't operate on globals; I don't remember why I thought this was going to be useful, but it is a good structuring anyway; globals are bad 2010-08-24 21:24 jkrell * scripts/python/: pylib.py, upgrade.py: drop NT386GNU, NT386MINGNU; we have I386_CYGWIN, I386_MINGW instead 2010-08-24 21:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Let through even more optimizations. Wow, caltech-parser problem really does seem to be caused by providing type information for struct parameters. Again, let's try fixing the field types before proceeding (not done here). They are all integers currently. 2010-08-24 21:16 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: I386_OPENBSD hung here: == package /home/jay/dev2/cm3/m3-ui/zeus == +++ /cm3/bin/cm3 -build -DROOT=/home/jay/dev2/cm3 +++ --- building in I386_OPENBSD --- ignoring ../src/m3overrides /cm3/bin/m3bundle -name ZeusBundle -F/tmp/qk /cm3/bin/stubgen -v1 -sno RemoteView.T -T.M3IMPTAB stubgen: Processing RemoteView.T xMakeContext go back to 4.3.5, alas 2010-08-24 21:04 jkrell * scripts/install-cm3-compiler.sh: replace NT386GNU with I386_CYGWIN also add I386_MINGW 2010-08-24 20:36 jkrell * m3-sys/cminstall/src/config-no-install/: NT386GNU, NT386MINGNU: drop NT386GNU, NT386MINGNU, there is I386_CYGWIN, I386_MINGW instead 2010-08-24 20:34 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: drop NT386GNU, there is I386_CYGWIN instead 2010-08-24 20:27 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: Move I386_OPENBSD from 4.3.5 to 4.5.1. There was an out of memory error, had to: # pwd /etc # grep data login.conf :datasize-max=768M:\ :datasize-cur=768M:\ :datasize=infinity:\ :datasize-cur=768M:\ :datasize-max=infinity:\ change default 512 to 768 (probably not all of these). Couldn't seem to do anything with ulimit. Testing not done but moving along ok. 2010-08-24 20:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: let through more optimization options 2010-08-24 09:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: oops: too aggressive restore parameters to be typeless turn off flag_split_wide_types caltech-parser broken otherwise (and this is preferable to significantly further pessimisation maybe let's fix the record fields first (There certainly is a problem here but it takes a long time to reduce, and probably also a long time to directly debug.) 2010-08-24 08:26 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Give the backend some more type information. In particular, local and parameter structs are told be structs with fields. Some other types might be corrected as well but that isn't clear. This should significantly improve debugging with stock gdb, as well as work toward fixing a problem on SPARC64_SOLARIS. Though the identifier names in gdb are still mangled, alas. Note that this enables the optimizer to do more work, sometimes damage, and therefore optimization settings and codegen are *slightly* further pessimized here. Much of this is guessing or unrelated. In particular: flag_strict_aliasing = 0; flag_strict_overflow = 0; flag_reorder_functions = 0; flag_exceptions = 1; align_functions = 0; align_labels = 0; align_jumps = 0; align_loops = 0; and some others. Something in here (not listed) breaks caltech-parser and needs further reduction. (But it is via breaking something under caltech-parser, such as m3front or m3core or libm3, etc.) and if (flag_split_wide_types || GCC42 || IS_REAL_TYPE(src_T) || IS_REAL_TYPE(dst_T)) use the add + indirect form of load/store, instead of bitfields. I did see, in some variations: - an infinite recursion in the backend related to splitting wide types - an undebugged crash in caltech-parser More to do there: in particular, all struct fields have always been and continue to be declared as ints. That will be changed "soon". Tested almost exclusively on I386_DARWIN and/or AMD64_DARWIN. (for its combination of fast fork, non-oddball non-Interix, and least awful gui thereof, but still pretty awful) 2010-08-24 07:11 jkrell * m3-sys/m3back/src/M3C.m3: baby steps -- remove more x86 stuff 2010-08-24 07:06 jkrell * m3-sys/cminstall/src/config-no-install/SPARC.common: remove -munaligned-doubles 2010-08-24 07:05 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: M3_MAIN_IN_C for basically all targets 2010-08-24 07:03 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_LINUX: turn off debug again to save diskspace; try PIC again 2010-08-24 07:00 jkrell * m3-sys/cminstall/src/config-no-install/NetBSD2_i386: remove NetBSD2_i386 2010-08-24 06:50 jkrell * scripts/regression/defs.sh: merge with sysinfo.sh, including but not limited NetBSD2_i386 to I386_NETBSD 2010-08-24 06:21 jkrell * scripts/python/pylib.py: remove vestigial NetBSD2_i386 2010-08-24 06:03 jkrell * scripts/sysinfo.sh: remove vestigial NetBSD2_i386 and alter whitespace just a little bit 2010-08-24 06:00 jkrell * m3-sys/cminstall/src/config-no-install/cm3.cfg: Only advertise "modern" platform names. ie. not NetBSD2_i386 but also not LINUXLIBC6, FreeBSD4, etc. This does *not* remove support for *anything*. (Though I am really keen to remove NT386, LINUXLIBC6, FreeBSD4, SOLsun, SOLgnu, NT386GNU, NT386MINGNU.) 2010-08-24 05:54 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: remove historical NetBSD2_i386, I386_NETBSD suffices 2010-08-24 05:37 jkrell * m3-libs/m3core/src/thread/m3makefile: remove NetBSD2_i386 2010-08-24 05:33 jkrell * m3-sys/m3middle/src/Target.m3: remove historical NetBSD2_i386 target 2010-08-24 05:31 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: remove the historical NetBSD2_i386 target I386_NETBSD suffices While we do have vocal users of: NT386, LINUXLIBC6, FreeBSD4, SOLsun/SOLgnu which should be replaced by I386_NT, I386_LINUX, I386_FREEBSD, SPARC32_SOLARIS I don't think we have any NetBSD2_i386 users. 2010-08-24 05:28 jkrell * m3-sys/m3linker/src/MxGen.m3: Dispense with s.eol or even Wr.EOL and just use CONST EOL = "\n" 2010-08-24 05:25 jkrell * m3-sys/m3linker/src/MxGen.m3: include some ANSI C prototypes in the C for main 2010-08-24 05:24 jkrell * m3-sys/cm3/src/Builder.m3: restor all the code for generating main not in C 2010-08-23 17:50 wagner * scripts/regression/defs.sh: fix installation update again 2010-08-23 17:49 wagner * scripts/sysinfo.sh: some shells don't like empty ifs 2010-08-23 17:08 wagner * scripts/regression/defs.sh: adapt generation of config to code in upgrade.sh; hope that's OK 2010-08-23 16:53 wagner * scripts/sysinfo.sh: fix last commit 2010-08-23 11:02 jkrell * scripts/sysinfo.sh: FreeBSD: i*86 => i386 Darwin: prototype PPC64_DARWIN, but still just be PPC_DARWIN Linux: ppc* to ppc and ppc64 ppc64 is hypothetical, I don't have such a system yet (Gentoo supports it) and even then I map it to PPC_LINUX, not the hypothetical PPC64_LINUX OpenBSD: add AMD64_OPENBSD, from both x86_64 and amd64, though this should be revisisted once system mis up Note that PPC64_DARWIN I couldn't find a particularly good way to detect. So I do this: CM3_TARGET=PPC_DARWIN;; echo "int main() { return 0; }" | gcc -arch ppc64 -x c - -o ./m3ppc64 if ./m3ppc64 2/dev/null; then #CM3_TARGET=PPC64_DARWIN;; fi;; rm -rf ./m3ppc64 2010-08-23 10:59 jkrell * scripts/sysinfo-new.sh: some uname/target detection updates including but not necessarily limited: sync with sysinfo.sh remove starts from the ends of things prototypes PPC64_DARWIN use only "new" target names: I386_NETBDS, SPARC32_SOLARIS, etc. Note this file is not used. Probably never will be, I merged most of its goodness into sysinfo.sh. 2010-08-23 06:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix dumb use of va_arg -- there is an additional fixed arg 2010-08-23 05:51 jkrell * m3-sys/cm3/src/Builder.m3: Always generate main in C. 2010-08-23 00:35 jkrell * m3-sys/m3cc/gcc/libcpp/: charset.c, init.c: fix eliminate of iconv/locale 2010-08-23 00:00 jkrell * m3-sys/m3cc/gcc/libcpp/: charset.c, internal.h: more iconv/locale elimination (consider that m3cg doesn't read textual source) 2010-08-22 23:08 jkrell * m3-sys/m3cc/: gcc/gcc/Makefile.in, gcc/libcpp/Makefile.in, gcc/libdecnumber/Makefile.in, src/m3makefile: eliminate CATALOGS and LIBICONV/LIBICONV_DEPS in checked in source instead of at build time in m3makefile I get tired of seeing all the sed commands go by and this is definitely an ok way to achieve same effect. A bit more to do here though (the #if'ed code) Also remove the GMPLIBS/GMPINC in gcc-apple. Switch SPARC64_SOLARIS to gcc 4.5.1 again, as it has the same problem as 4.3.5 and the problem is mostly understood and a fix is in progress. 2010-08-22 22:27 jkrell * m3-sys/m3cc/gcc/gcc/config/sparc/sparc.c: mark unused parameter as unused to quash warning 2010-08-22 09:04 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: infrastructure for maintaining typeid => tree mapping consists of struct { unsigned long id; tree t; }; stored in a gcc "VEC" sorted with qsort on id searched with bsearch added functions: get_typeid_to_tree set_typeid_to_tree to be used shortly. This has already been seen to fix the SPARC64_SOLARIS break but needs a bit more work and testing. In particular, we should be able to look at structs in stock gdb, once this stuff is used adequately. 2010-08-22 08:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: work in progress: move the type uids section of code up, as I'll shortly be adding code above where it was that refers to it (separating the diffs for ease of reading) 2010-08-22 08:00 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: replace: gcc_assert (t == t_int); with: m3cg_assert_int(t); which gives a nicer error message when word size gets confused 2010-08-21 21:58 jkrell * m3-sys/m3back/src/M3C.m3: Start really thinking about a C backend. It will offer: much better portability no more merging gcc, or trying to figure out what is wrong with the gcc trees we make no more dealing with platforms that maintain their own gcc forks, e.g. OpenBSD, e.g. Apple better codegen probably: less problem with optimizations better codegen definitely with caveats: on Digital (Tru64, VMS) an NT platforms, we can use the C exception handling mechanism on all platforms we can use C++ exception handling i.e. "portable C" still limits to setjmp/longjmp but portable C++ is better and some platforms provide better C better codegen: features like "graphite" and "lto" become accessible if the host gcc has them, without us forking more code better debugging with stock gdb less need for forking gdb probably slower compilation a portable distribution format -- just C source (still to work through small number of platform dependencies in the front end, e.g. word size, endian, size of of closure marker (could just be 4 bytes probably on all platforms, except Ia64 maybe, need to try disassembling 4 bytes 0xFF 0xFF 0xFF 0xFF or really underand the encoding to see if it can be ruled out) a dramatic reduction in porting work (still to push out more platform dependencies e.g. Uin.i3) possibly better codegen, in that the changes I made to Uerrno.i3 could probably be restated somehow, to actually use the #defines, referenced from generated C; this is even more futurisic and hypothetical though, as it'd require an alternative to <* extern *>. Anyway, not much here, just forked M3x86.m3 and made some systematic changes, thinking it through just a little. The compile-time stack should now probably just contain strings for example. The constant folding can go away. The pushes/pops should still operate on it. But actual codegen will be "print". 2010-08-21 08:39 jkrell * m3-sys/m3cc/src/m3makefile: back to gcc 4.3 for SPARC64_SOLARIS, see m3-sys/m3tests/src/p2/p247 2010-08-20 09:10 jkrell * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: run uname a/m/s/p/r each individually 2010-08-19 20:25 jkrell * scripts/regression/hudson-java-stub-netbsd: revise for NetBSD 2010-08-19 20:24 jkrell * scripts/regression/hudson-java-stub-openbsd: tweak comments 2010-08-19 20:23 jkrell * scripts/regression/: hudson-java-stub, hudson-java-stub-netbsd, hudson-java-stub-openbsd: fork for netbsd 2010-08-19 19:44 jkrell * m3-sys/m3cc/src/m3makefile: move I386_NETBSD, AMD64_NETBSD up to gcc 4.5.1 I386_NETBSD built itself at least up to missing database packages AMD64_NETBSD cross built, ran out of memory self building m3cc, to be tried giving the VM more memory and/or with ulimit 2010-08-19 18:57 jkrell * scripts/: sysinfo.sh, python/pylib.py: add detection of AMD64_NETBSD to pylib.py probably fix detection of AMD64_NETBSD in sysinfo.sh (amd64 vs. x86_64) change NetBSDv2_i386 to I386_NETBSD in sysinfo.sh (Note that cm3 is actually way over-parameterized here. For example, the only thing the Posix x86 platforms vary on is the size of jmpbuf. The only think most platforms vary on are word size, posix or not, jmpbuf size, endian. This should probably all be moved into config files and config files only.) 2010-08-19 18:11 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: NetBSD #defines the various pthread symbols, breaking our token pasting, so for it expand the wrappers manually. We might want to revisit this. Options include: - manual expansion for all platforms - change the wrapper macros to avoid expansion before paste (probably) 2010-08-19 08:01 jkrell * m3-sys/m3tests/src/m3makefile: test that hits an assertion failure in gcc 4.5.1 backend for SPARC64_SOLARIS (and the assertion is in sparc.c so somewhat target specific) 2010-08-18 21:40 jkrell * m3-sys/m3cc/src/m3makefile: put SPARC targets on same line, remove small pointless part of rmrec workaround 2010-08-18 21:38 jkrell * m3-sys/m3cc/src/: m3makefile, platforms.quake: put 64 back in sparc64-solaris remove 2.10 from sparc[64]-solaris use explicit -target for SPARC64_SOLARIS I was getting the assertion failure that means word size is wrong. Maybe -m64 doesn't work for sparc-solaris?? Move SPARC64_SOLARIS to gcc 4.5.1 backend. Testing not yet complete but seems to be moving along ok. Cleanup hashtable used as set to not have keys. ({"FOO":1,"BAR":1} => {"FOO","BAR"}, just nice shorter quake syntax) 2010-08-18 21:34 jkrell * m3-sys/cminstall/src/config-no-install/: SPARC.common, SPARC64.common: Trying to fix nagging SPARC problems. e.g. Seems to crash early if not using PIC. Change here is just to use M3_MAIN_IN_C = TRUE. 2010-08-18 17:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: guessing: http://hudson.modula3.com:8080/job/cm3-current-build-AMD64_DARWIN/5/console ld: codegen problem, can't use rel32 to external symbol in _ThreadPThread__SuspendThread from ThreadApple.o move the pragma visibility back down after the #includes 2010-08-18 09:39 jkrell * m3-sys/m3cc/src/platforms.quake: drop the 64 in sparc64-sun-solaris2.10 2010-08-18 07:53 jkrell * scripts/python/pylib.py: echo shell commands on separate lines 2010-08-18 07:44 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: clock_getres requires -lrt on Linux which we don't otherwise use 2010-08-18 06:42 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: add small comment 2010-08-18 06:41 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: For now at least, only use ComputeGrainViaClockGetRes on OSF/1. ComputeGrainViaSampling has a strong propensity to hang on OSF1/1. I don't know why. It seems to work ok on the others. ComputeGrainViaClockGetRes and ComputeGrainViaSampling seem to give much different results on Linux. And I think FreeBSD 4.11. ComputeGrainViaClockGetRes isn't available on Darwin. Haven't yet tested OpenBSD, Solaris, modern FreeBSD, etc. 2010-08-18 06:32 jkrell * m3-libs/m3core/src/time/POSIX/test_time.c: fix 2010-08-18 06:28 jkrell * m3-libs/m3core/src/time/POSIX/test_time.c: more data 2010-08-18 06:23 jkrell * m3-libs/m3core/src/time/POSIX/: TimePosixC.c, test_time.c: cleaner: make both avaiable, put test code in separate file 2010-08-17 21:41 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: minor cleanup 2010-08-17 21:37 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: fix 2010-08-17 21:35 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: Let's try clock_getres if it is available. 2010-08-17 20:51 jkrell * m3-sys/m3cc/src/m3makefile: remove patching mechanism at least while it is unused, I commited the OpenBSD patches 2010-08-17 20:27 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: move up to gcc 4.5.1: SPARC32_LINUX ALPHA_OSF PPC_LINUX I386_FREEBSD, FreeBSD4 These aren't all done testing but seem to be moving along reasonably. 2010-08-17 20:18 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: turn off optimization, caused cm3 from gcc 4.5.1 backend to crash early, needs investigation but bigger fish to fry 2010-08-17 20:15 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_LINUX: PIC is a problem here again, maybe only for cross builds, maybe autoconf released? also remove -munaligned-doubles from cc I doubt it is needed and allow -g on m3cg (though diskspace is a recurring problem) 2010-08-17 19:54 jkrell * m3-sys/m3cc/src/: m3makefile, clean_marker.txt: switch PPC_LINUX to gcc 4.5.1 backend, it has gotten pretty far along now 2010-08-17 19:45 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA_OSF, Alpha32.common, Alpha64.common: add TARGET_ENDIAN 2010-08-17 18:45 jkrell * m3-sys/m3cc/src/m3makefile: remove build_dir_tail stuff accidentally removed most of it in previous commit since I saved file during commit 2010-08-17 18:43 jkrell * m3-sys/m3cc/src/m3makefile: disable gcc 4.5 manual shipping, since build_dir_tail is also disabled 2010-08-17 18:41 jkrell * m3-sys/m3cc/src/: m3makefile, clean_marker.txt: Move PPC_DARWIN to gcc 4.5.1 backend again. I tested this as far as self-building system under emulation and running some gui apps, though Juno and mentor fail because thread suspension fails -- which points out a surprising lack of coverage of what does work. 2010-08-17 18:37 jkrell * m3-sys/m3cc/src/m3makefile: just let autoconf/config.guess build a 32bit hosted x86 Darwin cm3cg, the bugs with 64bit hosts are fixed 2010-08-17 18:34 jkrell * m3-sys/m3cc/src/m3makefile: remove attempt at using powerpc-on-x86 emulation, until/unless m3-libs/m3core/src/thread/PTHREAD/test_apple.c works 2010-08-17 18:27 jkrell * m3-libs/m3core/src/thread/PTHREAD/test_apple.c: show that thread_get_state doesn't work under ppc-on-x86 emulation 2010-08-17 18:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/test_apple.c: copy of ThreadApple.c for testing 2010-08-17 18:11 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: slight reformat and print to stderr before abort (assert might be preferable) 2010-08-17 17:53 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD.common: provide commentd out IsTargetFreeBSD4 that returns hardcoded TRUE or FALSE, useful for cross building to FreeBSD4 2010-08-17 17:51 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: put in if not defined(IsTargetFreeBSD4) so FreeBSD4 config can perhaps provide it 2010-08-17 17:47 jkrell * m3-libs/m3core/src/thread/m3makefile: put in if not defined(IsTargetFreeBSD4) so FreeBSD4 config can perhaps provide it 2010-08-17 17:27 jkrell * m3-sys/m3cc/gcc/gcc/po/: ChangeLog, EXCLUDES, be.gmo, ca.gmo, da.gmo, de.gmo, el.gmo, es.gmo, exgettext, fr.gmo, gcc.pot, ja.gmo, nl.gmo, ru.gmo, rw.gmo, sr.gmo, sv.gmo, tr.gmo, zh_CN.gmo, zh_TW.gmo: not needed 2010-08-17 17:21 jkrell * m3-sys/m3tests/src/m3makefile: disable p240 exact codegen for now, I don't have time to go through the diffs and I theorize that their volume is causing Java to run out of memory 2010-08-17 08:11 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: restrucure slightly to reduce duplication ARM might not work fprintf(stderr) before abort() 2010-08-16 17:31 wagner * scripts/regression/defs.sh: adapt BINDISTMIN_NAME default 2010-08-16 10:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: fix long standing typo: - if (thread_resume(mach_thread != KERN_SUCCESS)) abort(); + if (thread_resume(mach_thread) != KERN_SUCCESS) abort(); 2010-08-15 21:19 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: go back to 4.3.5 for PPC_DARWIN at least for now, the system builds ok under emulation and some gui apps work but some gui apps crash, needs more investigation and so far I can't get gdb to work 2010-08-15 10:39 wagner * scripts/regression/defs.sh: as an afterthought -- don't force it in Hudson jobs, too much overhead 2010-08-15 10:35 wagner * scripts/regression/defs.sh: make download and installation of the latest cm3 release mandatory for all who include defs.sh for a while we need to get this release installed on all tinderbox clients let's see where this will fail... 2010-08-15 07:30 jkrell * scripts/regression/defs.sh: remove redundant check of who -m (there were two in a row!) and use $USER instead of who -m, it should be more efficient 2010-08-15 07:24 jkrell * m3-sys/m3cc/src/clean_marker.txt: be sure 4.5.1 optimization triggers clean build 2010-08-15 07:23 jkrell * m3-sys/m3cc/src/m3makefile: let gcc 4.5.1 backend be optimized (makes the previous change moot and a waste) 2010-08-15 07:22 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: move lines around so that PPC_DARWIN emulator can be used on I386_DARWIN switch PPC_DARWIN to gcc 4.5.1 backend clean another directory in workaround (not needed probably) There is probably a better way to do the first/larger change here, using quake text operations to remove the -O2 from CFLAGS instead of assigning CFLAGS=-g and losing the -arch ppc 2010-08-15 05:37 jkrell * scripts/python/pylib.py: fix previous 2010-08-15 05:34 jkrell * scripts/python/pylib.py: print FOO=bar;export FOO instead of unset FOO;FOO=bar;export FOO 2010-08-15 05:34 jkrell * scripts/python/pylib.py: print unset FOO;FOO=bar;export FOO instead of just unset FOO 2010-08-15 05:32 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, I386_FREEBSD.common: use -o /dev/null to avoid dropping null.o files 2010-08-15 04:59 jkrell * m3-libs/sysutils/src/FSUtils.m3: rmrec diagnostics again 2010-08-15 04:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove forward declare of enum machine_mode now that #includes reordered slightly 2010-08-15 04:17 jkrell * m3-sys/m3cc/src/: m3makefile, clean_marker.txt: Start switching to gcc 4.5.1. Switched: AMD64_DARWIN AMD64_LINUX I386_SOLARIS I386_DARWIN I386_LINUX LINUXLIBC6 All tested at least somewhat, with optmizations. Other targets either not yet tested or hit problems. More work to do. 2010-08-15 03:53 jkrell * m3-sys/cminstall/src/config-no-install/: FreeBSD4, I386_FREEBSD, I386_FREEBSD.common, I386_LINUX, I386_LINUX.common, LINUXLIBC6, SOLgnu, SOLsun, SPARC32_SOLARIS, SPARC32_SOLARIS.common: slight restructuring always assign unconditionally to TARGET, which necessitates splitting files into one line plus an include of a former copy of the file, minus the assigment to TARGET similarly for C_COMPILER (which is SUN or GNU or MS) remove the "if not defined", which doesn't work if the Modula-3 code predefines the values to their native values 2010-08-15 03:34 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS: fix cross SPARC32_SOLARIS builds to not do native whatever builds, like I386_FREEBSD was also just fixed 2010-08-15 03:27 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: fix cross I386_FREEBSD builds to not do native whatever builds, by really assigning to TARGET; it would have been nice for quake and/or to short circuit like C, I constantly end up instead either duplicating code or wrapping up code into functions that wouldn't be in functions otherwise, very lame, and probably not well forseen.. 2010-08-15 02:34 jkrell * scripts/python/pylib.py: disable the partial source update feature of the boot/cross archives, I haven't used it in a long time and nobody else has ever 2010-08-14 23:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cast to int to quash signed/unsigned warning 2010-08-14 23:33 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: adjust #includes, tree.c used as an example 2010-08-14 13:40 wagner * scripts/regression/defs.sh: Add download and installation of current 5.8.6 release archive. This should overcome the current tinderbox problems if it works as expected. 2010-08-14 10:47 wagner * scripts/regression/update_snapshot_status.sh: sort per target by time instead alphabetically 2010-08-13 23:15 jkrell * m3-sys/m3tests/src/m3makefile: use a higher level abstraction -- a function 2010-08-13 22:07 wagner * m3-sys/m3tests/src/m3makefile: wrong again, another attempt: fix rmrec for NT386 2010-08-13 19:12 wagner * m3-sys/m3tests/src/m3makefile: wrong again, another attempt: fix rmrec for NT386 2010-08-13 19:05 wagner * m3-sys/m3tests/src/m3makefile: fix rmrec for NT386 2010-08-13 06:06 wagner * scripts/regression/defs.sh: add restriction for doc shipping 2010-08-13 01:38 jkrell * scripts/regression/: cvs, cvs.sh: beware case insensitive file systems, e.g. on MacosX 2010-08-12 22:25 wagner * scripts/regression/cvs: CVS wrapper script for opencsw.org 2010-08-12 21:00 wagner * m3-sys/m3tests/src/m3makefile: work around broken rmrec for the time being 2010-08-12 19:07 wagner * scripts/regression/defs.sh: fix COVERSION: -d means something different for checkout than for update 2010-08-11 15:57 jkrell * m3-sys/m3cc/src/m3makefile: Only use get_env on non-native builds. This should fix Solaris 2.9. Autoconf should decide correctly for native builds. 2010-08-09 22:26 wagner * m3-sys/m3cc/src/m3makefile: Deleting the copied cm3cg file completely breaks the extraction of the m3cc build in the Hudson regression builds. m3cc should there only be compiled in the cm3-(current-)m3cc jobs, and not in the -build= and -test- jobs. This is achieved by setting the PREBUILT_CM3CG environment variable to a ready-to-use cm3cg. This in turn is done in the hudson_build_system.sh and hudson_pkg_tests.sh scripts. This mechanism should not be used in any other place. So I added the "and not NOACTION" part here to make it work again, even if the local m3cc might not be up-to-date. 2010-08-09 17:26 wagner * scripts/regression/defs.sh: change default checkout-version from release to trunk again... 2010-08-09 16:40 wagner * scripts/: make-bin-dist-min.sh, regression/defs.sh, regression/hudson_build_system.sh: Make shipping from opencsw.org work? Clean after building archive, too. 2010-08-08 21:53 wagner * scripts/regression/defs.sh: fix lots of stdout-->stderr redirections -- how did they get wrong? 2010-08-08 21:29 wagner * scripts/regression/defs.sh: last try for today... 2010-08-08 21:15 wagner * scripts/regression/hudson_build_system.sh: another debug addition 2010-08-08 21:07 wagner * scripts/regression/defs.sh: debug command execution in test_build_system; fix typo 2010-08-08 16:04 wagner * scripts/regression/defs.sh: another fix: heed predefined STAGE 2010-08-08 15:48 wagner * scripts/regression/: defs.sh, hudson_build_system.sh: still not working... 2010-08-08 14:21 wagner * scripts/regression/hudson_build_system.sh: better this way? 2010-08-08 13:52 wagner * scripts/regression/hudson_build_system.sh: add conditional snapshot build 2010-08-08 11:32 wagner * scripts/: make-bin-dist-min.sh, regression/defs.sh: first attempt to abstract shipping of files 2010-08-08 08:28 wagner * scripts/regression/defs.sh: add special handling for current9x and current10x on opencsw.org 2010-08-07 22:41 wagner * scripts/regression/: defs.sh, hudson_build_system.sh, hudson_pkg_tests.sh: more changes for opencsw.org 2010-08-07 20:19 wagner * scripts/regression/defs.sh: second attempt to fix it: special ssh setup for opencsw.org 2010-08-07 20:12 wagner * scripts/regression/defs.sh: fix special ssh setup for opencsw.org 2010-08-07 20:10 wagner * scripts/regression/defs.sh: special ssh setup for opencsw.org 2010-08-07 10:58 wagner * scripts/: make-bin-dist-min.sh, make-dist.sh, sysinfo.sh, regression/update_snapshot_status.sh: fix snapshot support and add build_platform 2010-08-07 07:44 wagner * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: It seems I accidentally broke the mechanism to check for pre-built cm3cg when copying the Hudson release testing jobs to cm3-current jobs. I overlooked that the -current- addition in some workspace names was needed in these hudson regression scripts, too. This may have caused some confusion, as old backend executables may have been used to built current sources. 2010-08-07 07:33 wagner * scripts/install-cm3-compiler.sh: more checks to avoid installing a broken compiler 2010-08-07 06:29 jkrell * m3-sys/m3tests/src/m3makefile: remove directory listing 2010-08-07 05:01 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: configure_c_compiler before using SYSTEM_CC, this should help PPC_DARWIN but I haven't looked enough yet to suspect if it suffices 2010-08-06 16:50 hudson * m3-sys/cminstall/src/config-no-install/Darwin.common: add some missing initializations for SYSTEM_CC 2010-08-05 14:02 jkrell * scripts/regression/defs.sh: let's see where is cm3 -- don't redirect 'type cm3' to /dev/null 2010-08-05 13:57 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, I386_FREEBSD: use /dev/null instead of echo+stdin 2010-08-05 13:50 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: use -c in case it does work -- don't link 2010-08-05 13:50 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: autoconf, in our way, -m and -arch; and add in -gstabs+ was oddly missing 2010-08-05 13:40 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: nevermind that, go back a version 2010-08-05 13:25 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: feign case insensitivity with -i on fgrep -- code is commented out, but will be copied to PPC-DARWIN 2010-08-05 13:15 jkrell * m3-sys/m3tests/src/m3makefile: missing expected outputs compare equal to zero length actual outputs -- empty is common and this seems like a nice option, this will fix some of the failures, now that I know/remember to run with cm3 -DHTML 2010-08-05 13:14 jkrell * m3-sys/m3tests/src/m3makefile: use TRUE and FALSE, instead of "T" and "" 2010-08-05 12:55 jkrell * m3-sys/m3tests/src/m3makefile: disable atomics test p226 2010-08-04 15:24 wagner * scripts/pkgmap.sh: fix typo 2010-08-04 13:40 jkrell * m3-sys/m3tests/src/m3makefile: remove test p247 that wasn't all that useful in finding problems in fs_rmrec 2010-08-04 13:33 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: hack at more directories, probably not needed 2010-08-04 13:22 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: restore rmrec hack for now, until m3 is up to date everywhere 2010-08-03 09:49 jkrell * m3-libs/libm3/src/os/POSIX/FSPosix.m3: Use lstat instead of stat. The problem with stat is that it fails on symlinks if their target doesn't exist. So e.g. if you are deleting, you want to delete all the symlinks first -- assuming none of the links are to links. (!) The problem with lstat is a symlink to a directory is reported as a file. I strongly suspect that you just can't win. Where is the filesystem abstraction that correctly allows for links (symbolic links and hard links) and the body of code that uses it correctly? In Modula-3? I suspect neither exist, but I could of course be wrong. 2010-08-03 09:46 jkrell * m3-libs/libm3/src/os/POSIX/FilePosix.m3: remove redundant code 2010-08-03 09:40 jkrell * m3-sys/m3quake/src/QMachine.m3: remove directory listing from rmrec 2010-08-03 08:50 jkrell * m3-libs/sysutils/src/FSUtils.m3: small cleanup 2010-08-03 08:46 jkrell * m3-libs/sysutils/src/FSUtils.m3: remove one more stat call (this area could be even better) 2010-08-03 08:44 jkrell * m3-libs/sysutils/src/FSUtils.m3: remove OldRmRec now that I have a good theory as to its problems -- can't enumerate and delete at the 'same time' 2010-08-03 08:39 jkrell * m3-sys/cminstall/src/config-no-install/MIPS64EL_OPENBSD: allow iodbc now, with comments as to how to make it work 2010-07-31 11:47 jkrell * m3-sys/m3cc/src/: m3makefile, clean_marker.txt: experiment: remove rm -rf hack and tickle clean marker 2010-07-31 11:39 jkrell * m3-libs/sysutils/src/FSUtils.m3: Add more comments. This file has functions: Rm and RemoveFile Rmdir and RemoveDir They do the same things in the success paths and vary in that some raise exceptions and others call Process.Crash in the error paths. 2010-07-31 11:35 jkrell * m3-libs/sysutils/src/FSUtils.m3: Don't call stat so many extra times. Once is enough to determine exists vs. file vs. directory, and if we just enumerated it, we don't need to check again. Perhaps the three booleans should be an enum. 2010-07-31 11:12 jkrell * m3-libs/sysutils/src/FSUtils.m3: replace RmRec with in implementation that only keeps one DIR*/Iterator open at a time. This is an experiment. The code is somewhat less efficient, producing more garbage, but also kind of small and nice to read. If this works, which I'm giving 50% odds, it still doesn't make sense. The opendir/readdir code I've seen is in fact reentrant. You can recurse while holding open the parent. They don't use a global or thread local, the use a buffer that is in the DIR*. Old version left for now under OldRmRec. With the debug printing removed. Both versions I believe are fairly racy, in that competing RmRecs will cause the other to fail. "Preflight" for existance doesn't cut and is in fact a significant deoptimization, This version is more efficient in that regard: don't call stat on children already determined to be file or directory. Still a wasted call at toplevel for existance. 2010-07-31 10:38 jkrell * m3-sys/m3tests/src/m3makefile: add test p248 for fs_rmrec 2010-07-31 08:48 jkrell * m3-sys/cm3/src/M3Build.m3: Put back warning that we now avoid. I still don't see any point to this warning. 2010-07-31 08:45 jkrell * m3overrides: adjust m3overrides file to avoid the useless warning from the frontend 2010-07-29 13:44 jkrell * m3-sys/m3cc/src/gnucc.common: no symbols on SPARC32_LINUX to conserve diskspace 2010-07-29 13:42 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_LINUX: no symbols, just to conserve diskspace 2010-07-29 12:42 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: Oops: OpenBSD up to and including 4.7 seems to have no $ORIGIN support. It has ld -z origin, but that's it. OpenBSD users should either set LD_LIBRARY_PATH or rebuild themselves. Under consideration, given time, is a new distribution form where users will configure (autoconf), assemble, compile C, link, install. And probably build m3cc themselves too. 2010-07-28 21:19 jkrell * m3-libs/sysutils/src/FSUtils.m3: more diagnostics 2010-07-28 21:17 jkrell * m3-sys/m3cc/src/m3makefile: more bogosity because rmrec fails 2010-07-28 21:15 jkrell * m3-sys/m3quake/src/QMachine.m3: more diagnostics for rmrec problem 2010-07-28 21:02 jkrell * m3-sys/m3cc/src/m3makefile: go back to being explicit about sparc32_linux target (see http://hudson.modula3.com:8080/job/cm3-current-build-SPARC32_LINUX/38/console; one would think -m32 would make this not matter) 2010-07-28 20:47 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile: forgot m3makefile, I had edited on the actual mips machine 2010-07-28 20:40 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: context.c, context_mips64.s: much better fix for mips don't access any globals (including functions) in internal_setcontext only access parameters (we can pass anything we need) This way, the code is correctly position independent and works in shared libraries. Before, anything shared would crash. As a bonus, though we have to write slightly unusual C, we don't need any assembly. Now, Juno works! 2010-07-28 19:09 jkrell * m3-games/tetris/src/m3makefile: disable on MIPS64EL_OPENBSD due to: /usr/bin/ld: not enough GOT space for local GOT entries /usr/bin/ld: BFD 2.15 internal error, aborting at /usr/src/gnu/usr.bin/binutils/bfd/elfxx-mips.c line 6483 in _bfd_mips_elf_relocate_section /usr/bin/ld: Please report this bug. F 2010-07-28 19:02 jkrell * m3-sys/cminstall/src/config-no-install/PPC32_OPENBSD: enable sharing on OpenBSD/powerpc -- using -fpic instead of -fPIC was the key, though that doesn't make sense to me and I didn't debug it 2010-07-28 18:05 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/context.c: remove OpenBSD/powerpc hack that no longer seems necessary 2010-07-28 17:47 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: huh? fix SYSTEM_LIBORDER 2010-07-28 17:29 jkrell * m3-sys/cminstall/src/config-no-install/: MIPS64EL_OPENBSD, Unix.common: There seems to be no odbc for MIPS64EL_OPENBSD. So, new interface among the config files: proc HasOdbc() return boolean Default is true. MIPS64EL_OPENBSD provides implementation that always returns false. Guides creation of default SYSTEM_LIBS and SYSTEM_LIBORDER. If we could remove elements from an array and table, that would be a better mechanism perhaps. 2010-07-28 16:10 jkrell * .cvsignore: we drop date.c and m3date in the root: .cvsignore 2010-07-28 16:09 jkrell * scripts/.cvsignore: add PKGS to .cvsignore 2010-07-28 16:08 jkrell * caltech-parser/drawcontext/test/.cvsignore, caltech-parser/parserlib/parserlib/test/.cvsignore, m3-comm/udp/test/.cvsignore, m3-db/db/test/.cvsignore, m3-db/odbc/test/.cvsignore, m3-db/postgres95/test/.cvsignore, m3-db/stable/test/.cvsignore, m3-libs/arithmetic/test/.cvsignore, m3-libs/binIO/test/.cvsignore, m3-libs/bitvector/test/.cvsignore, m3-libs/libm3/tests/.cvsignore, m3-libs/patternmatching/tests/.cvsignore, m3-libs/slisp/tests/.cvsignore, m3-sys/cm3/test/.cvsignore, m3-sys/m3quake/test/.cvsignore: .cvsignore files 2010-07-28 14:47 jkrell * m3-sys/m3cc/src/m3makefile: sparc32_linux: fixed, now an experiment, specific to it, I kind of want to *not* specific host, so that a cross build isn't detected, so that autoconf will do its usual stuff 2010-07-28 14:21 jkrell * m3-sys/cm3/src/M3Build.m3: remove more of the code for: remove the "ignoring override" print out, I think few people know it means and fewer (nobody) finds it useful 2010-07-28 14:19 jkrell * m3-sys/cm3/src/M3Build.m3: remove the "ignoring override" print out, I think few people know it means and fewer (nobody) finds it useful 2010-07-28 14:07 jkrell * scripts/install-cm3-compiler.sh: don't set -e/x, use echo instead, cp fails, I think, because of the CVS directory 2010-07-28 12:14 jkrell * scripts/install-cm3-compiler.sh: try set -e; set -x here, so we can see e.g. upgrading the compiler upgrade the config files 2010-07-28 12:10 jkrell * m3-sys/m3cc/src/m3makefile: go back to full paths from fs_lsdirs/files 2010-07-28 12:03 jkrell * m3-sys/m3cc/src/m3makefile: flubbed previous commit, comment was to be: sparc32_linux: remove the configure -with-cpu=v8 put back -target=sparc-linux config file will and needs to say -mcpu=v9 (tested via gcc -mcpu=v8 and -mcpu=v9 and using an atomic function) My Debian gcc 4.3 was configured as: --with-cpu=v8 --with-long-double-128 --build=sparc-linux-gnu --host=sparc-linux-gnu --target=sparc-linux-gnu among others. (notice: -with-long-double-128 -- something we want for Modula-3 also..) 2010-07-28 12:02 jkrell * m3-sys/m3cc/src/m3makefile: m3makefile 2010-07-28 11:23 jkrell * m3-sys/m3cc/src/m3makefile: add comment to the exec(rm -rf gmp) 2010-07-28 11:22 jkrell * m3-sys/m3cc/src/m3makefile: manually delete gmp with exec(rm -rf) 2010-07-28 11:10 jkrell * m3-sys/m3cc/src/m3makefile: just because it is what other code did, get just the leaf name and form the full path ourselves (this is related to rmrec failures) 2010-07-28 11:03 jkrell * m3-libs/sysutils/src/FSUtils.m3: add more debugprint 2010-07-28 11:01 jkrell * m3-libs/sysutils/src/FSUtils.m3: add some debugprint 2010-07-28 10:32 jkrell * m3-libs/m3core/src/thread/m3makefile: copy in stuff from cm3cfg.common, until it is updated 2010-07-27 06:58 jkrell * m3-libs/m3core/src/thread/POSIX/test_thread_sigaltstack.c: reduce 2010-07-27 06:51 jkrell * m3-libs/m3core/src/thread/POSIX/test_thread_sigaltstack.c: add test case, it only hangs on OpenBSD with -pthread!" 2010-07-27 05:21 wagner * m3-sys/m3tests/src/m3makefile: list build dir before removal 2010-07-26 13:44 jkrell * m3-libs/m3core/src/runtime/common/Compiler.tmpl, m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile, m3-sys/cminstall/src/config-no-install/MIPS64EL_OPENBSD, m3-sys/m3cc/src/platforms.quake, m3-sys/m3middle/src/Target.i3, m3-sys/m3middle/src/Target.m3, scripts/sysinfo.sh, scripts/python/pylib.py: add MIPS64EL_OPENBSD (e.g. Loongon/Gdium/Lemote) complete with: no atomics for 1 byte or 2 bytes no unwind tables (internal compiler error) These are for hypothetical future better exception handling, so ok. no debug symbols (there was a problem?) Should try again. user mode threads and worse, jmpbuf hacking need to try again the sigaltstack approach no Java => no Hudson Enough to build a cm3 that reports the expected "unable to find cm3.cfg". see: http://www.openbsd.org/loongson.html search web for: "Amazon gdium" etc. Presumably MIPS64EL_LINUX will fair a bit better. 2010-07-26 13:42 jkrell * m3-sys/cminstall/src/config-no-install/: Interix.common, PPC32_OPENBSD, Unix.common: disable shared on PPC32_OPENBSD, it has problems move the disabling of shared on Interix to Interix.common instead of having Unix.common know about it, by making there be another function interfacing among the config files: proc AdjustShared(shared) takes a boolean as to if shared was requested and returns a boolean as to if should really be shared. e.g.: false on Interix and PPC32_OPENBSD the default is false if using an older cm3 else whatever is input on curent cm3 ("older" is defined by probing for a symbol added in 5.8.6); this is more relevant if mixing current config files with older cm3, which historically I have often done, though it can be problematic 2010-07-26 13:40 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: remove X11 libraries that I think were only needed if using -static 2010-07-26 13:30 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile: compile this for all OpenBSD platforms (granted, sparc64 not tested in a while, amd64 maybe never finished? but mips64, powerpc, x86 appear good; need to try sigaltstack again though) 2010-07-26 13:15 jkrell * m3-sys/cminstall/src/config-no-install/MIPS64_OPENBSD: actually previous had an important typo fix as well: 'table' vs. 'tables', to actually disable the tables, which the generation of leads to assertion failures in the backend, for this target (and its little endian sibling) 2010-07-26 13:14 jkrell * m3-sys/cminstall/src/config-no-install/MIPS64_OPENBSD: just comments/whitespace 2010-07-26 13:03 jkrell * m3-sys/m3cc/src/platforms.quake: remove duplicate PPC64_DARWIN, and add version '6' to the end of it 2010-07-26 12:34 jkrell * m3-libs/m3core/src/: m3makefile, thread.quake, thread/m3makefile: Tweak the determination of user threads vs. pthreads. The logic is: NT, Win32, Mingw, Cygwin => Win32 FreeBSD4 (really, 4, not I386_FREEBSD), OpenBSD => user threads -DNOPTHREAD => user threads else => pthreads There is no longer a list of platforms, but one can easily add it here, using ({"plat1", "plat2"} contains TARGET) or such. As well, the config files should probably say, e.g.: ThreadLibrary = "user" or PosixUserThreads = TRUE Really, in the config files. Though src/m3makefile might warn/error for known not to work things like user threads on NT for example. 2010-07-26 12:31 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: tweak the OpenBSD fix (resolving diffs across my machines) 2010-07-26 12:12 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: Makefile, context.c: restore OpenBSD/powerpc to working 2010-07-26 11:55 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: Stop using -static. It breaks pthreads. Pthreads appear to have other (not debugged) problems so I'm not using them anyway, but what I found just makes me more nervous about -static. The reason -static was used here is that OpenBSD is apparently aggressive about breaking things from release to release. In particular, like, libc.so gets renamed every time 2010-07-26 11:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadFreeBSD.c: add a comment explaining what I believe is a true deficiency of this code: it scans the entire stack, not just the part starting at the current stack pointer 2010-07-26 11:51 jkrell * m3-libs/m3core/src/thread/PTHREAD/test_interix.c: add comment to the top explaining the file 2010-07-26 11:50 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadOpenBSD.c, ThreadPThreadC.c, m3makefile: Hypothetical fixes for OpenBSD to use pthreads. It compiles and links, but then I get assertion failures in RTCollector.m3. Not going to debug it for now, for a while. 2010-07-26 08:34 jkrell * m3-libs/m3core/src/: m3makefile, platforms.quake: remove platforms lists -- the data comes from each platform's config file now 2010-07-26 08:24 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadOpenBSD.c: let's revisit pthreads on OpenBSD 2010-07-26 06:40 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: Makefile, config.c, context.c, context.h, context_mips64.s, tcontext.c: adapt to MIPS64EL_OPENBSD (Gdium laptop, Loongson processor) 2010-07-25 11:52 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: Makefile, config.c, tcontext.c: bring back deleted files 2010-07-24 14:33 jkrell * m3-sys/m3cc/gcc/gcc/tree-ssa-forwprop.c: tree-ssa-forwprop.c: In function `forward_propagate_into_cond': tree-ssa-forwprop.c:362: warning: `name' might be used uninitialized in this function 2010-07-24 14:27 jkrell * m3-sys/m3tests/src/m3makefile: maybe fix flags on this file? (no diff, I had an at sign in ls -l)) 2010-07-24 14:16 jkrell * m3-libs/m3core/src/m3core.h, m3-libs/m3core/src/runtime/POSIX/RTSignalC.c, m3-libs/m3core/src/runtime/common/RTProcessC.c, m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c, m3-libs/m3core/src/unix/Common/m3makefile, m3-libs/m3core/src/unix/Common/context/m3makefile, m3-libs/m3core/src/unix/Common/context/setjmp/context.c, m3-libs/m3core/src/unix/Common/context/setjmp/context.h, m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile, m3-sys/cminstall/src/config-no-install/OpenBSD.common: restore jmpbuf munging for OpenBSD/i386, from 5.8.6 release There is code here for other platforms but it isn't used. There is code here for other OpenBSD platforms, but isn't used currectly. It might be good to smush the unix/setjmp directory into thread/POSIX/openbsd_context.[ch]. It *is* in a sense "unix", because it adheres to the Posix make/get/set/swapcontext functions, except I rename them and the header. 2010-07-23 19:41 jkrell * m3-sys/cm3/test/src/t.m3: put back since Olaf disabled the xml quoting 2010-07-23 19:39 jkrell * m3-libs/patternmatching/tests/tests.input: put back since Olaf removed broken xml quoting 2010-07-23 18:14 wagner * m3-libs/sysutils/src/FSUtils.m3: add OSError arguments to exception text 2010-07-23 18:13 wagner * m3-sys/m3tests/: PkgTags, src/e0/e026/stdout.build, src/r0/r004/stderr.pgm: merge some fixes from release branch 2010-07-23 16:08 wagner * scripts/pkgmap.sh: disabling non-working quote_xml for a while as in the release branch 2010-07-23 07:27 jkrell * m3-libs/patternmatching/tests/tests.input: Double backslash causing \x8 to appear in output. Comment out this case. (It works fine at the console, but not within Hudson.) 2010-07-23 07:15 jkrell * m3-libs/patternmatching/tests/src/m3makefile: standalone 2010-07-23 07:10 jkrell * m3-sys/cm3/test/src/m3makefile: build standalone 2010-07-23 07:04 jkrell * m3-sys/cm3/test/src/t.m3: Backward slashes confuse the test harness, so print them as tildes instead. 2010-07-22 21:24 jkrell * m3-sys/m3cc/src/m3makefile: experiment that only affects SPARC32_LINUX 2010-07-22 15:54 jkrell * m3-sys/m3cc/gcc/gcc/ipa-struct-reorg.c: http://hudson.modula3.com:8080/job/cm3-current-m3cc-I386_DARWIN/2/consoleFull ipa-struct-reorg.c:3540: warning: 'i' may be used uninitialized in this function 2010-07-22 15:52 jkrell * m3-sys/m3cc/gcc/gcc/tree-ssa-structalias.c: http://hudson.modula3.com:8080/job/cm3-current-m3cc-I386_DARWIN/2/consoleFull tree-ssa-structalias.c:4811: warning: 'j' may be used uninitialized in this function 2010-07-22 15:50 jkrell * m3-sys/m3cc/gcc/gcc/ebitmap.c: http://hudson.modula3.com:8080/job/cm3-current-m3cc-I386_DARWIN/2/consoleFull ebitmap.c: In function 'ebitmap_last_set_bit': ebitmap.c:89: warning: 'ebi.ptr' may be used uninitialized in this function ebitmap.c:89: warning: 'ebi.bit_num' may be used uninitialized in this function ebitmap.c:89: warning: 'ebi.eltnum' may be used uninitialized in this function ebitmap.c:89: warning: 'ebi.word' may be used uninitialized in this function ebitmap.h:124: warning: 'ourn' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_ior_into': ebitmap.c:549: warning: 'i' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_ior': ebitmap.c:673: warning: 'i' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_and_compl': ebitmap.c:871: warning: 'i' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_and_into': ebitmap.c:420: warning: 'i' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_and': ebitmap.c:474: warning: 'i' may be used uninitialized in this function ebitmap.c: In function 'ebitmap_and_compl_into': ebitmap.c:791: warning: 'i' may be used uninitialized in this function 2010-07-22 15:47 jkrell * m3-sys/m3cc/gcc/gcc/dse.c: http://hudson.modula3.com:8080/job/cm3-current-m3cc-I386_DARWIN/2/consoleFull ../../gcc/gcc/dse.c:2766: warning: 'i' may be used uninitialized in this function 2010-07-22 14:59 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: Grain computation seems like a poorly implemented thing. I'm hoping we can replace it with something sysconf(?) or clock_getres. Experiments with clock_getres suggest no. It is often much larger than grain. Though it was close on Alpha/OSF I think. In the meantime: Historically we just computed grain once and accepted that value. Per the historical comment, that seemed not great. I changed it to loop until 2 or 3 grains were computed identically. I see this hang sometimes. Though seemingly only in slightly unusual situations like a cross build or Alpha/OSF or in a debugger. Anyway, let's try a different variation: Compute it a few times, and take the smallest value we find. I've tried up to 5 and it still varies from run to run on Alpha/OSF. So go down to just 3 since I can't win, and every computation takes time -- waiting for the time to progress. This still seems better than the historical behavior of one computation that might go very awry, and has the advantage over the replacement I had put in, which potentially could loop forever -- if grain was larger than scheduling interval, though nobody has reported that. 2010-07-22 14:01 jkrell * scripts/regression/: defs.sh: try repair missing config files 2010-07-22 13:51 jkrell * scripts/install-cm3-compiler.sh: fix insalling of config files, will require manual repair of Hudson nodes..but not, I should instead copy this code elsewhere to where Hudson will run it 2010-07-21 20:39 wagner * scripts/: version, version.quake: fix version number on trunk for 5.9 development 2010-07-21 15:58 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF, scripts/python/pylib.py: remove -DM3_OSF1_V4 now that m3core.h figures it out 2010-07-21 15:54 jkrell * scripts/install-cm3-compiler.sh: mkdir more 2010-07-21 15:53 jkrell * scripts/install-cm3-compiler.sh: upgrade config files when upgrading compiler 2010-07-21 15:35 jkrell * m3-ui/: PEX/src/m3makefile, ui/src/xvbt/m3makefile: undo: call configure_system_libs unconditionally, fix should be central, and code is already written correct-seeming 2010-07-21 15:29 jkrell * m3-ui/: PEX/src/m3makefile, ui/src/xvbt/m3makefile: only call configure_system_libs if it is defined (This is showing up in Hudson: e.g. http://hudson.modula3.com:8080/job/cm3-current-test-all-pkgs-SOLgnu 2010-07-21 15:26 jkrell * m3-sys/cminstall/src/config-no-install/SPARC.common: add -m32 to try to fix SPARC32_LINUX, add -funwind-tables in anticipation of libunwind, comment that -gstabs+ is only missing because we are chronically out of diskspace on the Hudson node (lame) 2010-07-21 12:55 jkrell * m3-libs/libm3/src/: m3makefile, platforms.quake: Eliminate extra platform lists now that 5.8.6 has shipped and its config files are the baseline. 2010-07-21 12:48 jkrell * m3-libs/m3core/src/unix/m3makefile: whitespace 2010-07-21 12:47 jkrell * m3-libs/m3core/src/unix/m3makefile: use TARGET_OS to shrink tables -- requires config file change from release 5.8.6 2010-07-21 12:38 jkrell * m3-libs/m3core/src/unix/m3makefile: oops: fix ALPHA_OSF breakage 2010-07-21 12:33 jkrell * m3-libs/m3core/src/: m3core.h, time/POSIX/DatePosixC.c, unix/m3makefile: Better perhaps for OSF/1. In particular, no longer need #ifdef M3_OSF1_V4. I #define _TIME64_T, and then I can tell if this system supports it by checking for defined(TIMEVAL64TO32) & TIMEVAL32TO64 2010-07-21 11:18 jkrell * m3-libs/m3core/src/unix/: m3makefile, Common/m3makefile, osf-1.ALPHA_OSF/Usignal.i3: trim ALPHA_OSF/Usignal.i3 down to just an exact copy of Common/Usignal.i3 plus struct_sigcontext, enough, maybe more than enough, to compile the stack walking code (do we really need such an accurate Frame exposed to the Modula-3?) 2010-07-21 11:15 jkrell * scripts/python/pylib.py: fix typo on ALPHA_OSF 2010-07-21 10:48 jkrell * m3-libs/m3core/src/unix/osf-1.ALPHA_OSF/m3makefile: edit it down 2010-07-21 10:48 jkrell * m3-libs/m3core/src/unix/osf-1.ALPHA_OSF/: Usignal.i3, m3makefile: bring back files, to try to get back setjmp-less exception handling 2010-07-21 10:28 jkrell * m3-sys/m3cc/src/m3makefile: building mips-tfile seems to fail on cross builds, like maybe the headers describing the object/symbol format aren't available? So only build it for native builds 2010-07-21 10:27 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: set TARGET_OS=OSF (other names re reasonable) 2010-07-20 14:13 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: add more X libraries so that solitaire builds (it is standalone) 2010-07-20 12:30 jkrell * scripts/python/upgrade.py: I just introduced incompatibility between current openbsd config and older m3core -- the reference to pthread_atfork won't result, so, let's consider *not* updating config files so early -- this matches I believe what Hudson/Tinderbox do and *definitely* has good arguments in favor of it. 2010-07-20 12:19 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common, m3-libs/m3core/src/runtime/common/RTProcessC.c: This should fix the hang on I386_OPENBSD. That only I'm seeing. (Hudson doesn't build enough, nobody else has reported it). It doesn't affect 5.8.6 release as that uses jmpbuf hacking for userthreads. The rewrite to use sigaltstack is new since then. RTProcessC.c: INTEGER __cdecl RTProcess__RegisterForkHandlers( ForkHandler prepare, ForkHandler parent, ForkHandler child) { >> big comment added /* FreeBSD < 6 lacks pthread_atfork. Would be good to use autoconf. * VMS lacks pthread_atfork? Would be good to use autoconf. * Win32 lacks pthread_atfork and fork. OK. * OpenBSD pthread_atfork causes us to need libpthread, and then * sigsuspend on 4.6/x86 hangs in the userthread code. * * I expect therefore cvsup is broken with user threads on these systems. * * OpenBSD we could fix by going back to jmpbuf hacking (see 5.8.6 release), * but it is nice to have portable code, and cvsup maybe is expendable (again, * only on OpenBSD). * * As well, for all Posix systems, we could implement * atfork ourselves, as long as we provide a fork() * wrapper that code uses. */ #if defined(_WIN32) \ || defined(__vms) \ || defined(__OpenBSD__) \ << this added || (defined(__FreeBSD__) && (__FreeBSD__ < 6)) return 0; #else >> add % LIBC: No pthreads, to avoid its sigsuspend that hangs. % See also RTProcess__RegisterForkHandlers. SYSTEM_LIBS{"LIBC"} = ["-lm"] 2010-07-20 11:24 jkrell * scripts/sysinfo.sh: This should fix the NT386/m3cc problem. Note however that I've churned sysinfo.sh a lot in head -- not with this commit, but earlier. 2010-07-20 10:49 jkrell * m3-db/odbc/src/m3makefile: check if configure_system_libs is defined before calling it 2010-07-19 07:05 jkrell * m3-sys/m3cc/gcc/gcc/varasm.c: ../../gcc/gcc/varasm.c: In function `const_rtx_hash_1': ../../gcc/gcc/varasm.c:3387: warning: right shift count >= width of type 2010-07-19 06:27 jkrell * m3-sys/m3cc/gcc/gcc/value-prof.c: ../../gcc/gcc/value-prof.c: In function `tree_mod_subtract': ../../gcc/gcc/value-prof.c:831: warning: `bb3' might be used uninitialized in this function 2010-07-19 06:25 jkrell * m3-sys/m3cc/src/m3makefile: use TRUE and FALSE for boolean NOACTION instead of obscure "" and "T" 2010-07-19 06:19 jkrell * m3-sys/m3cc/src/m3makefile: remove use of if defined -- these are in the previous release now; we'll see how this goes -- requiring previous release 2010-07-19 06:16 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: use the "new" quake builtins fs_lsfiles, fs_lsdirs, fs_rmrec and the old delete_file 2010-07-19 06:05 jkrell * m3-sys/m3cc/src/: clean_marker.txt, m3makefile: mechanism to let a checkin force subsequent builds to be clean: edit this clean_marker.txt file also cleanup the clean logic to just rm -rf build_dir/* 2010-07-19 03:46 jkrell * scripts/python/pylib.py: put comment in Makefile for OSF1v4 users to act on 2010-07-19 03:41 jkrell * m3-libs/m3core/src/m3core.h: should fix OpenBSD builds 2010-07-19 02:55 jkrell * www/uploaded-archives/readme.txt: document problem with 'boot' that prevents its wider use e.g. in Hudson: it provides just cm3, but that cm3 is tied somewhat to a particular m3core and cm3cg, not as much as in the past, but still (e.g. if RTHooks.i3 or M3CG.i3 change); the dependency on m3core is easy to fix, by making a library from .o files produced here anyway, the dependency on cm3cg not so much 2010-07-19 02:49 jkrell * www/uploaded-archives/readme.txt: typos 2010-07-19 02:49 jkrell * www/uploaded-archives/readme.txt: typo 2010-07-19 02:48 jkrell * www/uploaded-archives/readme.txt: Some notes I just made as to what "all", "min", and "boot" are. They should be reviewed, tested, edited, worked into the web page at: http://modula3.elegosoft.com/cm3/uploaded-archives/ 2010-07-19 01:23 jkrell * m3-sys/m3cc/: src/m3makefile, gcc/gcc/config/darwin.h: m3makefile, basically undo: Revision 1.162 always specify -build, -host, -target, for cross and native consistent but experimenta/unorthodox Usually people let config.guess do all the work for native and always for build. Default build to host, not target. Revision 1.161 Always specify -target. in native builds, always specify -build and -host. This should provide for more consistency, though is also a bit experimental and unorthodox. darwin.h, undo Revision 1.2 always support hidden aka private extern aka don't export every function This should fix PPC_DARWIN and maybe maybe others (SPARC32_LINUX). Possibly relatd, I've noticed SOLsun using sparc-sun-solaris2.10-gcc to build cm3cg, when I was hoping it'd use Sun cc. This will at least change it to plain gcc, but same thing. 2010-07-18 16:02 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: require TARGET_OS to be defined; either bootstrap from 5.8.6 release or update older config files; we'll see if this flies, hopefully, but I might not like it myself, we'll see 2010-07-18 16:00 jkrell * m3-libs/m3core/src/win32/m3makefile: copy code from cm3cfg.common for compatibility I would prefer if the config files were updated fairly early in the build and my burden was to maintain compatiblity through them, not in m3makefiles otherwise. 2010-07-18 15:52 jkrell * m3-sys/m3cc/src/gnucc.common: compat with previous release config files, could maybe just delete this OSF1v4 hack also now that Mark has added swap 2010-07-18 14:44 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: remove -lpthread again; fix flex/bison to be -L/usr/sfw/bin/lib -lfl instead of empty, but comment it out in favor of I think the more 'standard' (not optional) lex/yacc 2010-07-18 12:37 jkrell * m3-libs/m3core/src/Csupport/Common/: hand.c, old_divmod.c: move old code out, add comments to it about its "problems" 2010-07-18 12:11 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: add back set_singleton, set_member, set_ne, set_eq for my convenience attempting bootstrap with old compiler and new mecore 2010-07-18 11:20 jkrell * m3-sys/m3cc/gcc/: contrib/dg-extract-results.sh, gcc/config/sparc/gas.h, gcc/config/spu/divmodti4.c, gcc/config/spu/float_disf.c, gcc/config/spu/float_unsdisf.c, gcc/config/spu/multi3.c, gcc/config/xtensa/libgcc-xtensa.ver, libdecnumber/dconfig.h, libgcc/gstdint.h, libgcc/config/i386/t-sol2: merge with gcc 4.3.5 2010-07-18 11:12 jkrell * m3-sys/m3cc/gcc/: ChangeLog, LAST_UPDATED, MD5SUMS, Makefile.def, Makefile.in, Makefile.tpl, NEWS, config-ml.in, configure, configure.ac, INSTALL/binaries.html, INSTALL/build.html, INSTALL/configure.html, INSTALL/download.html, INSTALL/finalinstall.html, INSTALL/gfdl.html, INSTALL/index.html, INSTALL/old.html, INSTALL/prerequisites.html, INSTALL/specific.html, INSTALL/test.html, config/ChangeLog, contrib/ChangeLog, contrib/texi2pod.pl, contrib/reghunt/ChangeLog, contrib/regression/ChangeLog, fixincludes/ChangeLog, fixincludes/fixincl.x, fixincludes/inclhack.def, fixincludes/tests/base/iso/math_c99.h, gcc/BASE-VER, gcc/ChangeLog, gcc/ChangeLog-2007, gcc/DATESTAMP, gcc/Makefile.in, gcc/aclocal.m4, gcc/alias.c, gcc/alias.h, gcc/attribs.c, gcc/builtin-types.def, gcc/builtins.c, gcc/builtins.def, gcc/c-common.c, gcc/c-cppbuiltin.c, gcc/c-decl.c, gcc/c-format.c, gcc/c-lex.c, gcc/c-parser.c, gcc/c-pch.c, gcc/c-pretty-print.c, gcc/c-typeck.c, gcc/calls.c, gcc/cfgrtl.c, gcc/cgraph.c, gcc/cgraph.h, gcc/cgraphunit.c, gcc/collect2.c, gcc/combine-stack-adj.c, gcc/combine.c, gcc/config.gcc, gcc/configure, gcc/configure.ac, gcc/convert.c, gcc/cse.c, gcc/dbxout.c, gcc/df-scan.c, gcc/dfp.c, gcc/dojump.c, gcc/dse.c, gcc/dwarf2.h, gcc/dwarf2out.c, gcc/emit-rtl.c, gcc/emutls.c, gcc/except.c, gcc/exec-tool.in, gcc/explow.c, gcc/expmed.c, gcc/expr.c, gcc/final.c, gcc/flags.h, gcc/fold-const.c, gcc/function.c, gcc/fwprop.c, gcc/gcov-io.h, gcc/gcse.c, gcc/gengtype-lex.c, gcc/gengtype.c, gcc/gimplify.c, gcc/global.c, gcc/gthr-posix.h, gcc/gthr-posix95.h, gcc/haifa-sched.c, gcc/ifcvt.c, gcc/ipa-inline.c, gcc/ipa-utils.h, gcc/jump.c, gcc/langhooks-def.h, gcc/langhooks.c, gcc/langhooks.h, gcc/libgcc2.c, gcc/longlong.h, gcc/loop-invariant.c, gcc/mips-tfile.c, gcc/omp-low.c, gcc/optc-gen.awk, gcc/opts.c, gcc/params.def, gcc/passes.c, gcc/predict.c, gcc/pretty-print.c, gcc/real.c, gcc/real.h, gcc/recog.c, gcc/recog.h, gcc/regmove.c, gcc/regrename.c, gcc/reload.c, gcc/resource.c, gcc/rtl.h, gcc/rtlanal.c, gcc/sched-deps.c, gcc/sched-int.h, gcc/sched-rgn.c, gcc/simplify-rtx.c, gcc/stmt.c, gcc/stor-layout.c, gcc/target-def.h, gcc/target.h, gcc/targhooks.c, gcc/targhooks.h, gcc/toplev.c, gcc/tree-cfg.c, gcc/tree-chrec.c, gcc/tree-chrec.h, gcc/tree-complex.c, gcc/tree-dfa.c, gcc/tree-flow-inline.h, gcc/tree-flow.h, gcc/tree-inline.c, gcc/tree-loop-linear.c, gcc/tree-nested.c, gcc/tree-nrv.c, gcc/tree-outof-ssa.c, gcc/tree-parloops.c, gcc/tree-predcom.c, gcc/tree-scalar-evolution.c, gcc/tree-scalar-evolution.h, gcc/tree-sra.c, gcc/tree-ssa-address.c, gcc/tree-ssa-alias-warnings.c, gcc/tree-ssa-alias.c, gcc/tree-ssa-ccp.c, gcc/tree-ssa-dse.c, gcc/tree-ssa-forwprop.c, gcc/tree-ssa-loop-im.c, gcc/tree-ssa-loop-ivopts.c, gcc/tree-ssa-loop-niter.c, gcc/tree-ssa-loop-prefetch.c, gcc/tree-ssa-operands.c, gcc/tree-ssa-phiopt.c, gcc/tree-ssa-pre.c, gcc/tree-ssa-sccvn.c, gcc/tree-ssa-structalias.c, gcc/tree-ssa.c, gcc/tree-tailcall.c, gcc/tree-vect-analyze.c, gcc/tree-vect-generic.c, gcc/tree-vect-transform.c, gcc/tree-vn.c, gcc/tree-vrp.c, gcc/tree.c, gcc/tree.h, gcc/unwind-dw2.c, gcc/unwind-generic.h, gcc/unwind-pe.h, gcc/varasm.c, gcc/vec.h, gcc/config/dfp-bit.c, gcc/config/freebsd.h, gcc/config/alpha/alpha.c, gcc/config/alpha/alpha.md, gcc/config/alpha/elf.h, gcc/config/alpha/predicates.md, gcc/config/alpha/sync.md, gcc/config/arm/arm.c, gcc/config/arm/arm.md, gcc/config/arm/iwmmxt.md, gcc/config/avr/avr-protos.h, gcc/config/avr/avr.c, gcc/config/avr/avr.h, gcc/config/avr/avr.md, gcc/config/cris/cris.c, gcc/config/cris/cris.h, gcc/config/cris/cris.md, gcc/config/i386/ammintrin.h, gcc/config/i386/bmmintrin.h, gcc/config/i386/driver-i386.c, gcc/config/i386/emmintrin.h, gcc/config/i386/i386.c, gcc/config/i386/i386.h, gcc/config/i386/i386.md, gcc/config/i386/i386.opt, gcc/config/i386/linux.h, gcc/config/i386/mm3dnow.h, gcc/config/i386/mmintrin-common.h, gcc/config/i386/mmintrin.h, gcc/config/i386/mmx.md, gcc/config/i386/pmmintrin.h, gcc/config/i386/predicates.md, gcc/config/i386/smmintrin.h, gcc/config/i386/sse.md, gcc/config/i386/sync.md, gcc/config/i386/tmmintrin.h, gcc/config/i386/winnt-cxx.c, gcc/config/i386/winnt.c, gcc/config/i386/x86-64.h, gcc/config/i386/xmmintrin.h, gcc/config/ia64/div.md, gcc/config/ia64/ia64.c, gcc/config/ia64/ia64.md, gcc/config/m68k/t-rtems, gcc/config/mips/constraints.md, gcc/config/mips/iris6.h, gcc/config/mips/irix-crti.asm, gcc/config/mips/mips.c, gcc/config/mips/mips.md, gcc/config/mips/mips.opt, gcc/config/mips/sde.h, gcc/config/mn10300/mn10300.c, gcc/config/pa/fptr.c, gcc/config/pa/hpux-unwind.h, gcc/config/pa/linux-unwind.h, gcc/config/pa/milli64.S, gcc/config/pa/pa-hpux11.h, gcc/config/pa/pa.c, gcc/config/pa/pa.md, gcc/config/pa/pa64-hpux.h, gcc/config/pa/t-hpux-shlib, gcc/config/pdp11/pdp11.c, gcc/config/rs6000/altivec.md, gcc/config/rs6000/driver-rs6000.c, gcc/config/rs6000/predicates.md, gcc/config/rs6000/rs6000-c.c, gcc/config/rs6000/rs6000-protos.h, gcc/config/rs6000/rs6000.c, gcc/config/rs6000/rs6000.md, gcc/config/s390/s390.c, gcc/config/s390/s390.h, gcc/config/s390/tpf.h, gcc/config/sh/predicates.md, gcc/config/sh/sh.c, gcc/config/sh/sh.h, gcc/config/sh/sh.md, gcc/config/sh/t-sh, gcc/config/soft-fp/double.h, gcc/config/soft-fp/fixdfti.c, gcc/config/soft-fp/floatuntisf.c, gcc/config/sparc/linux.h, gcc/config/sparc/linux64.h, gcc/config/sparc/predicates.md, gcc/config/sparc/sparc-protos.h, gcc/config/sparc/sparc.c, gcc/config/sparc/sparc.h, gcc/config/sparc/sparc.md, gcc/config/sparc/sysv4.h, gcc/config/spu/spu-c.c, gcc/config/spu/spu-elf.h, gcc/config/spu/spu-protos.h, gcc/config/spu/spu.c, gcc/config/spu/spu.h, gcc/config/spu/spu.md, gcc/config/spu/spu.opt, gcc/config/spu/spu_mfcio.h, gcc/config/spu/t-spu-elf, gcc/config/stormy16/stormy16.c, gcc/config/xtensa/t-linux, gcc/config/xtensa/xtensa.md, gcc/doc/cpp.1, gcc/doc/cpp.info, gcc/doc/cppinternals.info, gcc/doc/extend.texi, gcc/doc/fsf-funding.7, gcc/doc/g++.1, gcc/doc/gc-analyze.1, gcc/doc/gcc.1, gcc/doc/gcc.info, gcc/doc/gcc.texi, gcc/doc/gccinstall.info, gcc/doc/gccint.info, gcc/doc/gccint.texi, gcc/doc/gcj-dbtool.1, gcc/doc/gcj.1, gcc/doc/gcj.info, gcc/doc/gcov.1, gcc/doc/gfdl.7, gcc/doc/gfortran.1, gcc/doc/gij.1, gcc/doc/gpl.7, gcc/doc/grmic.1, gcc/doc/gty.texi, gcc/doc/implement-c.texi, gcc/doc/install.texi, gcc/doc/install.texi2html, gcc/doc/invoke.texi, gcc/doc/jcf-dump.1, gcc/doc/jv-convert.1, gcc/doc/md.texi, gcc/doc/passes.texi, gcc/doc/rtl.texi, gcc/doc/sourcebuild.texi, gcc/doc/include/gpl_v3.texi, gcc/doc/include/texinfo.tex, gcc/treelang/ChangeLog, include/ChangeLog, libcpp/ChangeLog, libcpp/files.c, libdecnumber/ChangeLog, libdecnumber/Makefile.in, libdecnumber/decBasic.c, libdecnumber/decCommon.c, libdecnumber/decContext.c, libdecnumber/decDouble.h, libdecnumber/decExcept.c, libdecnumber/decExcept.h, libdecnumber/decLibrary.c, libdecnumber/decNumber.c, libdecnumber/decNumberLocal.h, libdecnumber/decQuad.h, libdecnumber/decRound.c, libdecnumber/decSingle.h, libdecnumber/bid/host-ieee128.c, libdecnumber/dpd/decimal128.c, libdecnumber/dpd/decimal128Local.h, libdecnumber/dpd/decimal32.c, libdecnumber/dpd/decimal64.c, libgcc/ChangeLog, libgcc/Makefile.in, libgcc/config.host, libgcc/configure, libgcc/configure.ac, libgcc/config/libbid/ChangeLog, libiberty/ChangeLog, libiberty/configure, libiberty/configure.ac, maintainer-scripts/ChangeLog, maintainer-scripts/gcc_release: merge with gcc 4.3.5 2010-07-18 09:56 jkrell * m3-sys/m3cc/gcc/gcc/dbxout.c: remove code that was #if 0'ed out September 2008 2010-07-18 09:49 jkrell * m3-sys/m3cc/gcc/gcc/tree.c: change copyright comment back to match 4.3.0 and 4.3.5 2010-07-18 09:47 jkrell * m3-sys/m3cc/gcc/gcc/tree-chrec.h: initialize with generic { 0 } instead of 0 (this is a line that we changed anyway 2010-07-18 08:40 jkrell * m3-sys/m3cc/gcc/gcc/config/: exec-stack.h, host-openbsd.c, openbsd-libpthread.h, x-openbsd, i386/openbsd64.h, rs6000/openbsd.h: oops: also add the new files needed for OpenBSD, that we were previously copying from the patches directory 2010-07-18 08:20 jkrell * m3-sys/m3cc/: gcc/gcc/config.gcc, gcc/gcc/config.host, gcc/gcc/config/openbsd.h, gcc/gcc/config/t-openbsd, gcc/gcc/config/i386/openbsd.h, gcc/gcc/config/i386/openbsdelf.h, gcc/gcc/config/m68k/openbsd.h, gcc/gcc/config/mips/openbsd.h, gcc/gcc/config/vax/openbsd.h, src/m3makefile: Commit the OpenBSD patches instead of applying them in the build. Note that I doubt change to gcc/gcc/config/openbsd.h is needed, it looks specific to using the C front ends (cc1, etc.) or the "driver" (gcc). 2010-07-18 05:43 jkrell * scripts/python/: pylib.py, make-dist.py: mips-tfile for make-dist ALPHA_OSF support, and consolidate mklib support, not all tested as file copy to Alpha/OSF difficult 2010-07-18 05:04 jkrell * m3-tools/pp/src/m3makefile: fix 2010-07-18 04:58 jkrell * m3-tools/pp/src/lex-yacc/Makefile: actually use yacc, not merely bison -y 2010-07-18 04:56 jkrell * m3-tools/pp/src/m3makefile: on systems that have both lex/yacc and flex/bison, favor flex/bison instead of lex/yacc, instead of the opposite 2010-07-18 04:44 jkrell * m3-tools/pp/src/: flex-bison/lex.yy.c, lex-yacc/lex.yy.c, lex-yacc-HPPA/lex.yy.c: remove $Header and $Revision 2010-07-18 04:34 jkrell * m3-tools/pp/src/: Parse.yacc, flex-bison/lex.yy.c, flex-bison/y.tab.c, lex-yacc/lex.yy.c, lex-yacc/y.tab.c, lex-yacc-HPPA/lex.yy.c, lex-yacc-HPPA/y.tab.c: cleanup: always #include stdlib.h stdio.h stddef.h unistd.h always use size_t don't redefine NULL This should fix a problem on OSF1v4 (incompatible declarations of malloc/free) and is fine on all systems for some years now. Strongly consider running lex/flex/yacc/bison and not checking in the output! 2010-07-17 15:51 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: fix/invert M3_PORTABLE_RUN_PATH 2010-07-17 15:50 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: fix the 'cleanup' part 2010-07-17 15:49 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: non_shared doesn't work with pthread (failure to link); call_shared is default, so not needed; cleanup 2010-07-17 13:35 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: Honor $M3_PORTABLE_RUN_PATH like gnuld.common: if it is set, don't use LIB_USE, since that is specific to the machine building the files. Instead, use nothing at all, consumer will need to set LD_LIBRARY_PATH. Note that ALPHA_OSF does support -rpath ${ENVVAR}, so a good solution would be to rename foo to foo.exe (or something) and drop in a constant shell script foo. The shell script foo "finds itself", like configure: if $0 is a full path, that is it, if it is relative, that is it relative to current working directory, else search $PATH then shell script should set $ORIGIN to its own directory or and we'd use $ORIGIN/../lib and shell script would exec foo.exe. Todo later. Maybe. Probably not. 2010-07-17 13:09 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: on OSF1v4, use -Wl,-B,symbolic instead of -B symbolic; it should work, but oh well 2010-07-17 12:37 jkrell * m3-sys/m3cc/src/gnucc.common: acceptable hack for OSF1v4: omit -g because then the files are so large such as to exhaust virtual memory/swap linking cm3cg 2010-07-16 14:34 jkrell * m3-sys/m3cc/src/platforms.quake: need to say osf4 2010-07-16 14:03 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: oops: ALPHA_OSF doesn't share as much code (though neither do Solaris.common or Darwin.common): forgot to call configure_c_compiler 2010-07-16 13:28 jkrell * scripts/python/pylib.py: remove newlines from uname output 2010-07-16 13:23 jkrell * scripts/python/: pylib.py: fix regexp around archive name having uname -sr 2010-07-16 13:22 jkrell * scripts/python/make-dist.py: environment variables must be strings 2010-07-16 13:20 jkrell * scripts/python/pylib.py: Linux2.4.xxx => Linux2.4 Linux2.6.xxx => empty Linux 2.6 is I believe overwhelmingly in use 2.4 remains for small embedded systems like my router, and notably lacks NPTL (good pthreads) 2010-07-16 13:18 jkrell * scripts/python/pylib.py: 'SunOS' => 'Solaris' in archive names, though SunOS is shorter 2010-07-16 13:17 jkrell * scripts/python/pylib.py: somewhat experimental: insert `uname -sr` in archive names, with some transforms to make it shorter: Linux 2.6.1231313 => Linux2.6 FreeBSD 1.23-release => FreeBSD1.23 -.+$ => empty actually spaces removed only investigated recently uname -sr on OSF, Darwin, FreeBSD, OpenBSD Darwin should probably be translated to MacOSX version 2010-07-16 13:04 jkrell * scripts/python/: make-dist.py, pylib.py: more support for Visual C++ 10.0 2010-07-16 13:02 jkrell * scripts/python/make-dist.py: keep out hardcoded runpaths, like make-dist.sh, this is setting and environment variable that config/gnuld.common checks 2010-07-16 13:01 jkrell * scripts/make-dist.sh: comment only, about runpath 2010-07-16 12:30 jkrell * m3-sys/m3cc/src/platforms.quake: let's trye alpha-dec-osf instead of alpha-dec-osf5.1, see how that goes 2010-07-16 12:18 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: delay setting SYSTEM_CC until configure_c_compiler(), so that we can call IsTargetOSF1v4; another solution would be to move the two lines to the end of the file 2010-07-16 12:11 jkrell * scripts/install-config.sh: more sh for Tru64 4.0 work, while I wait for Python to compile Note this is different than install-config.py. It is based on make-bin-dist.sh. It makes config for ship, not development. ie. actual copies of the files, not the stub that tries to get back to the source tree. 2010-07-16 12:01 jkrell * scripts/boot2.sh: move action to start, as the sh scripts require? 2010-07-15 14:45 jkrell * m3-sys/cminstall/src/config-no-install/: FreeBSD.common, I386_FREEBSD: more conservative linking options on FreeBSD4: no -z now no -B symbolic and then no -pthread or -lc: shared libraries I guess aren't supposed to choose libc or libc_r but maybe leave it to the executable? And we don't need libc_r because we are using user threads? This fixes the crash I was seeing. FreeBSD >4 should be unaffected. 2010-07-15 13:58 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: use fgrep instead of grep 2010-07-15 13:28 jkrell * scripts/sysinfo.sh: I doubt the stars are needed at the ends of plain parameterless uname output (checked at least FreeBSD 4.11) 2010-07-15 13:26 jkrell * scripts/: boot2.sh, sysinfo.sh: OSF/1 support, and Python failed to build here so far (minor sounding problem) so port to sh 2010-07-15 11:52 jkrell * scripts/python/pylib.py: comment about OSF1v4, actually maybe it is worth having I386_FREEBSD4, I386_FREEBSD5 (6?), ALPHA_OSF4, ALPHA_OSF5, that does kind of mimic GNU configuration and would make some stuff work better, including for example, cross building boot packages 2010-07-15 11:50 jkrell * scripts/python/pylib.py: -lrt -lm -pthread for ALPHA_OSF, similar to the config file (the config file does more) 2010-07-15 11:44 jkrell * m3-libs/m3core/src/m3core.h: define _POSIX_PII_SOCKET on OSF1v4 to get soclen_t typedef (that's probablly why I added #define _XOPEN_SOURCE 500; add some other comments 2010-07-15 11:35 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: didn't actually need -std here, the problem was #define _XOPEN_SOURCE 2010-07-15 11:29 jkrell * m3-libs/libm3/src/os/POSIX/FSPosixC.c: cc: Warning: FSPosixC.c, line 35: In this statement, & before array "t" is ignored. (addrarray) ZeroMemory(&t, sizeof(t)); ----^ says the OSF1v4 compiler; in this case the array-ness is plain to see so we can safely portably remove the ampersand, and it makes no difference. Thank you compiler.. 2010-07-15 11:26 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: cc: Warning: ThreadPThreadC.c, line 170: In this statement, & before array "jb" is ignored. (addrarray) p(&jb, ((char *)&jb) + sizeof(jb)); ------^ cc: Warning: ThreadPThreadC.c, line 170: In this statement, & before array "jb" is ignored. (addrarray) p(&jb, ((char *)&jb) + sizeof(jb)); --------------------^ jb may or may not be an array, & is necessary, wrap it in struct. 2010-07-15 11:14 jkrell * m3-libs/m3core/src/m3core.h: don't define _XOPEN_SOURCE or _TIME64_T if M3_OSF1_V4 is defined; _XOPEN_SOURCE breaks pthread.h, even though the comments in pthread.h say it shouldn't; I don't remember why I added _XOPEN_SOURCE in the first place, would have to investigate on v5; _TIME64_T is not available on v4; on the hypothetical world where OSF/1 v4 and v5 mattered, we'd want to do builds on each, rename the archives, but not likely invent two different targets, since they match plenty close enough as far as I know (I should double check jmpbuf) 2010-07-15 11:12 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: add -DM3_OSF1_V4 to SYSTEM_CC if it seems we are targeting OSF/1 v4 (yeah yeah, what about versions 1-3?; get me access to such a machine and I'll deal with it) 2010-07-15 11:08 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: fix copy/pasto (but still worked ok for all normal systems) 2010-07-15 11:07 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: comments explaining why knowing precise target doesn't work 2010-07-15 11:06 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: I forgot to add IsTargetOSF1v4 function (which is only approx, i.e. works for native builds only) 2010-07-15 11:03 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: add IsHostOSF1v4 to be used shortly, uname -sr based OSF1 v4 has something funny with #define _POSIX_SOURCE and such, I can get it to compile, but I don't know if it breaks v5. OSF1 doesn't have 64bit time_t available native + IsHostOSF1v4 will => #define M3_OSF1_V4 and m3core.h will check that refine uname-based IsHostFreeBSD4 just one uname and one fgrep add InternalTargetCanRunOnHost that's been bugging me lots can run lots, though missing here is if potentially biarch systems are actually biarch 2010-07-15 09:20 jkrell * m3-libs/m3core/src/m3core.h: whitespace change for old compiler: bash-3.2$ cc -g -c -o CerrnoC.o CerrnoC.c cc: Warning: m3core.h, line 31: # not in column 1 is ignored, skipping to end of line. (ignoretokens) #define M3_DLL_IMPORT --^ 2010-07-15 08:52 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: add -std to cc 2010-07-15 06:02 wagner * www/news.html (release_branch_cm3_5_8): more release additions 2010-07-14 14:41 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: put back -lpthread, but I don't think this is the problem 2010-07-14 14:39 jkrell * scripts/python/pylib.py: put back -lpthread on Solaris, at least while looking for problem 2010-07-14 14:16 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: oops, the initial thread is already allocated, that's what words == 0 indicates: don't allocate a stack 2010-07-14 13:55 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: previous comment flubbed: really, don't use -pthread on FreeBSD4 It seems SYSTEM_LIBS{"LIBC"} is read before configure_linker runs, so instead of changing it there, we set it to just -lm much earlier, and then if we wanted -pthread, add it to SYSTEM_LD. 2010-07-14 13:54 jkrell * m3-sys/cminstall/src/config-no-install/I386_FREEBSD: I386_FREEBSD 2010-07-14 13:50 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: target equivalence, though this didn't solve the problem I was looking at, I think system_libs{libc} is read before I change it 2010-07-14 13:23 jkrell * m3-libs/m3core/src/thread.quake: really now, use user threads on native FreeBSD4 builds (really, FreeBSD version 4, not 'FreeBSD4' meaning 'I386_FREEBSD') 2010-07-14 13:14 jkrell * m3-libs/m3core/src/thread.quake, m3-sys/cminstall/src/config-no-install/I386_FREEBSD: Always use user threads on FreeBSD4 and remove -pthread from SYSTEM_LIBC{"LIBC"} Note that this detection only works for native builds. Cross builds still require manual edits. Perhaps environments should be supported, or I should fix my Python scripts to pass along extra parameters. 2010-07-14 13:06 jkrell * m3-sys/cminstall/src/config-no-install/: I386_FREEBSD, cm3cfg.common: switch to a uname-based approach This is probably much faster, but also in particular, I want to make the pthread/userthread choice based on it, and remove -pthread from LIBC based on it, since that causes a bunch of link errors 2010-07-14 12:43 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: missing call to configure_linker 2010-07-14 12:34 jkrell * m3-sys/cminstall/src/config-no-install/: FreeBSD.common, FreeBSD4, I386_FREEBSD, gnuld.common: FreeBSD4: configure compiler/linker to adjust to older versions: older gcc doesn't like -m32, keep -m32 out if -m32 gives expected error Safe to always omit -m32? older gcc misinterprets -Bsymbolic, use -Wl,-Bsymbolic -Bsymbolic inhibits -lc, add -lc only upon expected link error Safe to always add -lc? Safe to omit -Bsymbolic, but it is a nice optimization. On the other hand, this optimization is costing a lot, extra compile/link for every link of a shared library. Alternatives include: gcc -v | fgrep 2.95 uname -r | grep ^4 do nothing, let users (Mika) edit the config files do similar to what we have, but less often 2010-07-14 11:22 jkrell * m3-libs/libm3/src/: m3makefile, types/LongrealType.i3, types/RealType.i3, types/m3makefile: restore some source compability for Mika? 2010-07-14 10:46 jkrell * scripts/python/pylib.py: better: there is an autoconf macro 2010-07-14 10:44 jkrell * scripts/python/pylib.py: add a url (or search the web) 2010-07-14 10:43 jkrell * scripts/python/pylib.py: some -pthread vs. -lpthread stuff (autoconf??) 2010-07-14 10:06 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: partial check for integer overflow, should do better in general ('integer overflow is the new buffer overflow?') 2010-07-14 10:05 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: let's use INTEGER instead of WORD_T, the point wasn't so much to reclaim one bit, but 30 or so 2010-07-14 10:03 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: stack size in words is CARDINAL, not int: make it match the Modula-3 declaration, and thereby allow even larger stacks on 64bit, user threads 2010-07-14 09:59 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: allow for 2GB page size perhaps and > 2GB stack, on 64 bit, user threads 2010-07-14 09:45 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: shorten line that was over 240 characters long 2010-07-14 09:37 jkrell * m3-sys/cminstall/src/config-no-install/: FreeBSD.common, HPUX.common, Linux.common, NetBSD.common, OpenBSD.common, Solaris.common, Unix.common, VMS.common: some -lpthread, -pthread, SYSTEM_LIBS cleanup Mainly just to reduce some duplication. This area needs more thought, design, work, testing, but this is probably ok. Some of the flaws include: - Unix.common isn't really common to 'Unix', but Linux and *BSD, at least regards to SYSTEM_LIBS - There remains some need for user-editing/configuration/autoconf/install. - Perhaps by moving some of the "less meant to be configured" parts into Modula-3 code. 2010-07-14 09:07 jkrell * m3-sys/cminstall/src/config-no-install/: FreeBSD.common, Linux.common, NetBSD.common, OpenBSD.common: -lpthread => -pthread tested quickly minimally on Linux, OpenBSD, not tested on NetBSD FreeBSD.common is just a comment change The LIBC line in Unix.common is probably dead now..could be changed to -pthread. 2010-07-14 08:53 jkrell * scripts/python/pylib.py, m3-sys/cminstall/src/config-no-install/FreeBSD.common: somewhat experimental: -pthread instead of -lpthread Really I'd like to try this across the board, but just FreeBSD for now. -lpthread failed on FreeBSD 4 where -pthread worked, hopefully -pthread works on all future FreeBSD also. (probably, at least, it is a gcc thing, and usable on all Linux, *BSD) 2010-07-14 08:44 jkrell * m3-libs/m3core/src/unix/Common/Uin.c: fixes for FreeBSD 4: need to include ntohl might be macros, so can't use M3WRAP1 2010-07-13 13:30 jkrell * m3-libs/m3core/src/runtime/common/RTProcessC.c: really no diff here, but I meant: pthread_atfork added in FreeBSD 6 (this would be a good use of autoconf) 2010-07-13 13:30 jkrell * m3-libs/m3core/src/runtime/common/RTProcessC.c: pthread_atfork added in FreeBSD 5 (this would be a good use of autoconf) 2010-07-13 13:22 jkrell * m3-libs/m3core/src/runtime/common/RTProcessC.c: parens and word-wrap 2010-07-13 13:18 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: try sigaltstack instead of make/get/set/swapcontext on FreeBSD <= 4 2010-07-13 13:14 jkrell * m3-libs/m3core/src/runtime/common/RTProcessC.c: no pthread_atfork on FreeBSD <= 4 2010-07-13 12:34 jkrell * m3-sys/m3cc/gcc/: configure.ac, configure: experimental: remove freebsd/gmp special case; this is deliberately two separate commits to perhaps manage the timestamps 2010-07-12 19:43 wagner * www/: download.html, news.html (release_branch_cm3_5_8): final release updates 2010-07-12 12:23 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: update add_stmt function in minor way to match gcc 4.3/4.5 function of same name in c-decl.c (much of the Modula-3 backend is clearly a clone of the C frontend) 2010-07-12 11:37 jkrell * m3-sys/m3tests/src/m3makefile: update comments to indicate it also occurs on I386_DARWIN which is fortunate because at least I have a fractionally decent editor there (vs. zero everywhere else, except NT) and my SOLgnu machine is very slow probably all 32bit platforms? There is another problem though that might be SOLgnu specific, not yet reduced to a small case. 2010-07-12 11:28 jkrell * m3-sys/cminstall/src/config-no-install/Interix.common: no change, just commit so I take ownership on CVS server so I can clear the execute attribute, which is often present on files I added from Windows 2010-07-12 11:21 jkrell * m3-sys/cminstall/src/config-no-install/PPC_LINUX: fix typo in comment 2010-07-12 11:17 jkrell * m3-sys/cminstall/src/config-no-install/VMS.common: [] to [ ] so the characters don't run together, depending on font 2010-07-12 11:16 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: move comment that seemed misplaced 2010-07-12 11:14 jkrell * m3-sys/cminstall/src/config-no-install/I386.common: don't mess with preferred-stack-boundary, it makes me nervouse 2010-07-12 10:14 jkrell * m3-sys/m3tests/src/m3makefile: gcc 4.5 assertion failure inlining in Poly.m3 for SOLgnu 2010-07-12 09:46 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: represent sets as a pointer to a word, not an untyped pointer This seems fixes inlining on AMD64_DARWIN (more testing being done, including of SOLgnu). This was my fault: the old code to call functions didn't have to worry about the types of sets, because it didn't dereference them.. 2010-07-12 09:07 jkrell * m3-sys/m3tests/src/m3makefile: test case reduced from m3core/TextConv.m3 that gives: internal compiler error: in estimate_move_cost, at tree-inline.c:3016 when gcc 4.5 does inlining The assertion is that the type isn't void. The problem seems related to the set of char, but we'll see. 2010-07-12 02:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: gcc 4.5: turn off all inlining: m3-sys/m3cc/AMD64_DARWIN-SOLgnu/cm3cg -quiet -O3 m3core/SOLgnu/Poly.mc fingerprint/Poly.m3: In function 'Poly__FromBytes': fingerprint/Poly.m3:379:0: internal compiler error: in referenced_var_lookup, at tree-dfa.c:519 2010-07-11 23:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: hm LABEL_REF_NONLOCAL_P I thought had helped maybe on I386_LINUX and SOLgnu but it clearly hurts on AMD64_DARWIN 2010-07-11 22:50 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: gcc 4.5: mark barrier labels rtx with LABEL_REF_NONLOCAL_P, does it help/matter? 2010-07-11 13:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix the -Wc++-compat warnings/errors you see if using newer gcc class => clas int => enum and the "poison" thing, not sure why it appears on some machines and not others, could again be different gcc version 2010-07-11 12:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: gcc 4.5 -O1 and -O2 seem ok but some of the -O3 passes fail: flag_predictive_commoning flag_ipa_cp_clone flag_inline_functions is not optimizing for size Failures generally seen compiling m3-libs/sysutils/System.m3. As well 'pre' which has problems in 4.3 also has problems in 4.5, problems seen compiling m3front. And 'fre' already disabled (see test p244). 2010-07-11 10:52 jkrell * m3-sys/m3tests/src/m3makefile: add a case that crashes gcc 4.5 backend if 'fre' enabled (this reduced from something in p240 I was looking at; p240 always disables optimizations, until such time as we expand the test framework to iterate through various optimization options..) 2010-07-11 10:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: disable 'fre' for gcc 4.5, it crashes 2010-07-11 09:05 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: in the gcc 4.2 (and maybe 4.5) don't bother with the add if adding zero 2010-07-11 08:53 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: TREE_PUBLIC (p) = ((lev == 0) || flag_unit_at_a_time); instead of just 1 2010-07-11 08:15 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: edit the comment about making all functions 'public' 2010-07-11 08:13 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: mark nested functions as "public", so that unit at a time doesn't remove them Still, "public" isn't so bad, they are still "hidden" on platforms that support that. (That is, they are accessible from within the .so but not exported to outside it.) 2010-07-11 07:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: more tracing: quoted_string just leave 'pre' off all the time, for now What i had was sort of better, pre on sometimes, but also kind of yucky. 2010-07-11 06:55 jkrell * m3-sys/m3tests/src/m3makefile: add test case that fails to compile when gcc backend compiles "unit at a time" because nested functions aren't preserved 2010-07-11 06:34 jkrell * m3-sys/m3tests/src/m3makefile: [no log message] 2010-07-10 13:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h, parse.c: Try something similar/different: in functions that call pushframe, turn off flag_tree_pre That is: save flag_tree_pre away in begin_procedure if we see call pushframe, set flag_tree_pre = 0 restore flag_tree_pre in end_procedure This depends on that curently we compile unit at a time.. which is the "last" optimization to deal with..except this dependency makes "pre" being sometimes enabled dependant on it...so..ultimately..this "fix" probably can't stand. If unit at a time can be fixed soon/easily, re-disable pre and investigate further the problem with try/finally.. 2010-07-10 12:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: don't check for pushframe if we are making all load/store volatile 2010-07-10 12:27 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use POINTER_PLUS with gcc 4.3 same as with gcc 4.5 volatilize any function that calls RTHooks__PushEFrame Therefore enabling "pre" optimization (partial redundancy elimination?) This would probably be cleaner in a few other ways: investigate further why gcc doesn't like the trees we produce for this case have a direct call in the middle end: volatilize_current_function understand (at least) the two variants of try/finally don't volatilize all variables In my one test case though, the finally block doesn't access anything, so only volatilizing what is needed would set us back to really having to understand. And, really, volatile even of certain variables is overkill. You just want be sure they are "homed" prior to function calls that can throw, not at every single use and not before function calls that can't throw. 2010-07-10 11:36 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: DECL_NONLOCAL in gcc 4.5 to try to mimic x_nonlocal_goto_handler_labels causes harm, detailed in the comments in the code here (needs further investigation) 2010-07-09 15:09 hosking * m3-sys/m3front/src/misc/Scanner.m3: No need for extra variable. 2010-07-09 11:58 jkrell * m3-sys/m3front/src/misc/Scanner.m3: go back a version, to 1.11; 1.12 causes major problems, presumably it confuses 'word' and 'Word' or something 2010-07-09 08:52 jkrell * scripts/python/pylib.py (release_branch_cm3_5_8): support for Visual Studio 2010 2010-07-09 08:04 jkrell * scripts/python/pylib.py: add mspdb100.dll to list -- support for Visual C++ 2010 2010-07-08 10:20 jkrell * m3-sys/m3cc/src/m3makefile: no actual change but commented out or disabled: append -4.3 to build_dir for 4.3 commented out configure -enable-checking=all (we should make this work) disabled switching to 4.5 for AMD64_DARWIN (should make this work, maybe the pointer use in loophole will help?) 2010-07-07 17:00 wagner * scripts/make-dist.sh (release_branch_cm3_5_8): prepare for final release build 2010-07-07 11:01 jkrell * m3-sys/m3tests/src/m3makefile: cut down (38 lines) form of libm3/Formatter.m3 that crashes gcc backend if -O3, no volatile, 'ter' 2010-07-07 06:20 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: partial redundancy elimination ('pre') also crashes compiling libm3/Formatter, add comment; remove all the other stuff about disabling optimizations 2010-07-07 06:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Allow "all" optimizations now, except flag_unit_at_a_time which fails for a "different" reason, and flag_tree_pre (partial redundancy elmination) only because I missed it since it is a few lines away, will try that shortly. 2010-07-06 20:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c, m3-sys/m3back/src/M3x86.m3, m3-libs/m3core/src/runtime/common/RTHooks.i3, m3-libs/m3core/src/runtime/common/RTHooks.m3, m3-libs/m3core/src/runtime/common/RuntimeError.i3, m3-sys/m3middle/src/M3CG.i3: replace a "FIXME" comment with other comments and assertions The code was ok. Line numbers beyond around 100 million are silently truncated, same as it ever was (though the range probably used to be double) 2010-07-06 19:40 hosking * m3-sys/m3front/src/exprs/CastExpr.m3: Cleaner. 2010-07-06 19:36 jkrell * m3-sys/: m3cc/gcc/gcc/m3cg/parse.c, m3front/src/exprs/CastExpr.m3: allow "ter"/-O3, but without causing compiling CopySign in m3core/src/float/IEEE/RealFloat.m3 to fail to compile: internal compiler error: in convert_move, at expr.c This change might not go far enough though. We might want to call Force() more often. The theory here is, I don't completely know, but that Force() inhibits optimizations done by m3front/src/misc/CG.m3, such as that might remove "taking the address of", which would then inhibit optimizations by the backend. Optimizations are being inhibited here specifically for unsafe code that is casting floats to structures, surely an acceptable small amount of code. In fact, again, consider doing this more. 2010-07-05 22:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add some asserts around bit field offsets and sizes, that they are all <= 64 and <= TYPE_PRECISION, as well their sums are (which is redundant but ok) one small branch of insert looks pointless, assert(false) 2010-07-05 21:39 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: go back a version to 215, restoring 'volatilize'/'volatize' names 2010-07-05 21:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: rename "volatize" to "make_volatile" move existing code to function m3cg_make_volatile which will work for being called from front end, if we decide to do that (not done here) no real change here, just some renaming Note that the terminology is a bit off perhaps, in that I believe "volatile function" to gcc backend means "noreturn function". Here it means "all the locals, parameters, temporaries are volatile". ie. function calls setjmp/vfork. (This is actually overkill of course: it should only make volatile stuff used after the second return; this could actually still be defeating a fair amount of volatile removal -- any function with a "try".) 2010-07-05 19:12 hosking * m3-sys/m3front/src/misc/Scanner.m3: Canonicalize wide char literals to avoid duplicate M3ID for 'w' and 'W'. 2010-07-05 13:33 jkrell * m3-ui/bicycle/src/PixmapFromXData.m3: ../src/PixmapFromXData.m3: In function 'PixmapFromXData__P': ../src/PixmapFromXData.m3:136: warning: 'M3_AcxOUs_mask' may be used uninitialized in this function ../src/PixmapFromXData.m3:136: note: 'M3_AcxOUs_mask' was declared here ../src/PixmapFromXData.m3:136: warning: 'M3_AcxOUs_word' may be used uninitialized in this function ../src/PixmapFromXData.m3:136: note: 'M3_AcxOUs_word' was declared here ../src/PixmapFromXData.m3: In function 'PixmapFromXData__Flip': ../src/PixmapFromXData.m3:136: warning: 'M3_AcxOUs_mask' may be used uninitialized in this function ../src/PixmapFromXData.m3:136: note: 'M3_AcxOUs_mask' was declared here ../src/PixmapFromXData.m3:136: warning: 'M3_AcxOUs_word' may be used uninitialized in this function ../src/PixmapFromXData.m3:136: note: 'M3_AcxOUs_word' was declared here 2010-07-05 13:31 jkrell * m3-ui/juno-2/juno-machine/src/JunoRT.m3: ../src/JunoRT.m3: In function 'JunoRT__DoSolve': ../src/JunoRT.m3:1266: warning: 'M3_DGwZEA_z' may be used uninitialized in this function ../src/JunoRT.m3:1266: warning: 'M3_DGwZEA_y' may be used uninitialized in this function 2010-07-05 13:29 jkrell * m3-ui/juno-2/juno-machine/src/JunoDisassem.m3: ../src/JunoDisassem.m3: In function 'JunoDisassem__P__DoSolve': ../src/JunoDisassem.m3:74: warning: 'M3_BlCZOI_z' may be used uninitialized in this function ../src/JunoDisassem.m3:74: warning: 'M3_BlCZOI_y' may be used uninitialized in this function 2010-07-05 13:27 jkrell * m3-comm/events/src/EventStubLib.m3: ../src/EventStubLib.m3: In function 'EventStubLib__InInteger': ../src/EventStubLib.m3:1011: warning: 'M3_AcxOUs_i' may be used uninitialized in this function ../src/EventStubLib.m3:1011: note: 'M3_AcxOUs_i' was declared here ../src/EventStubLib.m3: In function 'EventStubLib__InInt32': ../src/EventStubLib.m3:1011: warning: 'M3_ENQ7Kn_i' may be used uninitialized in this function ../src/EventStubLib.m3:1011: note: 'M3_ENQ7Kn_i' was declared here 2010-07-05 13:01 jkrell * m3-libs/m3core/src/float/IEEE/LongFloat.m3: go back a version, compiler change coming instead 2010-07-05 12:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove one tab 2010-07-05 11:28 jkrell * m3-sys/m3front/src/exprs/CastExpr.m3: fix comments: cause => because 'cause => because 2010-07-05 11:22 jkrell * m3-libs/m3core/src/float/IEEE/LongFloat.m3: ../src/float/IEEE/LongFloat.m3: In function 'LongFloat__Logb': ../src/float/IEEE/LongFloat.m3:35: warning: 'M3_CtKayy_ans' is used uninitialized in this function ../src/float/IEEE/LongFloat.m3: In function 'LongFloat__NextAfter': ../src/float/IEEE/LongFloat.m3:81: warning: 'M3_CtKayy_z' is used uninitialized in this function Not really. Initialize them to 0. There is probably a better fix here, something like: NextAfter: RETURN LOOPHOLE(Rep.T{sign := yy.sign, exponent := 0, significand0 := 0, significand1 := 1}, T) Logb: RETURN LOOPHOLE (Log_of_zero, T); 2010-07-04 15:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: some steps forward and backward: remove the volatile on float stores, good turn off "ter" optimization, not great Need to investigate more. Tested only so far on AMD64_DARWIN. 2010-07-04 15:31 jkrell * m3-libs/m3core/src/float/test_copysign.c: more true to the Modula-3 2010-07-04 15:26 jkrell * m3-libs/m3core/src/float/test_copysign.c: CopySign in C 2010-07-04 13:10 jkrell * m3-obliq/obliqlibm3/src/ObLibM3.m3: initialize a few local integers that backend warns might be used uninitialized 2010-07-04 07:54 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: having restored the historical div/mod implementation.. ARM backend resumes crashing, because it does even for unsigned 64bit divide with any mode (i.e. even the C mode, if the C compiler more resembled the Modula-3 compiler); it needs a non-null pointer from type_for_mode(TImode) In the meantime I have more trust in the gcc builtins than when I stopped using them. So then restore using the gcc builtins. And then to fix the ARM crash, add some TImode/int128 support. Just one line in type_for_mode. remove some tabs 2010-07-04 00:22 jkrell * m3-sys/cminstall/src/config-no-install/PPC_LINUX: add comment that gdb 7.1 needed for PIE debugging, keep it disabled at least for now (was it causing other problems??) 2010-07-04 00:16 jkrell * m3-sys/m3tests/src/m3makefile: restore "c" tests to not running (at least one of them knowingly contains an infinite loop) change c135 to p240 2010-07-03 13:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: reremove volatile on powerpc, it doesn't seem to hang now..wierd... (should still test it optimized as well) 2010-07-03 10:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix typo regarding powerpc64 2010-07-03 10:57 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: restore volatile for powerpc and powerpc64 platforms This seems to fix PPC_LINUX hanging. This needs further debugging, but I'm not eager. This will also affect PPC_DARWIN, PPC64_DARWIN, PPC32_OPENBSD, PPC32_NETBSD, PPC32_FREEBSD, etc., but these platforms are little used or nonexistant. Having volatile like has been the very long standing situation though. The result is that the optimizer does basically nothing. 2010-07-03 10:48 jkrell * m3-sys/cminstall/src/config-no-install/PPC_LINUX (release_branch_cm3_5_8): port from head: don't make PPC_LINUX executables position independent, as it breaks debugging (we do use this on Solaris actually, but the odds of such a bug being portable aren't high) 2010-07-03 10:47 jkrell * m3-sys/cminstall/src/config-no-install/PPC_LINUX: Don't make executable position independent. It is a nice security feature, but this is the only platform we use it on so far and it breaks debugging (even for C code). 2010-07-03 10:23 jkrell * m3-sys/m3tests/src/m3makefile: port from release: the use of bc causes a problem on Solaris also fix up perhaps the optional use of Cygwin date.exe on NT need some sort of time support in quake? 2010-07-03 10:08 jkrell * m3-libs/m3core/src/C/Common/Cstdint.i3: remove BITS FOR 2010-07-03 10:05 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix typo 2010-07-03 10:03 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: a little more tracing, of insert/extract 2010-07-03 09:50 jkrell * m3-sys/m3cc/gcc/gcc/config/rs6000/rs6000-protos.h: add #include alias.h to fix compilation break 2010-07-02 06:07 wagner * scripts/: make-dist.sh, version, version.quake (release_branch_cm3_5_8): prepare for final release build 2010-07-01 10:54 jkrell * m3-sys/m3tests/src/m3makefile: flesh out infrastructure for checking in known/suspected correct assembly and then comparing to current assembly the intent, if not the code, is: in any directory m3-sys/m3tests/src/c1/c123 create m3-sys/m3tests/src/c1/c123/expected/I386_LINUX/Main.ms m3-sys/m3tests/src/c1/c123/expected/I386_LINUX/Foo.ms m3-sys/m3tests/src/c1/c123/expected/AMD64_LINUX/Main.ms m3-sys/m3tests/src/c1/c123/expected/AMD64_LINUX/Foo.ms etc. The name "expected" is a hardcoded part of the interface. I'm open to making it something else or additional flexibility, but this seems adequate or better to me. Any file in expected/TARGET is compared against TARGET. Missing/extra files are just ignored. Note that this probably works for stdout.pgm and such. Future: We should probably allow for: m3-sys/m3tests/src/c1/c123/expected/I386/Foo.ms m3-sys/m3tests/src/c1/c123/expected/AMD64/Main.ms once we confirm that they are often the same. e.g. I wouldn't be surprised if they are the same across all Solaris, *BSD, Linux, though probably not Darwin. Heck, we might even make up something called I386_ELF or I386_SYSV. Cross that bridge later. If the code does not agree with this description, well, this description was my intent. Whether or not creating a directory was worthwhile, it still not clear. The previous implementation allowed for just: m3-sys/m3tests/src/c1/c123/Main.ms-AMD64_LINUX and then you could either glom everything into Main.m3, or use multiple test cases. At the moment I'm thinking of having multiple files but just one large test case. We'll see. It's not a big deal either way. 2010-07-01 08:57 jkrell * m3-sys/m3cc/gcc/gcc/config/darwin.h: always support hidden aka private extern aka don't export every function from shared libraries, preferably only one - listed in an .i3 file - an .i3 file that is Interface and not merely interface I believe currently I've only achieved the first condition. I suspect this regressed because I put in specifying -target explicitly for consistency with cross builds, and so maybe that doesn't use autoconf as much? I'm not sure. 2010-06-29 13:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: This should cleanup configure -enable-checking a little more, regarding m3_do_fixed_extract, which is often used for integer division, signed and unsigned. The only change in m3core was a small optimization: +++ AMD64_DARWIN/RTTipe.ms 2010-06-29 05:59:08.000000000 -0700 @@ -3366,41 +3366,39 @@ .stabd 68,0,516 - movq -8(%rbp), %rax - sarq %rax - movq %rax, -8(%rbp) + sarq -8(%rbp) It is not all clear. The tree ended up with, as configure -enable-checking reports, two types, the input and output. -enable-checking demands they be the same. For the left shift, the type doesn't matter. For the right shift, I believe we want the possibly signed type. 2010-06-29 12:55 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cleanup m3_do_fixed_extract, no temporaries (in parse.c, not the generated code) needed 2010-06-29 12:42 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: cleanup m3cg_index_address - same code for gcc 4.2/3/5 - should address the configure -enable-checking errors I am leary of using m3_cast instead of m3_covert though. 2010-06-29 12:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: oops, also m3_cast for xor, not m3_convert This again shuffles things around in a way that doesn't seem meaningful. 2010-06-29 12:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Start fixing configure -enable-checking problems. Start with the very simplest: bit-or/and/xor/not. There are some small changes in m3core as a result but they don't appear to be semantically interesting, mostly stuff like: - movq -32(%rbp), %rdx - movq -24(%rbp), %rax + movq -24(%rbp), %rdx + movq -32(%rbp), %rax orq %rdx, %rax when I tried reversing the parameter order, the changes where larger. 2010-06-29 11:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: change m3_build1 (CONVERT_EXPR, ...) to m3_convert (...) no great reason, but based on m3_cast convert/cast will be the subject of likely near future other changes, until configure -enable-checking is satisfied (some changes might be elsewhere, e.g. m3front) With this change, the assembly output for AMD64_DARWIN m3core is unchanged. 2010-06-29 11:33 jkrell * m3-sys/m3tests/src/m3makefile: add test p239 and infra to compare it er, not sure what this will do on other targets, probably fail but not too noisily 2010-06-29 07:07 jkrell * scripts/win/cvs.c: remove tab 2010-06-29 07:07 jkrell * scripts/win/cvs.c: set CVS_RSH=/bin/ssh if it is ssh or empty 2010-06-29 07:06 jkrell * scripts/win/sysinfo.cmd: support spaces in INCLUDE and PATH, though spaces in CM3_INSTALL are missing quotes when -I is passed to C compiler 2010-06-28 20:29 jkrell * m3-libs/m3core/src/m3core.h: put back warning, better than consequent error 2010-06-28 09:07 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: fix Windows compilation (uint64 => UINT64) 2010-06-28 09:05 jkrell * m3-libs/m3core/src/m3core.h: remove duplicate #define of EXTERN_CONST 2010-06-28 09:03 jkrell * m3-libs/m3core/src/m3core.h: fix Visual C++ warning under -Wall 2010-06-28 01:30 jkrell * m3-sys/m3front/src/misc/CG.m3: go back to spelling out Target.Integer|Word.cg_type; there are several (at least instances) of type mismatches here, that gcc 4.5 complains about, we need to use Integer less and Word more, but that isn't changed here yet 2010-06-27 14:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix 4.5 compilation regarding x_nonlocal_goto_handler_labels 2010-06-27 13:24 jkrell * m3-sys/m3cc/gcc/gcc/config/darwin-protos.h: remove the enum machine_mode forward declare from here, now that we have in parse.c 2010-06-27 13:23 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: provide IS_INTEGER_TYPE_TREE and IS_WORD_TYPE_TREE macros even for gcc <4.5; forward declare enum machine_mode to quash warning on other targets 2010-06-27 13:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix type to fix warning 2010-06-27 13:17 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: reduce diff in gcc 4.3 m3cg_set_label 2010-06-27 11:56 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix m3cg_set_label change 2010-06-27 11:36 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: in m3cg_set_label, use a loop to put the asm("") before and after the label, instead of duplicating the code also in m3cg_set_label, a possible gcc 4.5 fix, use DECL_NONLOCAL(l) = true; instead of manipulating nonlocal_goto_handler_labels, which doesn't work (it crashes) 2010-06-27 10:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fold gcc45 and non-gcc45 code mostly via: enum tree_code plus = (GCC45 ? POINTER_PLUS_EXPR : PLUS_EXPR); 2010-06-27 10:30 jkrell * m3-sys/m3cc/: src/m3makefile, gcc/gcc/m3cg/parse.c: a little more #ifdef to #if, GCC_APPLE and GCC42 (which really mean the same thing) 2010-06-27 10:21 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove initial #define GCC45 0 2010-06-27 10:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: change some #if GCC45 to if (GCC45), where both arms should compile with either code base 2010-06-27 10:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: #ifdef GCC45 to #if GCC45, #ifndef to #if ! 2010-06-27 08:52 jkrell * m3-sys/m3cc/src/gnucc.common: allow -DO0 to turn off optimizations 2010-06-26 13:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix minor typo in trace output 2010-06-26 13:25 jkrell * m3-libs/libm3/src/os/POSIX/SocketPosix.m3: int/INTEGER => socklen_t LOOPHOLE to char_star so it works with -new_adr and doesn't corrupt stack 2010-06-26 13:19 jkrell * m3-libs/sysutils/src/POSIX/SystemPosix.m3: LOOPHOLE to char_star so it works with -new_adr 2010-06-26 13:17 jkrell * m3-comm/udp/src/POSIX/UDPPosix.m3: int to socklen_t so it works with -new_adr and doesn't corrupt memory on 64bit 2010-06-26 13:15 jkrell * m3-comm/tcp/src/POSIX/: TCPExtras.m3, TCPPeer.m3: fix memory corrupting bug that I probably introduced, 64bit only, found by -new_adr int to socklen_t 2010-06-26 13:08 jkrell * m3-sys/m3middle/src/TFloat.m3: LOOPHOLE so it works with -new_adr 2010-06-25 09:02 jkrell * m3-sys/m3cc/gcc/gcc/tree-nested.c: add an assert, based on a suspicion: STATIC_CHAIN_EXPR must always have a target_context, whatever that is 2010-06-25 08:00 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: back to versions that avoid overflowing signed numbers 2010-06-24 11:51 jkrell * m3-sys/m3tests/src/p0/p073/Main.m3: more/clearer checks 2010-06-24 11:47 jkrell * m3-sys/m3tests/src/p0/p073/Main.m3: more checks 2010-06-24 11:34 jkrell * m3-sys/m3tests/src/p0/p073/: Main.m3, stderr.pgm: augment div/mod test (this might be redundant, but it is fast) 2010-06-24 11:05 jkrell * m3-libs/m3core/src/runtime/common/RTType.m3: make it compatible with new ADR old ADR(T):ADDRESS new ADR(T):UNTRACED REF T 2010-06-24 10:51 jkrell * m3-ui/X11R4/src/Common/X.i3: slightly further privatize display and gc (graphics context) in accordance with current headers Note that Xlib is I believe considered obsolete/deprecated/legacy and there is a new xcb X C binding. See http://en.wikipedia.org/wiki/XCB etc. (I'd have to research how widely xcb is distributed and used.) 2010-06-24 10:40 jkrell * m3-ui/X11R4/src/Common/X.i3: make lots of fields private to match current headers and DisplayStar = UNTRACED BRANDED REF ADDRESS to push all of Display toward private, like current headers 2010-06-24 09:47 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: go back to release form of div/mod helpers for now, though these don't fix the problem either (X.i3 could not find a legal alignment for the packed type 2010-06-24 09:37 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: fix div/mod helpers to operate on INTEGER/WORD_T instead of INT32/UINT32; still there is a problem and I will next try using the release version of these 2010-06-24 09:26 jkrell * m3-sys/m3cc/gcc/gcc/lower-subreg.c: initialize local due to warning that it might be used uninitialized 2010-06-21 07:57 jkrell * m3-sys/m3tests/src/m3makefile: add 'man vs. boy' aka nested procedures+recursion aka static chain test 2010-06-21 06:12 jkrell * m3-sys/m3cc/gcc/gcc/: config/arm/arm.h, m3cg/parse.c: put div/mod back to long standing and release form: almost always call a function, unless both parameters known to be positive or the type is unsigned Modula-3 very unfortunately defines div/mod differently than pretty much everyone else. Perhaps perhaps the language definition can be repaired. It turns out there are several reasonable definitions of div and mod. Modula-3 doesn't chose the obvious correct one and C doesn't chose the obvious incorrect one. We may yet be able to use the gcc support but it makes me nervous. It requires at least in a very minimal sense, for the frontend to support TImode (aka int128_t). See: http://gcc.gnu.org/ml/gcc/2010-06/msg00647.html (which is just from me, talking to myself..) 2010-06-21 06:05 jkrell * m3-sys/m3cc/gcc/gcc/config/darwin-protos.h: forward declare enum machine_mode to fix warningu 2010-06-21 05:05 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: add back all four div/mod helpers for Posix, through rewritten to use unsigned arithmetic and not depend on silent signed wraparound Floor div/mod is a fairly target-specific and under used part of gcc and I am now nervous to depend upon it. Perhaps do more research though and trust it. 2010-06-19 10:03 jkrell * m3-libs/m3core/src/: unix/m3makefile, runtime/common/Compiler.tmpl: forgot to commit ARMEL_LINUX line here 2010-06-19 09:38 jkrell * scripts/python/pylib.py: oops: remove double gnu platform prefix from linker 2010-06-19 09:37 jkrell * scripts/python/pylib.py: no --32 for ARM assembler -- this bit is a bit of a mess and probably should just have a table for the remaining architectures that do accept --64 or --32 2010-06-19 09:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: #include tm_p.h to fix warning 2010-06-19 09:26 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: oops 2010-06-19 09:24 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: add Linux/arm (probably works for all Linux/arm variants) 2010-06-19 09:20 jkrell * scripts/python/pylib.py: add GnuPlatformPrefix{ARMEL_LINUX} = arm-linux-gnueabi-; aka use cross tools by default, since that is what I currently have 2010-06-19 09:17 jkrell * scripts/python/pylib.py: add ARMEL, change ?= to = avoid any confusion, edit the Makefile if it is wrong 2010-06-19 09:03 jkrell * m3-sys/m3cc/gcc/gcc/: config/arm/arm.h, m3cg/parse.c: use a function call for 64bit mod on ARM, the backend crashes otherwise #if 0'ed out possibly slightly better code 2010-06-19 09:01 jkrell * m3-sys/cminstall/src/config-no-install/ARMEL_LINUX: -m32 not allowed here (probably needed for ARM_DARWIN too) 2010-06-19 08:56 jkrell * m3-libs/libm3/src/platforms.quake: add ARMEL_LINUX 2010-06-19 08:38 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: leave it called m3_div64 instead of m3_divL 2010-06-19 08:26 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: add m3_modL for ARM, it seems to need it 2010-06-19 05:35 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: always specify -build, -host, -target, for cross and native consistent but experimenta/unorthodox Usually people let config.guess do all the work for native and always for build. Default build to host, not target. 2010-06-19 05:26 jkrell * m3-sys/m3cc/src/m3makefile: Always specify -target. in native builds, always specify -build and -host. This should provide for more consistency, though is also a bit experimental and unorthodox. 2010-06-19 05:10 jkrell * m3-sys/m3cc/src/platforms.quake: add ARMEL_LINUX=arm-linux-gnueabi 2010-06-19 04:57 jkrell * m3-libs/m3core/src/platforms.quake: add ARMEL_LINUX (not to be confused with Android/Bionic which I suspect might be different.. 2010-06-19 04:56 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: add ARMEL_LINUX with correct jmbuf size/align guessing about alignment "ARM" is an older ABI "ARME" is the usual modern ABI L for little endian 2010-06-19 04:51 jkrell * m3-sys/cminstall/src/config-no-install/ARMEL_LINUX: initial config file for ARMEL_LINUX (e=embedded, l=little endian) 2010-06-16 14:12 rodney * m3-sys/m3front/src/misc/Scanner.m3: Complete case-insensitivity for: 1) 'w'/'W' to denote wide character and wide text literals 2) 'x'/'X' as hex escape inside character and text literals 2010-06-16 07:30 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: ZeroMemory is *perhaps* preferable to = { 0 } because: 1) it portable zeros all of a union 2) gcc warns about missing initializers Though really = { 0 } is imho a great terse portable syntax that isn't worth warning about, unless there is a union with not the largest first. 2010-06-14 21:16 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: always compile C with -O3 -g3 -g in particular inhibits optimization path -rpath to cc instead of -Wl,-rpath use -B symbolic I verified, even though this isn't really documented for cc, it does work. It is documented for ld. -B foo means something else for cc, but it appears to recognize -B symbolic. If in doubt, use -Wl,-B,symbolic or maybe -WL,-B,symbolic instead cleanup comments about shared remove SYSTEM_LD -- just always use SYSTEM_CC 2010-06-14 05:25 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA_OSF, Unix.common: put the .so files in lib and symlink back from pkg like other Posix platforms all now do I kind of think we might as well move the .a files too. move options to SYSTEM_CC (-ieee_with_no_inexact, -pthread) more refinement of compile/link flags: -error_unresolved -readonly_strings run assembler with the same flags that gcc does: -g -oldas -c -O0 (and -nocpp) Neither -oldas nor -c are documented. Always using -g seems wrong, never -g0 or -g3, etc., but it seems to be what gcc always does, I tried a few different -g and -O parameters (compiling C) run mips-tfile Changing the flags to the assembler appears to have helped significantly here. Previously it was always issuing errors. Reading osf.h and osf5.h confirm this. Debugging is a little better now in gdb. m3gdb crashes if I just set a breakpoint. 2010-06-14 04:42 jkrell * m3-sys/m3cc/src/m3makefile: build and ship mips-tfile, though it doesn't yet work for me It gives errors, same as the mips-tfile that building gcc gives me, when used against Modula-3, mips-tfile does get used and work with C. 2010-06-13 21:30 jkrell * m3-sys/m3cc/src/m3makefile: some comment editing and fitting in 80 columns 2010-06-13 05:47 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: improve cc options: -g -readonly_strings, -lm doesn't belong here 2010-06-13 05:11 jkrell * scripts/python/upload.sh: also chmod 644 2010-06-13 05:09 jkrell * scripts/python/upload.sh: also upload *.tar.xz and *.tgz files, and also translate jayk to jkrell 2010-06-13 04:54 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: solitaire needs -ldnet_stub (dnet=decnet, and this was already there in the old config file that I wasn't immediately copying everything from) 2010-06-13 03:05 jkrell * m3-ui/jvideo/src/POSIX/m3makefile: Comment out the decision to use target specific code and just use the generic version, it does compile, whereas the osf1/decunix versions no longer do. Is the target specific version faster or did these systems previously not handle the generic version? Either I doubt it matters much, out here in jvideo. 2010-06-13 02:48 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA_OSF, Unix.common: -mieee is needed to support denormal floating point, such as m3-libs/m3core/src/float/IEEE/LongReal.i3 MinPos: T = 4.9406564584124654D-324; (* The minimum positive value in T. *) MinPosNormal: T = 2.2250738585072014D-308; (* The minimum positive "normal" value in T; differs from MinPos only for implementations with denormalized numbers. *) Otherwise MinPos is NaN and multiplication with it here: m3-libs/arithmetic/src/basictypes/float/FloatTrans.ig Tiny = R.MinPos * FLOAT(1000.0, T); (* nearly 0.0 *) issues a SIGFPE, when R = LongReal. I also wonder if maybe MinPos should be adjusted to be normal or ALPHA_OSF should do so (i.e. not use generic IEEE directory, e.g.: VAX/LongReal.i3: MinPos: T = 2.93873587705571880D-39; VAX/LongReal.i3: MinPosNormal: T = MinPos; ) Probably best to be like all the other architectures though, even if it costs some perf. You know, some people like floating point to be really really the same across all architectures..witness Java, Java -strictfp, and the lack of any Java for VAX. see: http://gcc.gnu.org/onlinedocs/gcc-4.5.0/gcc/DEC-Alpha-Options.html#DEC-Alpha-Options A program like this demontrates it, I think it was, from memory: int main() { long a = 0x3E8; /* NaN */ double b = *(double*)&a; double c = b * 1000;; return 0; } or: int main() { double a = 4.9406564584124654e-324; double b = a * 1000; return 0; } We should probably hardcode this in parse.c for Alpha instead of relying on the config files. 2010-06-12 20:26 jkrell * www/uploaded-archives/targets.txt: add ALPHA_OSF 2010-06-12 15:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: remove errant line in the OSF change 2010-06-12 15:22 jkrell * m3-libs/m3core/src/: thread.quake, thread/m3makefile: user threads are now very portable and rarely require per-target work, so we can remove the list of targets that don't offer them (I was rarely doing the work for any new target) (still, NT/Cygwin don't have them, that's encoded differently) 2010-06-12 14:57 jkrell * m3-libs/m3core/src/thread.quake: empty out platform list, the default of true is correct for all current platforms except OpenBSD, which are left in the list 2010-06-12 14:54 jkrell * scripts/python/pylib.py: back to /usr/bin/as -nocpp on Alpha/OSF 2010-06-12 14:52 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: hm, looks like as0 has to be followed by as1 Just use as -nocpp. Need -lrt for nanosleep, sem_*, now that using pthreads. 2010-06-12 14:48 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: make ThreadPThread__RestartThread and ThreadPThread__SuspendThread, as Tru64 cc complains that they weren't returning anything. Note we are playing just slightly fast/loose here. They are declared as returning BOOLEAN in the *.i3 files. But these versions just abort() and should never be called. You know, like, sometimes there is a "noreturn" marker on abort, sometimes not. That's why other compilers haven't been warning here. 2010-06-12 14:41 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Pick SIG_SUSPEND for Alpha/OSF1/Tru64. Otherwise pthreads fails to compile for it, due to picking a non-constant. Here are some of the choices: /usr/include/signal.h: #define SIGUSR1 30 /* user defined signal 1 */ #define SIGUSR2 31 /* user defined signal 2 */ #define SIGRTMIN (sysconf(131)) #define SIGRTMAX (sysconf(132)) bash-4.1$ ./a.out 33 48 #include #include int main(int argc, char** argv) { printf("%ld %ld\n", (long)SIGRTMIN, (long)SIGRTMAX); return 0; } Using 33, 48 seems dangerous -- does it vary per machine/OS version? Diff here is: <#elif defined(SIGRTMAX) && !defined(__osf__) >#elif defined(SIGRTMAX) && !defined(__osf__) /* This might be a function call, in which case try _SIGRTMAX or initializing it somewhere. */ EXTERN_CONST int SIG_SUSPEND = SIGRTMAX; #elif defined(SIGUSR2) EXTERN_CONST int SIG_SUSPEND = SIGUSR2; so we end up using SIGUSR2, which is the same as on Solaris and maybe others. Note that OSF/1 and Darwin share a common base in Mach. And therefore "direct suspend" is probably a good easy idea here? mach_suspend/resume are in the headers, but I haven't found how to get the mach thread for a pthread, or the current mach thread, to compare see if they match. I'm more comfortable using the common code though actually. esp. since I haven't written any of this. 2010-06-12 14:09 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: disable stack walker here too (is that what broke the self-built cm3? run /usr/lib/cmplrs/cc/as0 directly (hey I would not have noticed the stack walker change here so fast Mika not broken /usr/bin/as!) 2010-06-12 14:07 jkrell * scripts/python/pylib.py: run /usr/lib/cmplrs/cc/as0 directly on Alpha/OSF 2010-06-12 14:04 jkrell * scripts/python/pylib.py: use -nocpp on Alpha/OSF assembler, as the preprocessor isn't needed and Mika broke his by accident; running /usr/lib/cmplrs/cc/as0 directly is also viable, it is documented on the man page 2010-06-12 10:13 jkrell * m3-libs/m3core/src/thread.quake: er, let's use pthreads on ALPHA_OSF, not doing so was just an accident by me, though it ought it work either way 2010-06-09 20:32 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: missed a use of time_t in doing the 64bit time change for OSF/1 2010-06-09 18:33 jkrell * m3-sys/m3cc/src/m3makefile: disable mips-tfile pending research, seems to work without it, though gcc does do something similar here 2010-06-09 18:32 jkrell * m3-sys/cminstall/src/config-no-install/ALPHA_OSF: use -pthread (not -lpthread) and -lm on compiler/linker 2010-06-09 17:20 jkrell * m3-libs/m3core/src/unix/Common/Uexec.c: Only call WEXITSTATUS if WIFEXITED. Only call WTERMSIG if WIFSIGNALED. Otherwise we get -1 and a subrange violation on OSF/1, due to: /* evaluates to the low-order 8 bits of the child exit status */ #define WEXITSTATUS(x) (WIFEXITED(x) ? ((_W_INT(x) >> 8) & 0377) : -1) /* evaluates to a non-zero value if status returned for abnormal termination */ #define WIFSIGNALED(x) (_WSTATUS(x) != _WSTOPPED && _WSTATUS(x) != 0) /* evaluates to the number of the signal that caused the child to terminate */ #define WTERMSIG(x) (WIFSIGNALED(x) ? _WSTATUS(x) : -1) and a careful read of Posix validates this change. They don't say what WEXITSTATUS and WTERMSIG do if WIFEXITED, WIFSIGNALED are false, only if true. 2010-06-07 01:25 jkrell * scripts/python/pylib.py: support ALPHA_OSF host 2010-06-06 22:37 jkrell * scripts/python/pylib.py: put version and timestamp, in boot and distribution archive names 2010-06-06 22:15 jkrell * scripts/python/pylib.py: comments 2010-06-06 22:15 jkrell * scripts/python/pylib.py: fix 2010-06-06 21:57 jkrell * scripts/python/pylib.py: remove spaces in assembler command line too, share code to do so 2010-06-06 21:11 jkrell * m3-libs/m3core/src/: m3core.h, time/POSIX/DatePosixC.c, time/POSIX/TimePosixC.c, unix/Common/UtimeC.c: use 64bit time_t (time64_t) on ALPHA_OSF 2010-06-06 21:11 jkrell * m3-libs/m3core/src/C/ALPHA_OSF/: Csetjmp.i3, m3makefile: restore ALPHA_OSF/Csetjmp.i3 2010-06-06 21:09 jkrell * m3-libs/m3core/src/runtime/m3makefile: disable ALPHA_OSF stack walker here too 'for now' 2010-06-06 21:07 jkrell * m3-libs/m3core/src/runtime/m3makefile: remove three newlines 2010-06-06 20:46 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: Three calls to ComputeGrainOnce take a long time to coincide on OSF/1 so only use two. This area seems a bit weak and in need of more attention. 2010-06-06 16:00 jkrell * scripts/python/pylib.py: failed to comment previous due to wrong cvs command line: adapt for ALPHA_OSF: use /usr/bin/cc -g, specifically -fPIC causes the error, like, "-g2 invalid hex number" or such, I think -fPIC means something else, and I think there is only one model on ALPHA_OSF anyway and it is PIC (consistent with Digital generally doing things better, and PIC being optional not a useful idea in general: proliferation of unnecessary and uncompatible options) switch Solaris to "big PIC" instead of "small PIC" Bad enough that there is PIC and non-PIC, add to the mix having to chose big PIC or small PIC! Ugh. Small PIC is more efficient but doesn't always work, and you don't know until you link, at And it doesn't work because of yet other poor ABI design, the general defaulting of everything to be external to the .so.. You get to go back and recompile some/all files.. There should be just one model and it should just work. The processor and the ABI should be designed together so that it is reasonably efficient. If there are, say, 32bit limits, then the linker should be able to fix things up, like, for tangential example, creation of branch islands. 2010-06-06 15:55 jkrell * scripts/python/pylib.py: pylib.py 2010-06-06 15:51 jkrell * m3-libs/m3core/src/time/POSIX/DatePosixC.c: add comment about OSF/1 2010-06-06 15:49 jkrell * m3-libs/m3core/src/m3core.h: #ifdef __osf__ #ifndef _OSF_SOURCE #define _OSF_SOURCE #endif #ifndef _XOPEN_SOURCE #define _XOPEN_SOURCE 500 #endif #endif remove manual OSF/1 socklen_t I tried a few combinations. Without any #defines, socket.h omits stuff like recvfrom. If you just #define _XOPEN_SOURCE, then struct tm is missing the BSD members, which you can then handle with #ifdef, but I think socket.h was still missing stuff, I forgot. This works and is reasonable. 2010-06-06 15:25 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.c: 'except' is keyword on OSF/1, use 'xcept' instead 2010-06-06 15:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: #ifdef HAVE_GAS_HIDDEN /* otherwise varasm.c warns: "visibility attribute not supported in this configuration; ignored" */ 2010-06-06 01:21 jkrell * m3-sys/cminstall/src/: config-no-install/ALPHA_OSF, config/ALPHA_OSF: initial version in slightly new form and stub out old one like others already are 2010-06-06 00:50 jkrell * m3-libs/m3core/src/m3core.h: adaptions for ALPHA_OSF: - gcc doesn't support visibility here - socklen_t is only typedefed if you #define something, which at this point I'm not going to to, typedef socklen_t myself instead 2010-06-06 00:42 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: adapt for ALPHA_OSF The printed value is not the "controlled" value, and is only in the vague vicinity of another possible one -- the calling function..a little worrisome, might want to revisit, but this doesn't really have to work, it is just for printing where crashes occured and on some platforms we just return NULL. 2010-06-06 00:28 jkrell * m3-libs/m3core/src/runtime/POSIX/test_signal.c: make the test case even better, and even better; that is, first I made it print too 'close' numbers, the address of a function and the crashing address, but then, even better, jump to a hardcoded constant, we should crash at that place 2010-06-06 00:12 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: change #ifdef GCC42 to #if GCC42 and if GCC42, but not real change, at this point 2010-06-05 18:47 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: enable/test/fix the OSF1 case 2010-06-05 17:49 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile: 'OSF' => 'Digital Unix', as we had for 'TRU64' 2010-06-05 17:43 jkrell * m3-libs/m3core/src/unix/m3makefile: add ALPHA_OSF 2010-06-05 17:41 jkrell * m3-sys/m3cc/src/m3makefile: add -e flag on sh invocations; there is a problem here that when compilation/link fails, cm3 still succeeds, this doesn't seem to fix it, gr. 2010-06-05 17:24 jkrell * m3-sys/m3cc/src/platforms.quake: upgrade from 'osf1' to 'osf5.1' 2010-06-05 17:22 jkrell * scripts/python/pylib.py: some suppoft for ALPHA_OSF, more needed here, soon later 2010-06-05 17:21 jkrell * m3-libs/m3core/src/platforms.quake: add ALPHA_OSF Really need to consolidate these lists.. 2010-06-05 17:20 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: more information when there is an assertion failure 2010-06-05 17:19 jkrell * m3-libs/m3core/src/runtime/ALPHA_OSF/: m3makefile, m3makefile-old: rename m3makefile => m3makefile-old, so the common directory will notice no m3makefile and give us the portable files I'm omitting the stack walker, at least "for now", but realistically, probably the target-specific code will never come back, hopefully we'll have a somewhat portable stack walker using libunwind/libgcc/m3cc, at least on platforms that have libgcc, which is almost all 2010-06-05 17:16 jkrell * m3-libs/libm3/src/platforms.quake: restore ALPHA_OSF some day I will merge all this data into fewer places.. 2010-06-05 17:15 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: restore ALPHA_OSF, but this time probably without stack walker just because I'm lazy, and resort the list again, it was only slightly unsorted 2010-06-04 16:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c (release_branch_cm3_5_8): adjust comment: spell out 'pre' means 2010-06-04 16:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: always turn off "pre" (partial redundancy elimination), even when there is a stack walker, as it crashes on release Testing on Solaris/sparc32 would be appropriate though to see if it causes compiler crash there (or just doing cross build) 2010-06-04 16:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c (release_branch_cm3_5_8): turn off "pre" optimization, which crashes compiling m3-tools/cvsup/server/FSServer.m3 2010-06-04 15:43 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: make comment match release regarding unit_at_a_time 2010-06-04 15:41 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c (release_branch_cm3_5_8): Port unfortunate fix from head, unless/until a better fix is found. The program: MODULE Main; PROCEDURE F1() = PROCEDURE NestedUnused1() = BEGIN END NestedUnused1; BEGIN IF FALSE THEN NestedUnused1(); END; END F1; BEGIN F1(); END Main. fails to link with: Undefined symbols: "_Main__F1__NestedUnused1.496", referenced from: _L_1 in Main.mo unless we do: flag_unit_at_a_time = 0; in parse.c 2010-06-04 05:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add m3_load_volatile, not currently used, but I get tired of putting it in to experiment, taking it out, repeat, etc. 2010-06-02 18:34 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix accidental wierd bad form, might even help bring back the nested function that gets optimized out?? probably not but worth more trying or investigation.. 2010-06-02 18:31 jkrell * m3-sys/m3cc/gcc/gcc/: config/sol2.h, config/sparc/sparc.h, m3cg/m3gty43.h, m3cg/m3gty45.h, m3cg/parse.c: significantly remove use of volatile Allowing the optimizer to actually do anything volatile remains on Solaris/sparc32 probably just need to experiment extensively volatile remains on all floating point loads, quite unfortunate for the scientific computing crowed.. volatile is added to more locals and temporaries within functions that call setjmp/vfork (setjmp is very common!?) volatile store after insert_mn, small lame hack, because otherwise we have a read before write a few optimizations are turned off, though I did solve the "unit at a time" problem, with TREE_USED or so I thought, but no...I had confused "ui" and "vbtkit" packages prototype marking fault_proc as noreturn but then I get a warning that it does return, even if I removed the return Provide and use m3_build_pointer_type that presently is pointless, but maybe will mean something in future There is a bit to turn off alias analysis. pre/fre still crashed. I didn't try vrp, it is the most painful to test when it goes wrong, because it successfully compiles everything. Mostly tested on AMD64_DARWIN. Needs broader coverage. Need to consider the warnings it causes. Need to get fault_proc marked noreturn first. Could use better for Solaris/sparc32, but machine is so slow experimentation is painful. 2010-06-02 17:30 jkrell * m3-sys/m3cc/src/m3makefile: update Solaris and sparc64 non-auto-conf (add 'gas weak'), fix typo in comment 2010-06-02 17:29 jkrell * m3-sys/m3cc/src/m3makefile: update Solaris and sparc64 non-auto-conf (add 'gas weak'), fix typo 2010-06-02 16:59 jkrell * scripts/python/pylib.py: print posixy 'unset' when clearing, I really don't understand the sh nuances though, I guess variable can be defined to be empty..but which shells do support unset? anyway, this is just printed for human to see approximation of internal actions, it's not actual executed 2010-06-02 16:58 jkrell * scripts/python/pylib.py: print posixy 'export' instead of win32 'set' when on posix 2010-06-02 16:35 jkrell * m3-sys/m3cc/src/platforms.quake: bump cross target=Solaris/sparc32 builds from 'solaris2' to 'solaris2.10'; native builds worked and this *seemed* to do it, still more to look into though (try 2.8, try removing volatils, try enabling 'gas weak', another difference I noticed between cross and native..this all goes to show, autoconf totally breaks down in the fact of cross builds, would be good to just not use it...oh well) 2010-06-02 14:04 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: a tiny bit more reformat 2010-06-02 13:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: a little reformating, mainly newlines before and after the tracing code 2010-06-02 13:50 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: in extract/insert_[m]n, trace m and n, under -y 2010-06-02 13:27 jkrell * m3-sys/m3cc/src/m3makefile: fill in a bunch of '-with-gnu-as -with-gnu-ld' for cross builds to e.g. avoid the warning that visibility isn't supported and is being ignored; use Makefile instead of .configure-done 2010-06-02 11:12 jkrell * m3-sys/cminstall/src/config-no-install/: Solaris.common, Unix.common: just building cm3 for SOLgnu uses too many PIC slots for small PIC so go back to big PIC..I get the feeling ELF is kind of lame.. 2010-06-02 09:06 jkrell * m3-sys/cm3ide/.cvsignore: add more 2010-06-02 08:58 jkrell * m3-sys/cm3ide/.cvsignore: add .cvsignore 2010-06-02 08:46 jkrell * m3-comm/tcp/src/POSIX/TCP.m3: use socklen_t, not int socklen_t is chosen for convenience, not to match the underlying platform, therefore it is INTEGER or Word.T, and the underlying C wrappers copy back and forth 2010-06-01 20:21 jkrell * m3-sys/m3cc/gcc/gcc/tree-ssa-sink.c: fix uninitialized variable warning 2010-06-01 20:15 jkrell * m3-sys/m3cc/src/m3makefile: go back a version 2010-06-01 20:13 jkrell * m3-sys/m3cc/src/m3makefile: clean also mpc and zlib directories, use the Makefile as the 'configure done' file 2010-06-01 19:48 jkrell * m3-tools/m3tk/src/pl/M3LTypeToText.m3: again, initialize local: I suspect compiler is wrong, but backend would have to know that the fault proc is noreturn, maybe that is doable? 2010-06-01 19:47 jkrell * m3-tools/m3tk/src/pl/M3LTypeHash.m3: initialize local: I suspect compiler is wrong, but backend would have to know that the fault proc is noreturn, maybe that is doable? 2010-06-01 19:43 jkrell * m3-sys/cm3ide/src/misc/BrowserDB.m3: fix use of uninitialized local that appears to occur if input file is malformed 2010-06-01 19:15 jkrell * m3-sys/m3tools/src/M3Const.m3: initialize locals: compiler is wrong, but it would have to know that Err never returns in order to figure it out 2010-06-01 19:12 jkrell * m3-ui/ui/src/vbt/VBTClass.m3: initialize local: compiler is wrong but this is a classic case that compilers typically fail on 2010-06-01 18:26 jkrell * m3-sys/m3front/src/misc/Scanner.m3: initialize local: compiler is wrong but ok 2010-06-01 18:23 jkrell * m3-sys/m3back/src/M3x86.m3: initialize locals 2010-06-01 18:19 jkrell * m3-libs/sysutils/src/System.m3: fix use of uninitialized local 2010-06-01 14:39 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: go back a version, the compiler complaint was wrong and for now I have to be less aggressive because I can't figure out the problem in e.g. libm3/Formatter.m3 2010-06-01 13:35 jkrell * m3-libs/libm3/src/: geometry/PolyRegion.m3, os/POSIX/ProcessPosixCommon.m3, rw/Rd.m3, rw/RdUtils.m3: initialize locals 2010-06-01 12:56 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: slight change due to compiler warning..but it definitely seemed ok before ? 2010-06-01 12:51 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: initialize locals, warning from modified compiler (though said compiler seems not always correct) 2010-06-01 12:41 jkrell * m3-libs/m3core/src/convert/Convert.m3: initialize locals; I get warnings that some not quite all, are used uninitialized if I remove the volatile/sideeffects on every load/store in parse.c 2010-06-01 12:32 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: major: remove the add_stmt from m3cg_pop Compiling m3core each way, and optimized and not, the only thing add_stmt does is add unnecessary code (and it survives optimization). Notice that for years the decision to call add_stmt wasn't right and nobody noticed, which isn't conclusive of course.. 2010-06-01 12:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: minor: put space in -v output, add const, change char* to char[] to save the pointer 2010-06-01 12:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse.c: globals don't need to be initialized to 0, it is the default; removing the initialization is even sometimes an optimization, depending on the compiler 2010-06-01 12:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: spaces between macro parameters 2010-06-01 12:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: parentheses around uses of macro parameters 2010-06-01 12:08 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: It turns out extracting 0 bits is allowed. Test p137 does it. I had put in an assert to disallow it. For this case, alwas return 0, rather than risk "over shifting". This seems to be correct per: http://www.cs.purdue.edu/homes/hosking/m3/reference/word-intf.html We take n (0) bits from the input and set the rest of the bits (all of them) to 0. 2010-06-01 03:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use the provided typedef for get_alias_set for 4.3 use the default get_alias_set for 4.5; this would probably be good for 4.3 also 2010-06-01 02:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: combine common code in m3_build_type 2010-06-01 02:42 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove line I didn't mean to commit 2010-06-01 02:35 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove some newlines in m3_build_type 2010-06-01 02:29 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Check that we don't throw out stuff that we previously kept. 2010-06-01 01:58 jkrell * m3-sys/m3front/src/builtinOps/: IsType.m3, Narrow.m3, Typecode.m3: do the tag checking using unsigned integers to satisfy m3cc/configure -enable-checking=all and wants the three types to all be the same (two inputs, one output) but we make the output unconditionally unsigned, so the inputs should also be unsigned this seems reasonable, but kind of reasonable either way 2010-06-01 01:54 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: leave m3cg_pop fixed and optimize the common subexpression, print more typenames in tracing (I meant to get them all the first time) 2010-05-31 12:20 jkrell * m3-sys/m3cc/gcc/gcc/: genpeep.c, loop-doloop.c, tree-chrec.h, vmsdbgout.c, xcoffout.c: fix warnings: tree-chrec.h: uninitialized locals the rest: Darwin ranlib "no symbols" see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44308 which they won't fix and http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44307 2010-05-31 11:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: include typenames in trace all -y output, and some altering of trace output 2010-05-31 06:41 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix use of DECL_STATIC_CHAIN with 4.5 to not access violate/segfault all the time on non-nested functions 2010-05-31 00:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: #ifdef GCC45 gcc_assert((parent == 0) == (lev == 0)); DECL_STATIC_CHAIN (parent) = (lev > 0); #endif similar to C 4.5 2010-05-30 16:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: set type mode properly for gcc 4.5, fixes a few errors in m3core (which is not! all compiling yet, I misspoke) 2010-05-30 15:47 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: POINTER_PLUS_EXPR really does want unsigned sizetype, not even signed ssizetype. If I'm given a signed type, I first convert to ssizetype. Then either way I convert to sizetype. 2010-05-30 15:36 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: and remove tabs from othe than the starts of lines 2010-05-30 15:31 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Thoroughly detab, at least from the starts of lines. Tabs do not render consistently. I did this carefully enough to notice that one of the tabs was meant to be 4 spaces. As well cvs -z3 diff -uw shows no changes. 2010-05-30 15:07 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: gcc 4.5 work in progress mainly that gcc 4.5 insists on using POINTER_PLUS_EXPR to add to a pointer, and the second operand to be size_t (or maybe ptrdiff_t) These changes are probably ok for 4.3 but #ifdefed anyway. Also gcc 4.5 provides TREE_NO_TRAMPOLINE which is just like what we were using TREE_STATIC for (both in implementation and meaning! They use the static flag.) 2010-05-28 21:22 jkrell * m3-sys/m3cc/src/m3makefile: for now, don't optimize 4.5; fix shipping 4.5 (based on Olaf's WS/PREBUILT_CM3CG code), a bit gnarly, and notice that the .M3SHIP file can't be moved and so varying host/target and doing multiple builds still needs to be serialized 2010-05-28 15:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: aha, now I can compile m3core 2010-05-28 14:59 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: move the comment up one line, esp. to fit in 80 columns 2010-05-28 14:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: better form of previous -- now compared to release branch this function has I think just one extra line, the sleazy #undef -- maybe should have a new local really.. 2010-05-28 14:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: hack it a bit so that we open the correct file which gets us as far as asking gcc to generate code and it fails here: if (pass->type == SIMPLE_IPA_PASS || pass->type == IPA_PASS) gcc_assert (!cfun && !current_function_decl); else gcc_assert (cfun && current_function_decl); in execute_one_pass in passes.c This could be better but I'm being slow -- we don't have to fork this entire function. 2010-05-28 10:09 jkrell * m3-sys/m3cc/src/m3makefile: (much ado about not much) Support cm3 -DGCC45 for using gcc-4.5. The code is unnecessarily subtle but ok. GCC45 = defined("GCC45") doesn't define GCC45 till after evaluating it. If people don't like it, then we can say: if defined("GCC45") GCC45 = TRUE else GCC45 = FALSE end or terser but leaves extra side affects xGCC45 = defined("GCC45") GCC45 = xGCC45 Put gcc 4.5 in a separate build_dir. My intent was AMD64_DARWIN-4.5. I get AMD64_DARWIN_AMD64_DARWIN-4.5 instead. I understand why but chose to leave it. I reuse the cross logic where FOO_BAR is host=FOO, target=BAR, but for native we normally just use FOO. (oh how I wish gcc -target=all or -targets=foo,bar,abc,def,ghi would work and share as much object code as possible..) 2010-05-28 09:56 jkrell * m3-sys/m3cc/src/m3makefile: support for using gcc 4.5 (currently 4.5.0) You make a one line edit to m3makefile to set GCC45 = TRUE. Probably we should support command line. Probably we should use a different build_dir. I tried briefly but failed. This is hopefully only temporary. It links gmp, mpfr, mpc directories into gcc-4.5. It copies the m3cg directory from gcc to gcc-4.5 (same as gcc-apple). (If you get errors, be sure *not* to edit the file the error is in, but the "normal" one in the "plain" gcc directory.) It copies m3gty45.h (5) to gcc-4.5/gcc/m3cg/m3gty43.h (3). etc. I don't claim it is pretty or completely trivial but it is reasonable and provides what I want -- ability to easily switch between 4.3 and 4.5. (Really I want separate build_dirs. Though you can just rename away the build_dir and then cd into it and run make, don't have to keep running cm3.) Note that the result: - doesn't have all patches applied tree-nested.c gives me particular pain - the result doesn't work yet for other not yet known reasons, it fails up front on anything with internal errors But it does compile and link at least, that is something. 2010-05-28 09:17 jkrell * m3-sys/m3cc/src/platforms.quake: amd64-apple-darwin8 => amd64-apple-darwin 2010-05-28 08:12 jkrell * m3-sys/m3cc/gcc/gcc/config/i386/i386.md: output rep consistently even for the ret case, even though that is unusual in its optionality 2010-05-28 07:22 jkrell * m3-sys/m3cc/gcc/: gcc/po/be.po, gcc/po/ca.po, gcc/po/da.po, gcc/po/de.po, gcc/po/el.po, gcc/po/es.po, gcc/po/fr.po, gcc/po/ja.po, gcc/po/nl.po, gcc/po/ru.po, gcc/po/rw.po, gcc/po/sr.po, gcc/po/sv.po, gcc/po/tr.po, gcc/po/zh_CN.po, gcc/po/zh_TW.po, libcpp/po/be.po, libcpp/po/ca.po, libcpp/po/da.po, libcpp/po/de.po, libcpp/po/el.po, libcpp/po/es.po, libcpp/po/fr.po, libcpp/po/ja.po, libcpp/po/nl.po, libcpp/po/rw.po, libcpp/po/sv.po, libcpp/po/tr.po, libcpp/po/uk.po, libcpp/po/vi.po, libcpp/po/zh_CN.po, libcpp/po/zh_TW.po: not needed 2010-05-27 15:58 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: go back to input_filename vs. main_input_filename 2010-05-27 15:49 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: #define M3_USE_MAPPED_LOCATION instead of #define M3_USE_MAPPED_LOCATION 1 2010-05-27 15:47 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/config-lang.in: go back a version for the 4.3 gty syntax 2010-05-27 15:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in, config-lang.in, parse.c: work in progress getting this to work with a merged gcc 4.5 (which I have on my machine) This lets it compile and get as far as: Starting program: /Users/jay/dev2/cm3/m3-sys/m3cc/AMD64_DARWIN/gcc/m3cgc1 -mno-align-double -quiet -fno-reorder-blocks -funwind-tables -fpic -m64 -gstabs+ RTHooks.ic -o RTHooks.is Reading symbols for shared libraries +++. done ../src/runtime/common/RTHooks.i3: In function 'RTHooks_I3': ../src/runtime/common/RTHooks.i3:146:0: internal compiler error: in execute_one_pass, at passes.c:1523 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. some of the changes look suspicious, like not setting type_mode. All the changes should be looked at further. Without other changes, this should be no-op. 2010-05-27 13:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty43.h, m3gty45.h: go ahead and use 70+ columsn 2010-05-27 13:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: Make-lang.in, config-lang.in, m3gty43.h, m3gty45.h, parse.c: GCC 4.2/4.3 require: struct foo GTY()) { int foo; } GCC 4.5 requires: struct GTY()) foo { int foo; } It does not appear to be amenable to #ifdef, since the tool that scans for the GTY(()) is one of those infamous not-a-C-parser programs (which is everything except actual C compilers), so split up the content into separate files. The annotation syntax on global variables and typedefs appear to be the same, so those are left alone. This is yet a no-op, as moving to GCC 4.5 is work in progress. 2010-05-27 12:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty42.h, m3gty43.h, m3gty45.h: reduce 2010-05-27 12:34 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: m3gty42.h, m3gty43.h, m3gty45.h, parse42.c, parse43.c, parse45.c: rename these files hopefully what I'm after will be apparent, later 2010-05-27 12:24 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: remove enum m3_tree_index, enum M3VA_* They serve no apparent purpose, and m3_tree_index in particular inhibits debuggability and maintainability (of m3cg itself). 2010-05-26 21:57 jkrell * m3-sys/m3cc/src/m3makefile: change parameter order to configure to -build/-host/-target, seems more sensible, meaning unchanged 2010-05-26 21:56 jkrell * m3-sys/m3cc/src/: m3makefile, platforms.quake: make native AMD64 cm3cg for AMD64_DARWIN 2010-05-26 16:18 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: undo the change regarding x_nonlocal_goto_handler_labels; I hit a problem, and I don't know that cfun == current_function_decl 2010-05-26 15:50 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse42.c, parse43.c, parse45.c: cut them down, not yet active 2010-05-26 15:19 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/: parse42.c, parse43.c, parse45.c: initial copies of pars.c These will then be cut down dramatically and then include parse.c for their bulk of the code. 2010-05-26 14:09 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use the macro nonlocal_goto_handler_labels instead of DECL_STRUCT_FUNCTION (current_function_decl)->has_nonlocal_label for source compatibility with 4.5, 4.3, 4.2. Hopefully it means the same thing. 2010-05-26 13:29 jkrell * m3-sys/m3cc/gcc/mpfr/configure: go back a version until/unless I can demonstrate the problem and engage the autoconf folks.. 2010-05-26 13:05 jkrell * m3-sys/m3cc/gcc/mpfr/configure: reapply nohup fix, see: http://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3cc/gcc/mpfr/configure.diff?r1=1.1;r2=1.2 2010-05-26 12:59 jkrell * m3-sys/m3cc/gcc/mpfr/: AUTHORS, BUGS, ChangeLog, FAQ.html, INSTALL, Makefile.am, Makefile.in, NEWS, 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.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, 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-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, tests/Makefile.am, tests/Makefile.in, tests/cmp_str.c, tests/memory.c, tests/mpf_compat.c, tests/mpf_compat.h, tests/mpfr-test.h, tests/mpfr_compat.c, tests/reuse.c, tests/rnd_mode.c, tests/tabs.c, tests/tacos.c, tests/tacosh.c, tests/tadd.c, tests/tadd1sp.c, tests/tadd_ui.c, tests/tagm.c, tests/tasin.c, tests/tasinh.c, tests/tatan.c, tests/tatanh.c, tests/tcan_round.c, tests/tcbrt.c, tests/tcheck.c, tests/tcmp.c, tests/tcmp2.c, tests/tcmp_d.c, tests/tcmp_ld.c, tests/tcmp_ui.c, tests/tcmpabs.c, tests/tcomparisons.c, tests/tconst_catalan.c, tests/tconst_euler.c, tests/tconst_log2.c, tests/tconst_pi.c, tests/tcopysign.c, tests/tcos.c, tests/tcosh.c, tests/tcot.c, tests/tcoth.c, tests/tcsc.c, tests/tcsch.c, tests/tdim.c, tests/tdiv.c, tests/tdiv_ui.c, tests/teint.c, tests/teq.c, tests/terf.c, tests/tests.c, tests/texceptions.c, tests/texp.c, tests/texp10.c, tests/texp2.c, tests/texpm1.c, tests/tfactorial.c, tests/tfits.c, tests/tfma.c, tests/tfms.c, tests/tfrac.c, tests/tgamma.c, tests/tgeneric.c, tests/tgeneric_ui.c, tests/tget_d.c, tests/tget_d_2exp.c, tests/tget_f.c, tests/tget_ld_2exp.c, tests/tget_set_d64.c, tests/tget_sj.c, tests/tget_str.c, tests/tget_z.c, tests/tgmpop.c, tests/thyperbolic.c, tests/thypot.c, tests/tinits.c, tests/tinp_str.c, tests/tinternals.c, tests/tisnan.c, tests/tisqrt.c, tests/tj0.c, tests/tj1.c, tests/tjn.c, tests/tl2b.c, tests/tlgamma.c, tests/tlngamma.c, tests/tlog.c, tests/tlog10.c, tests/tlog1p.c, tests/tlog2.c, tests/tminmax.c, tests/tmul.c, tests/tmul_2exp.c, tests/tmul_ui.c, tests/tnext.c, tests/tout_str.c, tests/toutimpl.c, tests/tpow.c, tests/tpow3.c, tests/tpow_all.c, tests/tpow_z.c, tests/trandom.c, tests/tremquo.c, tests/trint.c, tests/troot.c, tests/tround_prec.c, tests/tsec.c, tests/tsech.c, tests/tset.c, tests/tset_d.c, tests/tset_exp.c, tests/tset_f.c, tests/tset_ld.c, tests/tset_q.c, tests/tset_si.c, tests/tset_sj.c, tests/tset_str.c, tests/tset_z.c, tests/tsgn.c, tests/tsi_op.c, tests/tsin.c, tests/tsin_cos.c, tests/tsinh.c, tests/tsqr.c, tests/tsqrt.c, tests/tsqrt_ui.c, tests/tstckintc.c, tests/tstrtofr.c, tests/tsub.c, tests/tsub1sp.c, tests/tsub_ui.c, tests/tsubnormal.c, tests/tsum.c, tests/tswap.c, tests/ttan.c, tests/ttanh.c, tests/ttrunc.c, tests/tui_div.c, tests/tui_pow.c, tests/tui_sub.c, tests/tversion.c, tests/ty0.c, tests/ty1.c, tests/tyn.c, tests/tzeta.c, tests/tzeta_ui.c: gcc 4.5.0 wants mpfr at least 2.3.1. We had 2.3.0. Current is 2.4.2. Here update to 2.3.2. Arguably we should use the minimum required: 2.3.1. Arguably we should use the latest: 2.4.2. Here I have chosen the latest minor revision greater or equal to the minimum required. This overwrites whatever we had without any merging. 2010-05-26 10:16 jkrell * m3-sys/m3cc/gcc/gcc/tree-nested.c: remove dead code that we added 2010-05-26 10:15 jkrell * m3-sys/m3cc/gcc/gcc/tree-nested.c: remove whitespace only diff vs. baseline gcc 2010-05-21 23:18 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CerrnoC.c, C/Common/CstdioC.c, C/Common/CstdlibC.c, Csupport/Common/dtoa.h, Csupport/Common/hand.c, Csupport/Common/test_hand.c, Csupport/big-endian/dtoa.c, Csupport/little-endian/dtoa.c, runtime/DS3100/RTStackC.c, runtime/POSIX/RTOSbrk.c, runtime/POSIX/RTOSmmap.c, runtime/POSIX/RTSignalC.c, runtime/POSIX/test_signal.c, runtime/SOLsun/RTStackC.c, runtime/WIN32/RTOSc.c, runtime/common/RTBuiltin.c, runtime/common/RTIOc.c, runtime/common/RTMiscC.c, runtime/common/RTProcessC.c, runtime/common/RTUntracedMemoryC.c, runtime/ex_frame/RTStackC.c, thread/Common/ThreadDebug.c, thread/POSIX/ThreadPosixC.c, thread/POSIX/test_timer.c, thread/PTHREAD/ThreadApple.c, thread/PTHREAD/ThreadFreeBSD.c, thread/PTHREAD/ThreadPThreadC.c, thread/PTHREAD/interix_context_on_signal_stack.c, thread/PTHREAD/test_interix.c, time/POSIX/TimePosixC.c, unix/Common/Uconstants.c, unix/Common/UnixC.c: embrace reuse/monolithism -- #include m3core.h more, #include any other files independently less 2010-05-21 13:35 jkrell * m3-sys/m3cc/src/patches/openbsd/patch-gcc_tree-ssa-pre_c: no need to assign 0 to pool after NULL is already assigned to it 2010-05-21 13:21 jkrell * m3-libs/m3core/src/: m3core.h, C/Common/CstdioC.c, C/Common/CstdlibC.c, C/Common/CstringC.c, Csupport/Common/hand.c, Csupport/big-endian/dtoa.c, Csupport/little-endian/dtoa.c, runtime/POSIX/RTOSbrk.c, runtime/POSIX/RTOSmmap.c, runtime/POSIX/RTSignalC.c, runtime/WIN32/RTOSc.c, runtime/common/RTBuiltin.c, runtime/common/RTIOc.c, thread/Common/ThreadDebug.c, thread/POSIX/ThreadPosixC.c, thread/PTHREAD/ThreadFreeBSD.c, thread/PTHREAD/ThreadPThreadC.c, time/POSIX/DatePosixC.c, unix/Common/Umman.c, unix/Common/UnixC.c, unix/Common/Usocket.c: 'size_t' => 'WORD_T' for ALPHA32_VMS 2010-05-21 13:02 jkrell * m3-libs/m3core/src/: m3core.h, C/m3makefile: fix Win32 and cleanup 2010-05-20 15:37 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: '[ ]' is easier to see in certain fonts than '[]' (whitespce only) 2010-05-20 15:36 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: partial undo to be cautious and because that wouldn't have worked; this way -shared remains early, in case that matters 2010-05-20 15:32 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: pass 'options' on to link, put -shared in it instead of a separate variable, and only compute that if shared (infintesimal compile time optimization) 2010-05-20 15:30 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: let's try small model pic instead of PIC, it is smaller on Sparc and I think PowerPC but can possibly hit capacity limits on the number of imports or such 2010-05-20 15:17 jkrell * scripts/python/pylib.py: add SPARC32/64_LINUX assembler switches based on what gcc does 2010-05-20 14:54 jkrell * m3-libs/sysutils/src/POSIX/: FSUnixC.c, SystemPosixC.c: #pragma gcc visibility #define _REENTRANT for all systems (like m3core.h, which we deliberately don't use here so we can bootstrap against old release) 2010-05-20 14:50 jkrell * m3-libs/m3core/src/: m3core.h, Csupport/Common/dtoa.h, Csupport/Common/hand.c, thread/PTHREAD/ThreadApple.c, thread/PTHREAD/ThreadFreeBSD.c, thread/PTHREAD/ThreadPThreadC.c, unix/Common/Uconstants.c, unix/Common/UnixC.c, unix/Common/UnixLink.c, unix/Common/UstatC.c: somewhat explicit visibility (#pragma isn't exactly explicit) and reduce visibility esp. in ThreadPThread.c "visibility" -- whether or not something is exported 2010-05-20 14:38 jkrell * m3-libs/m3core/src/runtime/common/: RTBuiltin.c, RTIOc.c, RTMiscC.c, RTUntracedMemoryC.c: size_t => WORD_T to account for ALPHA32_VMS that has 32bit size_t and 64bit pointer WORD_T is my own made up name for an unsigned integer that fits an integer, in m3core.h (and INTEGER is my name for signed integer that holds pointer) (In RTBuiltin.c use local #if/typedef since it doesn't #include anything) 2010-05-20 14:33 jkrell * m3-libs/m3core/src/runtime/common/RTLinkerC.c: remove empty #ifdef/#endif block (really, #endif is on line immediately after #ifdef) 2010-05-18 11:54 jkrell * m3-sys/m3cc/src/m3makefile: Solaris linker seems to support .hidden (only testd on 2.10/sparc 2010-05-18 11:52 jkrell * m3-sys/m3cc/src/m3makefile: Solaris assembler seems to support .hidden 2010-05-17 13:46 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: add link to gcc bug 2010-05-17 12:16 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: wordwrap new comment better 2010-05-17 12:13 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: Only export exported functions. And really, I'd like to stop referencing non-imported functions via GOT, but I can't get it to work. Work on: Don't export everthing from shared objects. Ideally -- only stuff in *.i3 files, and with "Interface" not "interface". Work on: Don't go through PLT/GOT for stuff defined in same module (which includes stuff exported or not). Linux/x86: before: jay@xlin2:~$ readelf -s /cm3/lib/libm3core.so | grep -i expand |wc -l 18 jay@xlin2:~$ readelf -s /cm3/lib/libm3core.so | grep -v UND |wc -l 4564 after: jay@xlin2:~$ readelf -s /cm3/lib/libm3core.so | grep -i expand |wc -l 9 jay@xlin2:~$ readelf -s /cm3/lib/libm3core.so | grep -v UND |wc -l 4218 (everything is listed twice, it turns out) ("expand" I just happen to know is often part of unexported function names, when there are home-grown growable arrays present) MacOSX/x86: before: jbook2:m3cg jay$ otool -Tv /cm3.x86/lib/libm3core.dylib | wc -l 1852 jbook2:m3cg jay$ otool -Tv /cm3.x86/lib/libm3core.dylib | grep -i expand | wc -l 9 after: jbook2:m3cg jay$ otool -Tv /cm3.x86/lib/libm3core.dylib | grep -i expand jbook2:m3cg jay$ otool -Tv /cm3.x86/lib/libm3core.dylib | wc -l 1506 There is possibly more to be done here, but this is a good start. Gcc doesn't seem to support what we want, unless we communicate more information around that we have, and even then I'm not sure. In particular, anything in the same shared object, we don't want to refer to via the GOT/PLT. We don't compile "shared objects" though, we compile individual source files, without knowledge as to what other source files they will be linked to. see (from me): http://gcc.gnu.org/ml/gcc-help/2010-05/msg00148.html (more useful: readelf -s /cm3/lib/libm3core.so | grep -v UND | grep GLOBAL | awk '{print $8}' | sort |uniq |wc -l ) 2010-05-17 08:48 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: avoid more buffer overflows when there are long identifiers 2010-05-16 11:51 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix off by one bug: allow 100 exported interfaces, not just 99 2010-05-16 11:38 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: use a shorter name 2010-05-16 11:37 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: When exporting more than 100 interfaces, error immediately, clearly, predictably, instead of silently overrunning an array. Better might be to support an arbitrary number such as with a growable array (gcc's 'VEC'?), or, since this appears to only be used for debugging (?) set the max to 256 and use an unsigned char to count it? 2010-05-15 10:35 jkrell * m3-sys/m3back/src/: TWordN.m3, TIntN.m3: one whitespace 2010-05-15 09:42 jkrell * m3-libs/m3core/src/C/m3makefile: add comment 2010-05-15 09:42 jkrell * m3-libs/m3core/src/C/m3makefile: experimental: force Win32 to 32bit directory This is because the main difference between the 32bit and 64bit directory is what size "long" is, and on 64bit Windows, "long" is 32 bits. Imho the "long" type is to be avoided, but it does get used. A lot of code assumes it can hold a pointer, but that is false. (And there I was in a similar place, thinking "size_t" could hold a pointer, but that is also false, though in a much less interesting way.) Ultimately these "C types" are mostly intended for header cloning. We should probably give up on porting m3back any time soon and just use mingw. 2010-05-15 09:11 jkrell * m3-libs/libm3/src/os/POSIX/SocketPosixC.c: some small fixes, esp. wrt comparison to -1 vs. < 0 2010-05-15 08:49 jkrell * m3-libs/libm3/src/os/POSIX/SocketPosixC.c: only zero the fields we read 2010-05-15 08:48 jkrell * m3-libs/libm3/src/os/POSIX/SocketPosixC.c: stat_t => struct stat 2010-05-15 08:17 jkrell * m3-db/odbc/src/WIN32/SQLtypes.i3: judging from my MacOSX 10.5, SQLINTEGER and SQLUINTEGER are supposed to be 32bits, not pointer-sized. Make it so. I found this by removing "long" from Ctypes/BasicCtypes. I probably can't remove it, probably will need to add to 32bit, 64bit, also a Win32 version of BasicCtypes where long is always 32 bits. 2010-05-15 08:14 jkrell * m3-db/odbc/src/WIN32/SQLtypes.i3: use shorter names: unsigned_long_int => unsigned_long short_int => short signed_short_int => short long_int => long signed_int => int etc. 2010-05-15 07:25 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: duh: inserting 0 bits is perfectly sensible, adjust assertions (particularly where they were commented out) 2010-05-15 06:14 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: extract_mn(m=0, n=0) appears to always convert the value to unsigned which seems wrong, so assert that it never happens, that n > 0; n <= is pointless, and never occurs while at it: assert(m >= 0) and same in other extract/insert function but notice that we are asked to insert 0 bits sometimes What does that mean?! 2010-05-15 05:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: rename 'i' to 'm' in m3_do_fixed_extract to ease inlining it into its only caller 2010-05-15 05:44 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: move m3_do_fixed_extract to right before its only caller 2010-05-15 05:42 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: put extract_mn back like it is in release, like before: http://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-sys/m3cc/gcc/gcc/m3cg/parse.c.diff?r1=1.127;r2=1.128 2010-05-14 11:15 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: fix for SPARC64_LINUX 2010-05-14 11:10 jkrell * scripts/python/pylib.py: fix OpenBSD processor detection: missing newline; and make it case sensitive 2010-05-14 09:35 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c (release_branch_cm3_5_8): change C++ slashslash comment to C slashstar comment 2010-05-14 08:55 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: fix the Linux (and Cygwin and OSF) case oops, fix warning about unused static function 2010-05-14 08:42 jkrell * m3-sys/cminstall/src/config-no-install/: SPARC32_LINUX, SPARC64_LINUX: make assembler match what the C compiler runs (a good overall direction but needs testing per target, in this case I'm trying out SPARC64_LINUX to compare with the other broken SPARC64 platforms, and I know SPARC32_LINUX is little used, and I'll test it shortly anyway 2010-05-14 08:13 jkrell * m3-libs/libm3/src/platforms.quake: fix trivial copy/paste error with regard to SPARC64_LINUX 2010-05-14 07:02 jkrell * m3-sys/m3cc/src/gnucc.common: whitespace only 2010-05-14 07:02 jkrell * m3-sys/m3cc/src/m3makefile: add more SPARC64 platforms 2010-05-14 07:00 jkrell * m3-sys/m3cc/src/m3makefile (release_branch_cm3_5_8): add more SPARC64 targets 2010-05-14 06:59 jkrell * m3-sys/m3cc/src/m3makefile (release_branch_cm3_5_8): some minor stuff from head 2010-05-14 06:59 jkrell * m3-sys/m3cc/src/: gnucc.common, gnumake.common (release_branch_cm3_5_8): adaptions for opencsw environment from head 2010-05-14 06:54 jkrell * m3-sys/cminstall/src/config-no-install/: PPC32_OPENBSD, SPARC64.common, SPARC64_SOLARIS: experimental changes to not yet working/supported targets 2010-05-14 06:50 jkrell * m3-sys/m3cc/src/m3makefile: remove -with-arch-32, it isn't in this version of gcc xIsOpenBSD => Platform_IsOpenBSD 2010-05-13 22:41 wagner * scripts/regression/hudson_build_system.sh (release_branch_cm3_5_8): allow CM3CG to be preset 2010-05-13 12:34 wagner * scripts/regression/defs.sh (release_branch_cm3_5_8): conditional ignore ssh unavailability 2010-05-13 12:20 jkrell * scripts/python/pylib.py: fix sparc/Solaris 2010-05-13 11:08 jkrell * m3-sys/m3cc/src/m3makefile: gcc on OpenBSD/sparc64 invokes as: as -V -s -xarch=v8plusa -64 -no-undeclared-regs when I did that with cm3 bootstrap, I got all those familiar errors about undeclare registers, so throw in gcc_cv_as_sparc_register_op=yes for that target also. 2010-05-13 11:05 jkrell * m3-libs/m3core/src/time/POSIX/DatePosixC.c: and remove now-unused #define 2010-05-13 11:04 jkrell * m3-libs/m3core/src/time/POSIX/DatePosixC.c: static functions don't need explicit calling conventions 2010-05-13 11:04 jkrell * m3-libs/m3core/src/time/POSIX/DatePosixC.c: Posix says that struct timeval.tv_sec is a time_t. But it isn't on OpenBSD: DatePosixC.c: In function `DatePosix__FromTime': DatePosixC.c:52: warning: passing arg 1 of `localtime' from incompatible pointer type DatePosixC.c:52: warning: passing arg 1 of `gmtime' from incompatible pointer ty And really we were doing a lot more than needed here anyway. 2010-05-13 10:32 jkrell * m3-sys/m3cc/src/m3makefile: go back a version: put back gcc_cv_as_sparc_register_op=yes for SPARC64_SOLARIS, wierd.. 2010-05-13 09:41 jkrell * m3-ui/juno-2/juno-app/src/m3makefile: slightly further generalize the cross problem here -- crossing from AMD64_SOLARIS to I386_SOLARIS can run I386_SOLARIS PklFonts, this also needs more attention for a more complete fix -- what hosts can run what targets 2010-05-13 09:35 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, Solaris.common: drat: importing a library that imported a system library only after running configure_system_libs, does not work: == package /Users/jay/dev2/cm3/m3-www/proxy == "/cm3.x86/pkg/X11R4/I386_DARWIN/.M3EXPORTS", line 23: quake runtime error: Unable to use definition of "SYSTEM_LIBS" from configuration file "/Users/jay/dev2/cm3/m3-sys/cminstall/src/config-no-install/I386_DARWIN": does not define a value for "X11" for now, therefore, on I386_SOLARIS and PPC64_DARWIN always run configure_system_libs up front, slow but ok on the rest, just do what we were doing -- assuming what was present This needs more looking into, as for example it was "threatening" to improve things, e.g. look automatically in known but not always present locations for stuff, only if asked for. (e.g. Motif on Darwin) If I'm not completely out in left field, then a solution is make this more complete and have cm3 output "configure_system_libs" before "import_sys_lib()" or something maybe more sophisticated, such as callers would unconditionally import_sys_lib() and internally cm3 would call configure_system_libs, and then if the library isn't present, silently do nothing for this directory, and anything that imports it maybe with a warning (actually it would maybe export a stub .M3EXPORTS, again with "failed_import_sys_lib") so that the later importer would get a sensible warning: not building foo, because it imports bar, which is dependent on abc, which isn't present 2010-05-13 09:24 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, ARM.common, ARM_DARWIN, Darwin.common, I386_DARWIN, PPC64_DARWIN, PPC_DARWIN: better factoring of finding Darwin assembler slightly better factoring of ARM_DARWIN apply some possible fixes to ARM_DARWIN to use Apple tools (I didn't have them at the time..need to get back to this...) deal with PPC64_DARWIN's varying availability of stuff (right?) as demonstrated with I386_SOLARIS and OpenGL (slightly different details but basically the same) add Motif as similarly optional -- I have LessTiff in /usr/local and maybe Fink or DarwinPorts has it? 2010-05-13 08:35 jkrell * m3-sys/cminstall/src/config-no-install/I386_DARWIN: fix I386_DARWIN: add FileExists function 2010-05-13 08:12 jkrell * m3-sys/: cminstall/src/config-no-install/SPARC64_SOLARIS, m3cc/src/m3makefile: On Solaris/sparc64, you have to declare what you use registers g2 and g3 for, such as "#scratch". cm3cg seems to often fail to do this. Resulting in the assembler giving errors. To work around this, and because it is unclearly recommended anyway, just don't use these registers at all. Until/unless the real fix is found. Maybe with a newer gcc, but I couldn't find evidence. A repro using C and gcc 4.5.0 would help much. Note that cm3cg doesn't always fail. The setting in m3cc/src/m3makefile did help. But not always. With this change I can now build a Solaris/sparc64 cm3. On 2.9 (couldn't do it anywhere before). But it just dumps core, oops. Possibly an alignment problem. SPARC64_SOLARIS: m3back_flags = "-mno-app-regs" m3cc/src/m3makefile: remove gcc_cv_as_sparc_register_op=yes with no users left, remove m3cc_env, get_env 2010-05-13 07:51 jkrell * m3-sys/m3cc/gcc/gcc/config/i386/: i386.c, i386.h, sol2.h: simpler version of before: it is fine to just always output the semicolon gcc might end up autoconfiguring this, but I think that's unnecessary 2010-05-13 07:49 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: fix: commited version had an incomplete edit that I ended up deciding not to make 2010-05-12 12:41 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: fix typo 2010-05-12 12:41 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: call configure_system_libs right away on non-I386_SOLARIS, since it is cheap (do we do short circuit evaluation here?) 2010-05-12 12:30 jkrell * m3-db/db/src/m3makefile, m3-db/odbc/src/m3makefile, m3-db/odbc/test/src/m3makefile, m3-db/pgodbc/src/m3makefile, m3-db/postgres95/src/m3makefile, m3-db/postgres95/test/src/m3makefile, m3-games/columns/src-x11/m3makefile, m3-games/tetris/src/m3makefile, m3-sys/cminstall/src/config-no-install/Solaris.common, m3-sys/cminstall/src/config-no-install/Unix.common, m3-sys/cminstall/src/config-no-install/cm3cfg.common, m3-tools/gnuemacs/src/m3makefile, m3-tools/pp/src/m3makefile, m3-ui/PEX/src/m3makefile, m3-ui/X11R4/src/m3makefile, m3-ui/anim3D/src/m3makefile, m3-ui/motif/src/m3makefile, m3-ui/opengl/src/m3makefile, m3-ui/ui/src/xvbt/m3makefile: move configure_assembler, configure_c_compiler, configure_linker from Unix.common to cm3cfg.common introduce new function: configure_system_libs The idea is: any code like 'if SYSTEM_LIBS contains "OPENGL"' (or checking SYSTEM_LIBORDER, if that is possible/done) should first call configure_system_libs by default configure_system_libs does nothing However on I386_SOLARIS for example, configure_system_libs is a theoretically slow probe to see if OPENGL is present, and if so, it adds OPENGL to SYSTEM_LIBS. We could just always do this check and add to SYSTEM_LIBS ahead of time, but it seems expensive. We could also probably do a more efficient check just around file existance. However the way I have written the probe is nicely ignorant of the precise files. In particular ld -lfoo -o /dev/null succeeds if libfoo is found and fails otherwise. That is how the probe works. We could maybe change my mind about cminstall, but no, not yet at least. To make this more efficient, we might instead offer: proc configure_system_lib(name) This is both a bit of a breaking change and a bit experimental or needs more discussion. However the level at which it is breaking miniscule -- it is only current relevant for I386_SOLARIS. I have to look again: I didn't see the Mesa stuff on 2.9/x86/Solaris. If it is there, we can probe alternative for it as well. Currently we'll just skip the opengl package on Solaris 2.9 x86. 2010-05-12 09:57 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: rename GccMBits to WordSize 2010-05-11 11:47 jkrell * m3-ui/formsview/src/m3makefile: go back to 'program' from 'Program' 2010-05-11 10:44 jkrell * m3-sys/: cminstall/src/config-no-install/I386_DARWIN, m3cc/gcc/gcc/config/i386/i386.c, m3cc/gcc/gcc/config/i386/i386.h, m3cc/gcc/gcc/config/i386/i386.md, m3cc/gcc/gcc/config/i386/sol2.h, m3cc/gcc/gcc/config/i386/sync.md: Fix rep and lock prefix problem on Solaris 2.8/2.9/x86. This should also let Darwin/x86/10.4 use the assembler it comes with. see http://gcc.gnu.org/ml/gcc-patches/2010-05/msg00657.html see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44074 (not yet fixed in gcc, but patch based on the discussion) 2010-05-10 11:37 jkrell * www/uploaded-archives/targets.txt: add some more targets: ALPHA32_VMS, ALPHA64_VMS, I386_SOLARIS, AMD64_SOLARIS, SPARC64_SOLARIS, etc. 2010-05-10 11:20 jkrell * scripts/python/upload.sh: use this after make-dist.py; rsync just seemed to hang, so switch to scp 2010-05-10 10:51 jkrell * scripts/python/make-dist.py: split up tar from compress, that is, remove dependency on GNU tar extension; it is done in an odd way where the function that would run tar, sniffs the command line and extension 2010-05-10 09:24 jkrell * m3-ui/formsview/src/m3makefile: 'program' => 'Program' so it goes to bin instead of pkg) 2010-05-10 08:42 jkrell * m3-sys/m3middle/src/POSIX/CoffTime.c (release_branch_cm3_5_8): forgot to add this: copied from head; the point is to cut the dependency on m3core/Utime, so that release can be 'upgraded' from head 2010-05-10 08:37 jkrell * m3-sys/cminstall/src/config-no-install/: SOLgnu, SOLsun, SPARC32_SOLARIS: while I'm imagining TARGET = TARGET_ARCH & "_" & TARGET_OS plus possibly a "32" or "64" thrown in (we have ARCH="PPC" and "SPARC" for example), that is, each configuration is just two includes, for now just have SOLsun and SOLgnu do little more than include("SPARC32_SOLARIS") 2010-05-10 08:31 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_SOLARIS: copy of SOLsun but with TARGET changed need a little more factoring here 2010-05-10 08:29 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: m3back_flags need not be defined at all, such as for SPARC64_SOLARIS, when the various common pieces suffice 2010-05-10 07:59 jkrell * scripts/python/boot2.sh: a tiny bit of automation to use on the new target after you have used boot1.py to get a working cm3 It just builds m3cc/m3core/libm3, then upgrade, then everything 2010-05-10 07:35 jkrell * m3-sys/cminstall/src/config-no-install/AMD64_SOLARIS, m3-sys/cminstall/src/config-no-install/I386_SOLARIS, m3-sys/cminstall/src/config-no-install/SOLgnu, m3-sys/cminstall/src/config-no-install/SOLsun, m3-sys/cminstall/src/config-no-install/SPARC64_SOLARIS, m3-sys/cminstall/src/config-no-install/Solaris.common, m3-sys/m3cc/gcc/gcc/config/i386/sol2-10.h, m3-sys/m3cc/src/m3makefile, m3-sys/m3cc/src/platforms.quake, scripts/python/pylib.py: Use Sun assembler on I386_SOLARIS, AMD64_SOLARIS. Tweak various Solaris code around C and assembly flags. With an eye toward matching what gcc configured on Solaris to use Sun assembler would do. Including adding the -Qy flag, which isn't important. At least for x86, Sparc is still building to see, and Sparc64 hasn't been tried far enough. Switch to "small model PIC" by default. -xcode=pic13 vs. -xcode=pic32 Seems no ideal solution here. Downgrade a bit more from i586 to i686. I do wonder though, maybe we should only do i586 where users ask -- not all x86 platforms. Maybe a "phone home" feature that collects uname -a or such? Notice that Sun assembler has -K PIC flag, but passing it for x86/amd64 gcc output errors, and gcc doesn't pass it. Notice that though documentation says you can use two part GNU configurations like sparc-solaris2.10, I seem to get burned repeatedly doing that. Here I change to sparc-sun-solaris2.10 and that might have been necessary. There are supposed to be two sets of names, the user supplied possibly shorter one, and the "more canonical" one. Add -xF switch to Sun cc. It sounds like this might enable linker dead stripping. I should test out the difference. Remove the distinction in pylib.py between CC in make.sh vs. Makefile, now that I no longer hunt around for GNU as, but just always use Sun /usr/bin/ccs/as. Port this change from gcc 4.4.0: http://gcc.gnu.org/viewcvs?view=revision&revision=143758 2009-01-29 Rainer Orth * config/i386/sol2-10.h [!HAVE_AS_IX86_DIFF_SECT_DELTA] (ASM_OUTPUT_DWARF_PCREL): Define. Which fixes AMD64_SOLARIS -fPIC -funwind-tables with Sun assembler. 2010-05-10 05:20 jkrell * m3-sys/m3cc/src/platforms.quake: downgrade all i686 to i585 2010-05-10 02:51 jkrell * scripts/python/pylib.py: some work on NT/cygwin/mingw target renaming work on using GNU as for I386_SOLARIS, including looking for existing files with $(shell) in the Makefile However a properly configured gcc 4.5.0 doesn't have the problem so either I misconfigured or it is a fixed bug, so Solaris assembler probably after all. 2010-05-10 02:45 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: more futzing with assembler flags 2010-05-10 02:40 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_SOLARIS, I386_SOLARIS: fix newlines 2010-05-10 02:27 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: remove -K PIC from I386/AMD64_SOLARIS assembler, and -xarch from I386 2010-05-10 02:05 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_SOLARIS, I386_SOLARIS, Solaris.common: use GNU assembler for I386_SOLARIS, AMD64_SOLARIS, even if we have to hunt around a bit for it see http://gcc.gnu.org/ml/gcc/2010-05/msg00155.html (could limit this to AMD64_SOLARIS) 2010-05-10 02:02 jkrell * m3-sys/m3cc/src/m3makefile: back to GNU as for I386_SOLARIS, AMD64_SOLARIS see http://gcc.gnu.org/ml/gcc/2010-05/msg00155.html 2010-05-09 23:59 jkrell * scripts/python/pylib.py: make nicer Makefiles, add I386_LINUX, whitespace, comments 2010-05-09 22:36 jkrell * scripts/python/pylib.py: fix path to Sun cc 2010-05-09 22:18 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: fixes for I386_SOLARIS and probably AMD64_SOLARIS 2010-05-09 15:15 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: check for the known values: 14 on x86, 1 on sparc 2010-05-09 15:12 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: Solaris 9 doesn't define REG_PC but it does #define the incredibly short PC, so fallback to that -- so short, it makes me nervous, it could be some other symbol, and it could index out of bounds (we should probably do a simple check, maybe at preprocessor time)? 2010-05-09 14:47 jkrell * scripts/python/pylib.py: pentium => pentium_pro, for I386_SOLARIS 2010-05-09 14:37 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA32_VMS, ALPHA64_VMS, AMD64.common, ARM_DARWIN, I386.common, I386_INTERIX, MIPS64_OPENBSD, PA32_HPUX, PA64_HPUX, PPC.common, PPC64.common, SPARC.common, SPARC64.common, Unix.common: further decomposition of config files There are now the following variables: m3back_pic, defaults to -fPIC m3back_unwind_tables, defaults to -funwind-tables (This is in anticipation of using libunwind, some day.) m3back_m32, defaults to -m32 or empty, depending on word_size m3back_m64, defaults to -m64 or empty, depending on word_size m3back_debug, defaults to -gstabus+ m3back_optimize, defaults to -O2 -Wuninitialized (should be -O3)? as a result, most platforms don't have to set any flags if a platform needs a different debug format, it can set just m3back_debug if a 32bit platform does not work with -m32, it can set m3back_m32 to empty and so on for example I386_SOLARIS sets m3back_debug = "-gstabs" for example I386_INTERIX sets m3back_pic = "" if a platform wants to add other flags, use m3back_flags for example -mcpu and -march, though you can also piggyback off switches you want to turn off, e.g.: MIPS64_OPENBSD:m3back_m64 = "-mabi=64" Note that this logic is currently in Unix.common and therefore Mingw, Cygwin, VMS don't partake (none of this is relevant to native NT386) add -mpreferred-stack-boundary=2 to I386.common I386_SOLARIS is seeing a lot of extra code to align stack unnecessarily to 16 e.g. every function call adjusts the stack before the call to align it still to revisit: -munaligned-doubles -mno-align-double I suspect we don't need these with current Target.m3, since I boosted all the alignments. These might be useful with old compiler though. 2010-05-09 14:36 jkrell * m3-sys/cminstall/src/config-no-install/I386_SOLARIS: pentium is not valid here, go back to pentium_pro (while we have Pentium users, we probably don't have Solaris on Pentium, though if need be, there is -xtarget=pentium (this is for -xarch, and the difference between -xarch and -xtarget, I don't know, confusing 2010-05-09 14:01 jkrell * m3-sys/m3middle/src/Target.m3: !Painful copy/paste error: | Systems.I386_SOLARIS => (* 40 bytes with 4 byte alignment *) Jumpbuf_size := 10 * Address.size; - Jumpbuf_size := Address.size; + Jumpbuf_align := Address.size; resulted in jmpbuf overflow in ProcessPosixCommon__GetFileHandle and the saved %ebx (GOT) pointer getting corrupt by setjmp (notice that jmp_buf is 40 bytes, but only about 24 are used) 2010-05-09 12:35 jkrell * m3-libs/m3core/src/m3core.h: move #define EXTERN_CONST here, I though I already had! 2010-05-09 12:32 jkrell * m3-libs/m3core/src/runtime/common/Compiler.tmpl: add I386_SOLARIS, AMD64_SOLARIS, SPARC32_SOLARIS 2010-05-09 12:29 jkrell * m3-sys/m3cc/src/m3makefile: downgrade all the i686 to i586 that should work, we have a i586 user switch I386_SOLARIS, AMD64_SOLARIS from GNU assembler to SUN assembler There are tradeoffs either way. The gcc documentation recommends GNU assembler but says Sun assembler is almost as good. Sun assembler has been seen to reject the .stabd directive from -gstabs+, but -gstabs seems ok (it looks like gcc tries to not emit the .stabd for Sun asssembler, but maybe it fails?) GNU assembler seems to move around a bit. While Sun installs it to /usr/sfw/bin/gas, the opencsw machines don't have it there. (I should really look at my own stock install, so I know what csw changes vs. what Sun does.) 2010-05-09 12:19 jkrell * m3-sys/cminstall/src/config-no-install/: ALPHA32_VMS, ALPHA64_VMS, AMD64.common, AMD64_FREEBSD, AMD64_LINUX, AMD64_NETBSD, AMD64_OPENBSD, AMD64_SOLARIS, ARM_DARWIN, Darwin.common, FreeBSD4, I386.common, I386_FREEBSD, I386_INTERIX, I386_LINUX, I386_NETBSD, I386_OPENBSD, I386_SOLARIS, LINUXLIBC6, MIPS64_OPENBSD, NT386.common, NetBSD2_i386, PA32_HPUX, PA64_HPUX, PPC.common, PPC32_OPENBSD, PPC64.common, PPC_LINUX, SPARC.common, SPARC32_LINUX, SPARC64.common, SPARC64_LINUX, SPARC64_OPENBSD, Solaris.common, Unix.common: some refactoring, mainly moving m3back_flags into *.common files also use -gstabs instead of -gstabs+ on I386_SOLARIS, for compatibility with Sun assembler (maybe something wrong with my cm3cg -- why not seen this with SOLgnu?) 2010-05-09 12:07 jkrell * scripts/python/pylib.py: mainly split Compile into CC and CFLAGS, and honor user setting them compilers are at different place on csw machines than where Sun installs them, it seems go back to using += in make, the form that works in MS nmake fails in GNU make (still wondering about portability to BSD make, Solaris make, etc.) (but we also output a simple .sh file) 2010-05-09 10:35 jkrell * m3-sys/m3quake/src/M3Path.m3: more conversion of variables and parameters to constants now that host_os is constant (and now even, host_os is gone) 2010-05-09 10:21 jkrell * m3-sys/m3quake/src/M3Path.m3: now that host_os is CONST, so are things like DirSep [host_os] 2010-05-09 10:08 jkrell * m3-sys/: cm3/src/Builder.m3, cm3/test/src/t.m3, m3quake/src/M3Path.i3, m3quake/src/M3Path.m3: use Compiler.ThisOS to determine host type as a compile-time constant therefore SetOS(kind: OSKind; host: BOOLEAN) becomes only SetTargetOS(kind: OSKind) 2010-05-09 10:03 jkrell * examples/m3sh/src/M3sh.m3: use Compiler.ThisOS = Compiler.OS.POSIX which is a constant instead of Text.Equal(Pathname.Join("","",NIL),"/") which requires a heap allocation 2010-05-09 09:59 jkrell * m3-sys/m3middle/src/m3middle.h: slight format change 2010-05-09 09:56 jkrell * m3-libs/m3core/src/m3core.h: forgot to commit this for putting back Usocket on Win32 2010-05-09 09:41 jkrell * m3-libs/m3core/src/win32/WinDef.i3: restore proc, nearproc with calling conventions and calling convention on farproc; this is all of unclear/no/little value; it was this way a while and was made note this way so non-Win32 platforms could get at the Win32 types (e.g. to write out .obj/.lib files? eh, well, for now mklib clones stuff anyway in order to not depend on newer m3core); anyway, very current frontend accepts Win32 calling conventions for any target, so we can put them back 2010-05-09 09:36 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: initialize locals 2010-05-09 09:34 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: extend copying cygwin struct linger wrapper also to Win32 (I really just want to rewrite the client of this in C..) 2010-05-09 09:28 jkrell * m3-libs/m3core/src/unix/Common/: UnixC.c, Usocket.c, m3makefile: restore Usocket for Win32; the main problem was the Windows headers don't typedef socklen_t, so we have to; also add calling conventions 2010-05-09 09:21 jkrell * m3-libs/m3core/src/: m3core.h, thread/PTHREAD/ThreadPThreadC.c, time/POSIX/DatePosixC.c: move #define EXTERN_CONST to m3core.h and rewrite/shorten comments about socklen_t 2010-05-09 09:20 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: fix Win32: don't call Usocket__Assertions 2010-05-09 09:13 jkrell * caltech-parser/term/src/: TermC.c, TermC.h, Termios.c: cleanup: extern "C" => extern "C" { typo don't #include inside extern "C" add calling conventions move some common stuff to the header 2010-05-09 09:12 jkrell * caltech-parser/term/src/Term.m3: whitespace only 2010-05-09 08:45 jkrell * m3-sys/m3middle/src/: CoffTime.c, CoffTime.i3, m3core.h, m3middle.h: initial version, not yet active 2010-05-09 08:02 jkrell * m3-sys/m3middle/src/m3core.h: add posix file (Win32 will be using C shortly, leading to just one common directory) 2010-05-09 07:59 jkrell * m3-sys/m3middle/src/: CoffTime.c, CoffTime.i3: first copy the Posix files 2010-05-09 07:58 jkrell * m3-sys/m3middle/src/WIN32/: M3Process.m3, m3makefile: one newline at end of file is enough 2010-05-09 07:41 jkrell * scripts/python/pylib.py: add I386_SOLARIS, AMD64_SOLARIS support OpenBSD/powerpc generally instead of OpenBSD/macppc specifically tighten up uname checks a bit like in sysinfo.sh 2010-05-09 07:40 jkrell * m3-libs/m3core/src/m3core.h: whitespace between parameters in #define ZeroMemory 2010-05-09 07:39 jkrell * m3-libs/m3core/src/m3core.h: VMS: #ifdef was supposed to be #ifndef 2010-05-09 07:38 jkrell * m3-sys/m3middle/src/POSIX/m3core.h: copy from release: whitespace and ARM_DARWIN (iphone, ipod touch, ipad) fix 2010-05-09 07:37 jkrell * m3-sys/m3middle/src/POSIX/m3core.h (release_branch_cm3_5_8): whitespace only 2010-05-09 07:35 jkrell * m3-sys/m3middle/src/POSIX/m3core.h (release_branch_cm3_5_8): move _DARWIN_FEATURE_64_ONLY_BIT_INODE earlier, so that it will work (This only affects ARM_DARWIN I believe, and maybe not even it.) 2010-05-09 07:33 jkrell * m3-sys/m3middle/src/POSIX/m3core.h (release_branch_cm3_5_8): copy from head so it compiles 2010-05-09 07:32 jkrell * m3-sys/m3middle/src/POSIX/: CoffTime.i3, CoffTime.m3, m3makefile (release_branch_cm3_5_8): copy from head, so that release can be built by "upgrading" from head (head m3core has cut down/removed Utime for portability, and it was used here)) 2010-05-09 06:35 jkrell * m3-ui/vbtkit/src/lego/: ZChassisVBT.m3, m3makefile, POSIX/ZChassisVBT.m3, POSIX/m3makefile, WIN32/ZChassisVBT.m3, WIN32/m3makefile: unfork ZChassisVBT.m3 instead of copying 140 lines and changing a few, when both variations are portable, you can test Compiler.ThisOS = Compiler.OS.POSIX or Compiler.OS.WIN32 and just have both variations. Alternately, make a /smaller/ interface and /smaller/ implementation that just contains the changed functions/lines The larger ScrollerVBTClass.m3 file received more churn so merging might not be viable/worthwhile. Besides, the Posix gui is terrible here, G for grow, C for close, we should probably just use the Win32 gui everywhere. 2010-05-09 06:32 jkrell * m3-ui/vbtkit/src/lego/ZChassisVBT.m3: first put back the Posix version, before merging in the Win32 changes under if Compiler.ThisOS =.. 2010-05-09 06:03 jkrell * m3-db/odbc/src/: m3makefile, POSIX/SQL.i3, POSIX/SQLext.i3, POSIX/SQLext.m3, POSIX/SQLtypes.i3, POSIX/m3makefile, WIN32/SQL.i3: another 1500 lines of cloned C headers gone, now that compiler accepts Win32 calling conventions on all platforms These files were essentially otherwise identical. The log file we define in terms of Compiler.OS. WinDef.HWND is basically ADDRESS on all platforms already. Again the "Win32" directory is now "common" or "only". 2010-05-09 05:42 jkrell * m3-ui/opengl/src/WIN32/: GL.i3, GLu.i3: adjust comments: no longer Win32 specific 2010-05-09 05:41 jkrell * m3-ui/opengl/src/: m3makefile, POSIX/GL.i3, POSIX/GLu.i3, POSIX/m3makefile, WIN32/GL.i3: delete 2000 lines now that frontend allows but ignores calling conventions on all platforms, since OpenGL is identical on Win32 and Posix, except for the explicit __stdcall calling convention The Win32 directory is now "common", but I didn't move anything, to reserve history. Dubious. 2010-05-09 05:37 jkrell * m3-sys/m3middle/src/Target.m3: For platforms with no calling conventions, set all the ids to 0. This way the front end accepts only the existing ones, but otherwise ignores them. Otherwise you get a lot of warnings on non-NT386 platforms. redo calling convention initialization a bit speculate that I386_INTERIX has calling conventions in particular, there is a choice of C compilers on platform, gcc and "cc", where "cc" is a wrapper for Visual C++, therefore, calling conventions are easy to introduce 2010-05-09 03:56 jkrell * m3-libs/m3core/src/unix/Common/: Usocket.c, m3makefile: remove Usocket from Win32, at least for now 2010-05-09 02:18 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh, python/pylib.py: add I386_SOLARIS, AMD64_SOLARIS, AMD64_NETBSD and cleanup, the biggest change is actually just: case something) CM3_TARGET=${CM3_TARGET:=-abc};; something) CM3_TARGET=${CM3_TARGET:=-def};; something) CM3_TARGET=${CM3_TARGET:=-ghi};; something) CM3_TARGET=${CM3_TARGET:=-xyz};; if x$CM3_TARGET = x then case something) CM3_TARGET=abc;; something) CM3_TARGET=def;; something) CM3_TARGET=ghi;; something) CM3_TARGET=xyz;; fi also disable m3gdb for all Darwin here, maybe redundant now (merged from sysinfo-new.sh) also tighten up many of the switches Darwin* => Darwin Linux* => Linux i*86 => i386 i[3456]86 => i386 etc. But only where I can most easily test. Leaving a few loose ends. rename FBSD_ALPHA to ALPHA_FREEBSD comment in support for new names I386_FREEBSD, etc. comment in support for SPARC64_SOLARIS allow user to set CM3_TARGET or TARGET, but if he sets them both, they must be equal 2010-05-09 00:42 jkrell * m3-sys/m3cc/src/gnucc.common: look also for /opt/csw/gcc4/bin/gcc 2010-05-09 00:27 jkrell * m3-sys/m3cc/src/gnumake.common: add /opt/csw/gnu/make 2010-05-09 00:24 jkrell * scripts/: sysinfo.sh, make-dist.sh: getting ahead of things: look for GNU make, GNU tar, and rsync in more places, for the opencsw machines; but note that the network topology will probably necesitate more change in the rsync usem 2010-05-08 23:27 jkrell * m3-libs/m3core/src/m3core.h: #if defined(__sun) && defined(__sparc) && !defined(__MAKECONTEXT_V2_SOURCE) /* Support for userthreads on Solaris 9 4/03 and later. * Support for older is easy but absent. */ #define __MAKECONTEXT_V2_SOURCE #endif 2010-05-08 22:45 jkrell * m3-libs/m3core/src/time/POSIX/: DateBsd.m3, DateBsd.m3.old, TickPosix.m3, TickPosix.m3.old: move away unused files (could also delete them) 2010-05-08 22:16 jkrell * m3-libs/m3core/src/C/: SOLgnu/Csetjmp.i3, SOLsun/Csetjmp.i3, SPARC64_SOLARIS/Csetjmp.i3: adjust jmpbuf sizes down and add comments 2010-05-08 22:09 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: add SPARC32_SOLARIS correct jmpbuf sizes for I386_SOLARIS, AMD64_SOLARIS notice again that jmpbuf is much much smaller than sigjmpbuf, and this is jmpbuf; specifically: I386_SOLARIS jmpbuf 40 bytes with 4 align AMD64_SOLARIS jmpbuf 64 bytes with 8 align I386_SOLARIS sigjmpbuf 512 bytes with 4 align AMD64_SOLARIS sigjmpbuf 1024 bytes with 8 align remove some level of heap allocation of calling conventions accept all calling conventions for all targets Only NT386 has calling conventions, and it *highly* likely the only target ever to have them, therefore the mechanism does not need to be further generalized. (MIPS32 has two ABIs, but those will probably be two targets) This might let us save some unnecessary forking of *.i3 files. The initialization here can be further streamlined. shrink SOLgnu/SOLsun from sigjmpbuf to jmpbuf I'm not sure we use this though since we have a stack walker. fix SPARC64_SOLARIS too to be smaller SPARC32_SOLARIS jmpbuf size: 48 sigjmpbuf size: 76 alignment: 4 4 SPARC64_SOLARIS jmpbuf size: 96 sigjmpbuf size: 152 alignment: 8 8 2010-05-08 21:44 jkrell * m3-libs/m3core/src/platforms.quake: add I386_SOLARIS, AMD64_SOLARIS, SPARC32_SOLARIS (correct and only names?) 2010-05-08 21:39 jkrell * m3-libs/libm3/src/platforms.quake: add I386_SOLARIS, AMD64_SOLARIS, SPARC32_SOLARIS (speak up if it should be SPARC_SOLARIS or SPARC32_SOLARIS_GNU or such) 2010-05-08 10:47 jkrell * m3-libs/libm3/src/os/: Common/Socket.i3, Common/Socket.m3, Common/m3makefile, WIN32/SocketWin32.m3, WIN32/SocketWin32.m3.sav, WIN32/m3makefile: add back Socket, that isn't used at all in this tree 2010-05-08 08:22 jkrell * scripts/python/pylib.py: mainly some VMS fixes 2010-05-07 07:31 jkrell * m3-sys/m3middle/src/Target.m3: just whitespace and comments -- in order to fit in 80 columns 2010-05-01 07:54 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: cleanup just a bit -- remove unused, and fit in 80 columns 2010-05-01 07:48 jkrell * m3-libs/m3core/src/: m3core.h, unix/Common/Usocket.c, unix/Common/Usocket.i3, unix/Common/Utypes.i3: make m3_socklen_t, Usocket.socklen_t always size_t and convert carefully back and forth 2010-05-01 07:40 jkrell * m3-libs/m3core/src/unix/Common/Uuio.c: 'size_t' => 'WORD_T' 2010-05-01 07:39 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: use __int64 for DECC instead of long long; don't assert sizeof void* == long/size_t on VMS 2010-05-01 07:36 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: no fchmod, mknod, fork on VMS (it does have vfork) 2010-05-01 07:35 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: 'size_t' => 'WORD_T' 2010-05-01 07:33 jkrell * m3-libs/m3core/src/m3core.h: provide socklen_t typedef for VMS 2010-05-01 07:31 jkrell * m3-libs/m3core/src/m3core.h: make INTEGER and WORD_T always the size of a pointer, even on ALPHA64_VMS where ptrdiff_t and size_t are not more to do here, using INTEGER and WORD_T consistently 2010-05-01 07:26 jkrell * m3-libs/m3core/src/m3core.h: move some lines around so the more generic shorter part is earlier; use __int64 #ifdef __DECC (like _MSC_VER) 2010-05-01 07:20 jkrell * m3-libs/m3core/src/unix/Common/UstatC.c: stat.st_dev and st_rdev are strings on VMS and need to be cast 2010-04-29 19:14 wagner * m3-sys/m3tests/src/m3makefile (release_branch_cm3_5_8): ignore 'Illegal instruction', too 2010-04-29 19:13 wagner * m3-sys/m3tests/src/e0/e026/stdout.build (release_branch_cm3_5_8): remove CR at EOL 2010-04-29 18:48 wagner * www/about-cm3.html (release_branch_cm3_5_8): update some release information 2010-04-29 17:17 wagner * doc/: PkgDesc, index.html, help/gen_html/INDEX.html, help/gen_html/m3db, help/gen_html/X11R4/INDEX.html, help/gen_html/anim3D/INDEX.html, help/gen_html/binIO/INDEX.html, help/gen_html/bitvector/INDEX.html, help/gen_html/calculator/INDEX.html, help/gen_html/cm3/INDEX.html, help/gen_html/cm3/src/Builder.m3.html, help/gen_html/cm3/src/Dirs.m3.html, help/gen_html/cm3/src/M3Backend.m3.html, help/gen_html/cm3/src/M3Build.m3.html, help/gen_html/cm3/src/M3Loc.m3.html, help/gen_html/cm3/src/M3Path.i3.html, help/gen_html/cm3/src/M3Path.m3.html, help/gen_html/cm3/src/M3Unit.i3.html, help/gen_html/cm3/src/M3Unit.m3.html, help/gen_html/cm3/src/Main.m3.html, help/gen_html/cm3/src/Makefile.m3.html, help/gen_html/cm3/src/Msg.i3.html, help/gen_html/cm3/src/Msg.m3.html, help/gen_html/cm3/src/Utils.m3.html, help/gen_html/cm3/src/WebFile.m3.html, help/gen_html/cmpdir/INDEX.html, help/gen_html/cmpdir/src/Main.m3.html, help/gen_html/cmpfp/INDEX.html, help/gen_html/cmvbt/INDEX.html, help/gen_html/codeview/INDEX.html, help/gen_html/cube/INDEX.html, help/gen_html/db/INDEX.html, help/gen_html/debug/INDEX.html, help/gen_html/debug/src/Debug.i3.html, help/gen_html/debug/src/Debug.m3.html, help/gen_html/digraph/INDEX.html, help/gen_html/dirfp/INDEX.html, help/gen_html/dirfp/src/Main.m3.html, help/gen_html/embutils/INDEX.html, help/gen_html/embutils/src/EmbProxiedObj.m3.html, help/gen_html/events/INDEX.html, help/gen_html/events/src/Event.i3.html, help/gen_html/events/src/Event.m3.html, help/gen_html/events/src/EventConn.i3.html, help/gen_html/events/src/EventConn.m3.html, help/gen_html/events/src/EventCounter.i3.html, help/gen_html/events/src/EventCounter.m3.html, help/gen_html/events/src/EventHandle.i3.html, help/gen_html/events/src/EventIO.i3.html, help/gen_html/events/src/EventNumber.i3.html, help/gen_html/events/src/EventNumber.m3.html, help/gen_html/events/src/EventNumberF.i3.html, help/gen_html/events/src/EventPort.i3.html, help/gen_html/events/src/EventPort.m3.html, help/gen_html/events/src/EventProtocol.i3.html, help/gen_html/events/src/EventRd.i3.html, help/gen_html/events/src/EventRd.m3.html, help/gen_html/events/src/EventSpaceID.i3.html, help/gen_html/events/src/EventSpaceID.m3.html, help/gen_html/events/src/EventStubLib.i3.html, help/gen_html/events/src/EventStubLib.m3.html, help/gen_html/events/src/EventWireRep.i3.html, help/gen_html/events/src/EventWireRep.m3.html, help/gen_html/events/src/EventWr.i3.html, help/gen_html/events/src/EventWr.m3.html, help/gen_html/events/src/EventWrF.i3.html, help/gen_html/events/src/HostInfo.i3.html, help/gen_html/events/src/HostInfo.m3.html, help/gen_html/events/src/RdWrMutex.i3.html, help/gen_html/events/src/RdWrMutex.m3.html, help/gen_html/events/src/Work.i3.html, help/gen_html/events/src/WorkerPool.i3.html, help/gen_html/events/src/WorkerPool.m3.html, help/gen_html/events/src/Zombie.i3.html, help/gen_html/fisheye/INDEX.html, help/gen_html/formsedit/INDEX.html, help/gen_html/formsvbt/INDEX.html, help/gen_html/formsvbtpixmaps/INDEX.html, help/gen_html/formsview/INDEX.html, help/gen_html/href/I3_1.html, help/gen_html/href/I3_100.html, help/gen_html/href/I3_101.html, help/gen_html/href/I3_102.html, help/gen_html/href/I3_103.html, help/gen_html/href/I3_104.html, help/gen_html/href/I3_105.html, help/gen_html/href/I3_106.html, help/gen_html/href/I3_107.html, help/gen_html/href/I3_108.html, help/gen_html/href/I3_109.html, help/gen_html/href/I3_110.html, help/gen_html/href/I3_111.html, help/gen_html/href/I3_112.html, help/gen_html/href/I3_113.html, help/gen_html/href/I3_114.html, help/gen_html/href/I3_115.html, help/gen_html/href/I3_116.html, help/gen_html/href/I3_117.html, help/gen_html/href/I3_118.html, help/gen_html/href/I3_119.html, help/gen_html/href/I3_120.html, help/gen_html/href/I3_121.html, help/gen_html/href/I3_122.html, help/gen_html/href/I3_123.html, help/gen_html/href/I3_124.html, help/gen_html/href/I3_125.html, help/gen_html/href/I3_126.html, help/gen_html/href/I3_127.html, help/gen_html/href/I3_128.html, help/gen_html/href/I3_129.html, help/gen_html/href/I3_13.html, help/gen_html/href/I3_130.html, help/gen_html/href/I3_131.html, help/gen_html/href/I3_132.html, help/gen_html/href/I3_133.html, help/gen_html/href/I3_134.html, help/gen_html/href/I3_135.html, help/gen_html/href/I3_136.html, help/gen_html/href/I3_137.html, help/gen_html/href/I3_138.html, help/gen_html/href/I3_139.html, help/gen_html/href/I3_14.html, help/gen_html/href/I3_140.html, help/gen_html/href/I3_141.html, help/gen_html/href/I3_142.html, help/gen_html/href/I3_143.html, help/gen_html/href/I3_144.html, help/gen_html/href/I3_145.html, help/gen_html/href/I3_146.html, help/gen_html/href/I3_147.html, help/gen_html/href/I3_148.html, help/gen_html/href/I3_149.html, help/gen_html/href/I3_15.html, help/gen_html/href/I3_150.html, help/gen_html/href/I3_151.html, help/gen_html/href/I3_152.html, help/gen_html/href/I3_153.html, help/gen_html/href/I3_154.html, help/gen_html/href/I3_155.html, help/gen_html/href/I3_156.html, help/gen_html/href/I3_157.html, help/gen_html/href/I3_158.html, help/gen_html/href/I3_159.html, help/gen_html/href/I3_16.html, help/gen_html/href/I3_160.html, help/gen_html/href/I3_161.html, help/gen_html/href/I3_162.html, help/gen_html/href/I3_163.html, help/gen_html/href/I3_164.html, help/gen_html/href/I3_165.html, help/gen_html/href/I3_166.html, help/gen_html/href/I3_167.html, help/gen_html/href/I3_168.html, help/gen_html/href/I3_169.html, help/gen_html/href/I3_17.html, help/gen_html/href/I3_170.html, help/gen_html/href/I3_171.html, help/gen_html/href/I3_172.html, help/gen_html/href/I3_173.html, help/gen_html/href/I3_174.html, help/gen_html/href/I3_175.html, help/gen_html/href/I3_176.html, help/gen_html/href/I3_177.html, help/gen_html/href/I3_178.html, help/gen_html/href/I3_179.html, help/gen_html/href/I3_180.html, help/gen_html/href/I3_181.html, help/gen_html/href/I3_182.html, help/gen_html/href/I3_183.html, help/gen_html/href/I3_184.html, help/gen_html/href/I3_185.html, help/gen_html/href/I3_186.html, help/gen_html/href/I3_187.html, help/gen_html/href/I3_188.html, help/gen_html/href/I3_189.html, help/gen_html/href/I3_190.html, help/gen_html/href/I3_191.html, help/gen_html/href/I3_192.html, help/gen_html/href/I3_193.html, help/gen_html/href/I3_194.html, help/gen_html/href/I3_195.html, help/gen_html/href/I3_196.html, help/gen_html/href/I3_197.html, help/gen_html/href/I3_198.html, help/gen_html/href/I3_199.html, help/gen_html/href/I3_20.html, help/gen_html/href/I3_200.html, help/gen_html/href/I3_201.html, help/gen_html/href/I3_202.html, help/gen_html/href/I3_203.html, help/gen_html/href/I3_204.html, help/gen_html/href/I3_205.html, help/gen_html/href/I3_206.html, help/gen_html/href/I3_207.html, help/gen_html/href/I3_208.html, help/gen_html/href/I3_209.html, help/gen_html/href/I3_210.html, help/gen_html/href/I3_211.html, help/gen_html/href/I3_212.html, help/gen_html/href/I3_213.html, help/gen_html/href/I3_214.html, help/gen_html/href/I3_215.html, help/gen_html/href/I3_216.html, help/gen_html/href/I3_217.html, help/gen_html/href/I3_218.html, help/gen_html/href/I3_219.html, help/gen_html/href/I3_220.html, help/gen_html/href/I3_221.html, help/gen_html/href/I3_222.html, help/gen_html/href/I3_223.html, help/gen_html/href/I3_224.html, help/gen_html/href/I3_225.html, help/gen_html/href/I3_226.html, help/gen_html/href/I3_227.html, help/gen_html/href/I3_228.html, help/gen_html/href/I3_229.html, help/gen_html/href/I3_230.html, help/gen_html/href/I3_231.html, help/gen_html/href/I3_232.html, help/gen_html/href/I3_233.html, help/gen_html/href/I3_234.html, help/gen_html/href/I3_235.html, help/gen_html/href/I3_236.html, help/gen_html/href/I3_237.html, help/gen_html/href/I3_238.html, help/gen_html/href/I3_239.html, help/gen_html/href/I3_240.html, help/gen_html/href/I3_241.html, help/gen_html/href/I3_242.html, help/gen_html/href/I3_243.html, help/gen_html/href/I3_244.html, help/gen_html/href/I3_245.html, help/gen_html/href/I3_246.html, help/gen_html/href/I3_247.html, help/gen_html/href/I3_248.html, help/gen_html/href/I3_249.html, help/gen_html/href/I3_25.html, help/gen_html/href/I3_250.html, help/gen_html/href/I3_251.html, help/gen_html/href/I3_252.html, help/gen_html/href/I3_253.html, help/gen_html/href/I3_254.html, help/gen_html/href/I3_255.html, help/gen_html/href/I3_256.html, help/gen_html/href/I3_257.html, help/gen_html/href/I3_258.html, help/gen_html/href/I3_259.html, help/gen_html/href/I3_26.html, help/gen_html/href/I3_260.html, help/gen_html/href/I3_261.html, help/gen_html/href/I3_262.html, help/gen_html/href/I3_263.html, help/gen_html/href/I3_264.html, help/gen_html/href/I3_265.html, help/gen_html/href/I3_266.html, help/gen_html/href/I3_267.html, help/gen_html/href/I3_268.html, help/gen_html/href/I3_269.html, help/gen_html/href/I3_27.html, help/gen_html/href/I3_270.html, help/gen_html/href/I3_271.html, help/gen_html/href/I3_272.html, help/gen_html/href/I3_273.html, help/gen_html/href/I3_274.html, help/gen_html/href/I3_275.html, help/gen_html/href/I3_276.html, help/gen_html/href/I3_277.html, help/gen_html/href/I3_278.html, help/gen_html/href/I3_279.html, help/gen_html/href/I3_28.html, help/gen_html/href/I3_280.html, help/gen_html/href/I3_281.html, help/gen_html/href/I3_282.html, help/gen_html/href/I3_283.html, help/gen_html/href/I3_284.html, help/gen_html/href/I3_285.html, help/gen_html/href/I3_286.html, help/gen_html/href/I3_287.html, help/gen_html/href/I3_288.html, help/gen_html/href/I3_289.html, help/gen_html/href/I3_29.html, help/gen_html/href/I3_290.html, help/gen_html/href/I3_291.html, help/gen_html/href/I3_292.html, help/gen_html/href/I3_293.html, help/gen_html/href/I3_294.html, help/gen_html/href/I3_295.html, help/gen_html/href/I3_296.html, help/gen_html/href/I3_297.html, help/gen_html/href/I3_298.html, help/gen_html/href/I3_299.html, help/gen_html/href/I3_30.html, help/gen_html/href/I3_300.html, help/gen_html/href/I3_301.html, help/gen_html/href/I3_302.html, help/gen_html/href/I3_303.html, help/gen_html/href/I3_304.html, help/gen_html/href/I3_305.html, help/gen_html/href/I3_306.html, help/gen_html/href/I3_307.html, help/gen_html/href/I3_308.html, help/gen_html/href/I3_309.html, help/gen_html/href/I3_31.html, help/gen_html/href/I3_310.html, help/gen_html/href/I3_311.html, help/gen_html/href/I3_312.html, help/gen_html/href/I3_313.html, help/gen_html/href/I3_314.html, help/gen_html/href/I3_315.html, help/gen_html/href/I3_316.html, help/gen_html/href/I3_317.html, help/gen_html/href/I3_318.html, help/gen_html/href/I3_319.html, help/gen_html/href/I3_32.html, help/gen_html/href/I3_320.html, help/gen_html/href/I3_321.html, help/gen_html/href/I3_322.html, help/gen_html/href/I3_323.html, help/gen_html/href/I3_324.html, help/gen_html/href/I3_325.html, help/gen_html/href/I3_326.html, help/gen_html/href/I3_327.html, help/gen_html/href/I3_328.html, help/gen_html/href/I3_329.html, help/gen_html/href/I3_33.html, help/gen_html/href/I3_330.html, help/gen_html/href/I3_331.html, help/gen_html/href/I3_332.html, help/gen_html/href/I3_333.html, help/gen_html/href/I3_334.html, help/gen_html/href/I3_335.html, help/gen_html/href/I3_336.html, help/gen_html/href/I3_337.html, help/gen_html/href/I3_338.html, help/gen_html/href/I3_339.html, help/gen_html/href/I3_34.html, help/gen_html/href/I3_340.html, help/gen_html/href/I3_341.html, help/gen_html/href/I3_342.html, help/gen_html/href/I3_343.html, help/gen_html/href/I3_344.html, help/gen_html/href/I3_345.html, help/gen_html/href/I3_346.html, help/gen_html/href/I3_347.html, help/gen_html/href/I3_348.html, help/gen_html/href/I3_349.html, help/gen_html/href/I3_35.html, help/gen_html/href/I3_350.html, help/gen_html/href/I3_351.html, help/gen_html/href/I3_352.html, help/gen_html/href/I3_353.html, help/gen_html/href/I3_354.html, help/gen_html/href/I3_355.html, help/gen_html/href/I3_356.html, help/gen_html/href/I3_357.html, help/gen_html/href/I3_358.html, help/gen_html/href/I3_359.html, help/gen_html/href/I3_36.html, help/gen_html/href/I3_360.html, help/gen_html/href/I3_361.html, help/gen_html/href/I3_362.html, help/gen_html/href/I3_363.html, help/gen_html/href/I3_364.html, help/gen_html/href/I3_365.html, help/gen_html/href/I3_366.html, help/gen_html/href/I3_367.html, help/gen_html/href/I3_368.html, help/gen_html/href/I3_369.html, help/gen_html/href/I3_37.html, help/gen_html/href/I3_370.html, help/gen_html/href/I3_371.html, help/gen_html/href/I3_372.html, help/gen_html/href/I3_373.html, help/gen_html/href/I3_374.html, help/gen_html/href/I3_375.html, help/gen_html/href/I3_376.html, help/gen_html/href/I3_377.html, help/gen_html/href/I3_378.html, help/gen_html/href/I3_379.html, help/gen_html/href/I3_38.html, help/gen_html/href/I3_380.html, help/gen_html/href/I3_381.html, help/gen_html/href/I3_382.html, help/gen_html/href/I3_383.html, help/gen_html/href/I3_384.html, help/gen_html/href/I3_385.html, help/gen_html/href/I3_386.html, help/gen_html/href/I3_387.html, help/gen_html/href/I3_388.html, help/gen_html/href/I3_389.html, help/gen_html/href/I3_39.html, help/gen_html/href/I3_390.html, help/gen_html/href/I3_391.html, help/gen_html/href/I3_392.html, help/gen_html/href/I3_393.html, help/gen_html/href/I3_394.html, help/gen_html/href/I3_395.html, help/gen_html/href/I3_396.html, help/gen_html/href/I3_397.html, help/gen_html/href/I3_398.html, help/gen_html/href/I3_399.html, help/gen_html/href/I3_4.html, help/gen_html/href/I3_40.html, help/gen_html/href/I3_400.html, help/gen_html/href/I3_401.html, help/gen_html/href/I3_402.html, help/gen_html/href/I3_403.html, help/gen_html/href/I3_404.html, help/gen_html/href/I3_405.html, help/gen_html/href/I3_406.html, help/gen_html/href/I3_407.html, help/gen_html/href/I3_408.html, help/gen_html/href/I3_409.html, help/gen_html/href/I3_41.html, help/gen_html/href/I3_410.html, help/gen_html/href/I3_411.html, help/gen_html/href/I3_412.html, help/gen_html/href/I3_413.html, help/gen_html/href/I3_414.html, help/gen_html/href/I3_415.html, help/gen_html/href/I3_416.html, help/gen_html/href/I3_417.html, help/gen_html/href/I3_418.html, help/gen_html/href/I3_419.html, help/gen_html/href/I3_42.html, help/gen_html/href/I3_420.html, help/gen_html/href/I3_421.html, help/gen_html/href/I3_422.html, help/gen_html/href/I3_423.html, help/gen_html/href/I3_424.html, help/gen_html/href/I3_425.html, help/gen_html/href/I3_426.html, help/gen_html/href/I3_427.html, help/gen_html/href/I3_428.html, help/gen_html/href/I3_429.html, help/gen_html/href/I3_43.html, help/gen_html/href/I3_430.html, help/gen_html/href/I3_431.html, help/gen_html/href/I3_432.html, help/gen_html/href/I3_433.html, help/gen_html/href/I3_434.html, help/gen_html/href/I3_435.html, help/gen_html/href/I3_436.html, help/gen_html/href/I3_437.html, help/gen_html/href/I3_438.html, help/gen_html/href/I3_439.html, help/gen_html/href/I3_44.html, help/gen_html/href/I3_440.html, help/gen_html/href/I3_441.html, help/gen_html/href/I3_442.html, help/gen_html/href/I3_443.html, help/gen_html/href/I3_444.html, help/gen_html/href/I3_445.html, help/gen_html/href/I3_446.html, help/gen_html/href/I3_447.html, help/gen_html/href/I3_448.html, help/gen_html/href/I3_449.html, help/gen_html/href/I3_45.html, help/gen_html/href/I3_450.html, help/gen_html/href/I3_451.html, help/gen_html/href/I3_452.html, help/gen_html/href/I3_453.html, help/gen_html/href/I3_454.html, help/gen_html/href/I3_455.html, help/gen_html/href/I3_456.html, help/gen_html/href/I3_457.html, help/gen_html/href/I3_458.html, help/gen_html/href/I3_459.html, help/gen_html/href/I3_46.html, help/gen_html/href/I3_460.html, help/gen_html/href/I3_461.html, help/gen_html/href/I3_462.html, help/gen_html/href/I3_463.html, help/gen_html/href/I3_464.html, help/gen_html/href/I3_465.html, help/gen_html/href/I3_466.html, help/gen_html/href/I3_467.html, help/gen_html/href/I3_468.html, help/gen_html/href/I3_47.html, help/gen_html/href/I3_48.html, help/gen_html/href/I3_49.html, help/gen_html/href/I3_5.html, help/gen_html/href/I3_50.html, help/gen_html/href/I3_51.html, help/gen_html/href/I3_52.html, help/gen_html/href/I3_53.html, help/gen_html/href/I3_54.html, help/gen_html/href/I3_55.html, help/gen_html/href/I3_56.html, help/gen_html/href/I3_57.html, help/gen_html/href/I3_58.html, help/gen_html/href/I3_59.html, help/gen_html/href/I3_6.html, help/gen_html/href/I3_60.html, help/gen_html/href/I3_61.html, help/gen_html/href/I3_62.html, help/gen_html/href/I3_63.html, help/gen_html/href/I3_64.html, help/gen_html/href/I3_65.html, help/gen_html/href/I3_66.html, help/gen_html/href/I3_67.html, help/gen_html/href/I3_68.html, help/gen_html/href/I3_69.html, help/gen_html/href/I3_70.html, help/gen_html/href/I3_71.html, help/gen_html/href/I3_72.html, help/gen_html/href/I3_73.html, help/gen_html/href/I3_74.html, help/gen_html/href/I3_75.html, help/gen_html/href/I3_76.html, help/gen_html/href/I3_77.html, help/gen_html/href/I3_78.html, help/gen_html/href/I3_79.html, help/gen_html/href/I3_80.html, help/gen_html/href/I3_81.html, help/gen_html/href/I3_82.html, help/gen_html/href/I3_83.html, help/gen_html/href/I3_84.html, help/gen_html/href/I3_85.html, help/gen_html/href/I3_86.html, help/gen_html/href/I3_87.html, help/gen_html/href/I3_88.html, help/gen_html/href/I3_89.html, help/gen_html/href/I3_90.html, help/gen_html/href/I3_91.html, help/gen_html/href/I3_92.html, help/gen_html/href/I3_93.html, help/gen_html/href/I3_94.html, help/gen_html/href/I3_95.html, help/gen_html/href/I3_96.html, help/gen_html/href/I3_97.html, help/gen_html/href/I3_98.html, help/gen_html/href/I3_99.html, help/gen_html/href/IG_10.html, help/gen_html/href/IG_11.html, help/gen_html/href/IG_12.html, help/gen_html/href/IG_13.html, help/gen_html/href/IG_14.html, help/gen_html/href/IG_15.html, help/gen_html/href/IG_16.html, help/gen_html/href/IG_17.html, help/gen_html/href/IG_18.html, help/gen_html/href/IG_19.html, help/gen_html/href/IG_20.html, help/gen_html/href/IG_21.html, help/gen_html/href/IG_22.html, help/gen_html/href/IG_23.html, help/gen_html/href/IG_24.html, help/gen_html/href/IG_25.html, help/gen_html/href/IG_3.html, help/gen_html/href/IG_7.html, help/gen_html/href/IG_8.html, help/gen_html/href/IG_9.html, help/gen_html/href/M3_1.html, help/gen_html/href/M3_100.html, help/gen_html/href/M3_101.html, help/gen_html/href/M3_102.html, help/gen_html/href/M3_103.html, help/gen_html/href/M3_104.html, help/gen_html/href/M3_105.html, help/gen_html/href/M3_106.html, help/gen_html/href/M3_107.html, help/gen_html/href/M3_108.html, help/gen_html/href/M3_109.html, help/gen_html/href/M3_11.html, help/gen_html/href/M3_110.html, help/gen_html/href/M3_111.html, help/gen_html/href/M3_112.html, help/gen_html/href/M3_113.html, help/gen_html/href/M3_114.html, help/gen_html/href/M3_115.html, help/gen_html/href/M3_116.html, help/gen_html/href/M3_117.html, help/gen_html/href/M3_118.html, help/gen_html/href/M3_119.html, help/gen_html/href/M3_120.html, help/gen_html/href/M3_121.html, help/gen_html/href/M3_122.html, help/gen_html/href/M3_123.html, help/gen_html/href/M3_124.html, help/gen_html/href/M3_125.html, help/gen_html/href/M3_126.html, help/gen_html/href/M3_127.html, help/gen_html/href/M3_128.html, help/gen_html/href/M3_129.html, help/gen_html/href/M3_13.html, help/gen_html/href/M3_130.html, help/gen_html/href/M3_131.html, help/gen_html/href/M3_132.html, help/gen_html/href/M3_133.html, help/gen_html/href/M3_134.html, help/gen_html/href/M3_135.html, help/gen_html/href/M3_136.html, help/gen_html/href/M3_137.html, help/gen_html/href/M3_138.html, help/gen_html/href/M3_139.html, help/gen_html/href/M3_140.html, help/gen_html/href/M3_141.html, help/gen_html/href/M3_142.html, help/gen_html/href/M3_143.html, help/gen_html/href/M3_144.html, help/gen_html/href/M3_145.html, help/gen_html/href/M3_146.html, help/gen_html/href/M3_147.html, help/gen_html/href/M3_148.html, help/gen_html/href/M3_149.html, help/gen_html/href/M3_150.html, help/gen_html/href/M3_151.html, help/gen_html/href/M3_152.html, help/gen_html/href/M3_153.html, help/gen_html/href/M3_154.html, help/gen_html/href/M3_155.html, help/gen_html/href/M3_156.html, help/gen_html/href/M3_157.html, help/gen_html/href/M3_158.html, help/gen_html/href/M3_159.html, help/gen_html/href/M3_160.html, help/gen_html/href/M3_161.html, help/gen_html/href/M3_162.html, help/gen_html/href/M3_163.html, help/gen_html/href/M3_164.html, help/gen_html/href/M3_165.html, help/gen_html/href/M3_166.html, help/gen_html/href/M3_167.html, help/gen_html/href/M3_168.html, help/gen_html/href/M3_169.html, help/gen_html/href/M3_17.html, help/gen_html/href/M3_170.html, help/gen_html/href/M3_171.html, help/gen_html/href/M3_172.html, help/gen_html/href/M3_173.html, help/gen_html/href/M3_174.html, help/gen_html/href/M3_175.html, help/gen_html/href/M3_176.html, help/gen_html/href/M3_177.html, help/gen_html/href/M3_178.html, help/gen_html/href/M3_179.html, help/gen_html/href/M3_180.html, help/gen_html/href/M3_181.html, help/gen_html/href/M3_182.html, help/gen_html/href/M3_183.html, help/gen_html/href/M3_184.html, help/gen_html/href/M3_185.html, help/gen_html/href/M3_186.html, help/gen_html/href/M3_187.html, help/gen_html/href/M3_188.html, help/gen_html/href/M3_189.html, help/gen_html/href/M3_19.html, help/gen_html/href/M3_190.html, help/gen_html/href/M3_191.html, help/gen_html/href/M3_192.html, help/gen_html/href/M3_193.html, help/gen_html/href/M3_194.html, help/gen_html/href/M3_195.html, help/gen_html/href/M3_196.html, help/gen_html/href/M3_197.html, help/gen_html/href/M3_198.html, help/gen_html/href/M3_199.html, help/gen_html/href/M3_200.html, help/gen_html/href/M3_201.html, help/gen_html/href/M3_202.html, help/gen_html/href/M3_203.html, help/gen_html/href/M3_204.html, help/gen_html/href/M3_205.html, help/gen_html/href/M3_206.html, help/gen_html/href/M3_207.html, help/gen_html/href/M3_208.html, help/gen_html/href/M3_209.html, help/gen_html/href/M3_21.html, help/gen_html/href/M3_210.html, help/gen_html/href/M3_211.html, help/gen_html/href/M3_212.html, help/gen_html/href/M3_213.html, help/gen_html/href/M3_214.html, help/gen_html/href/M3_215.html, help/gen_html/href/M3_216.html, help/gen_html/href/M3_217.html, help/gen_html/href/M3_218.html, help/gen_html/href/M3_219.html, help/gen_html/href/M3_22.html, help/gen_html/href/M3_220.html, help/gen_html/href/M3_221.html, help/gen_html/href/M3_222.html, help/gen_html/href/M3_223.html, help/gen_html/href/M3_224.html, help/gen_html/href/M3_225.html, help/gen_html/href/M3_226.html, help/gen_html/href/M3_227.html, help/gen_html/href/M3_228.html, help/gen_html/href/M3_229.html, help/gen_html/href/M3_23.html, help/gen_html/href/M3_230.html, help/gen_html/href/M3_231.html, help/gen_html/href/M3_232.html, help/gen_html/href/M3_233.html, help/gen_html/href/M3_234.html, help/gen_html/href/M3_235.html, help/gen_html/href/M3_236.html, help/gen_html/href/M3_237.html, help/gen_html/href/M3_238.html, help/gen_html/href/M3_239.html, help/gen_html/href/M3_24.html, help/gen_html/href/M3_240.html, help/gen_html/href/M3_241.html, help/gen_html/href/M3_242.html, help/gen_html/href/M3_243.html, help/gen_html/href/M3_244.html, help/gen_html/href/M3_245.html, help/gen_html/href/M3_246.html, help/gen_html/href/M3_247.html, help/gen_html/href/M3_248.html, help/gen_html/href/M3_249.html, help/gen_html/href/M3_25.html, help/gen_html/href/M3_250.html, help/gen_html/href/M3_251.html, help/gen_html/href/M3_252.html, help/gen_html/href/M3_253.html, help/gen_html/href/M3_254.html, help/gen_html/href/M3_255.html, help/gen_html/href/M3_256.html, help/gen_html/href/M3_257.html, help/gen_html/href/M3_258.html, help/gen_html/href/M3_259.html, help/gen_html/href/M3_26.html, help/gen_html/href/M3_260.html, help/gen_html/href/M3_261.html, help/gen_html/href/M3_262.html, help/gen_html/href/M3_263.html, help/gen_html/href/M3_264.html, help/gen_html/href/M3_265.html, help/gen_html/href/M3_266.html, help/gen_html/href/M3_267.html, help/gen_html/href/M3_268.html, help/gen_html/href/M3_269.html, help/gen_html/href/M3_27.html, help/gen_html/href/M3_270.html, help/gen_html/href/M3_271.html, help/gen_html/href/M3_272.html, help/gen_html/href/M3_273.html, help/gen_html/href/M3_274.html, help/gen_html/href/M3_275.html, help/gen_html/href/M3_276.html, help/gen_html/href/M3_277.html, help/gen_html/href/M3_278.html, help/gen_html/href/M3_279.html, help/gen_html/href/M3_28.html, help/gen_html/href/M3_280.html, help/gen_html/href/M3_281.html, help/gen_html/href/M3_282.html, help/gen_html/href/M3_283.html, help/gen_html/href/M3_284.html, help/gen_html/href/M3_285.html, help/gen_html/href/M3_286.html, help/gen_html/href/M3_287.html, help/gen_html/href/M3_288.html, help/gen_html/href/M3_289.html, help/gen_html/href/M3_29.html, help/gen_html/href/M3_290.html, help/gen_html/href/M3_291.html, help/gen_html/href/M3_292.html, help/gen_html/href/M3_293.html, help/gen_html/href/M3_294.html, help/gen_html/href/M3_295.html, help/gen_html/href/M3_296.html, help/gen_html/href/M3_297.html, help/gen_html/href/M3_298.html, help/gen_html/href/M3_299.html, help/gen_html/href/M3_3.html, help/gen_html/href/M3_30.html, help/gen_html/href/M3_300.html, help/gen_html/href/M3_301.html, help/gen_html/href/M3_302.html, help/gen_html/href/M3_303.html, help/gen_html/href/M3_304.html, help/gen_html/href/M3_305.html, help/gen_html/href/M3_306.html, help/gen_html/href/M3_307.html, help/gen_html/href/M3_308.html, help/gen_html/href/M3_309.html, help/gen_html/href/M3_31.html, help/gen_html/href/M3_310.html, help/gen_html/href/M3_311.html, help/gen_html/href/M3_312.html, help/gen_html/href/M3_313.html, help/gen_html/href/M3_314.html, help/gen_html/href/M3_315.html, help/gen_html/href/M3_316.html, help/gen_html/href/M3_317.html, help/gen_html/href/M3_318.html, help/gen_html/href/M3_319.html, help/gen_html/href/M3_32.html, help/gen_html/href/M3_320.html, help/gen_html/href/M3_321.html, help/gen_html/href/M3_322.html, help/gen_html/href/M3_323.html, help/gen_html/href/M3_324.html, help/gen_html/href/M3_325.html, help/gen_html/href/M3_326.html, help/gen_html/href/M3_327.html, help/gen_html/href/M3_328.html, help/gen_html/href/M3_329.html, help/gen_html/href/M3_33.html, help/gen_html/href/M3_330.html, help/gen_html/href/M3_331.html, help/gen_html/href/M3_332.html, help/gen_html/href/M3_333.html, help/gen_html/href/M3_334.html, help/gen_html/href/M3_335.html, help/gen_html/href/M3_336.html, help/gen_html/href/M3_337.html, help/gen_html/href/M3_338.html, help/gen_html/href/M3_339.html, help/gen_html/href/M3_34.html, help/gen_html/href/M3_340.html, help/gen_html/href/M3_341.html, help/gen_html/href/M3_342.html, help/gen_html/href/M3_343.html, help/gen_html/href/M3_344.html, help/gen_html/href/M3_345.html, help/gen_html/href/M3_346.html, help/gen_html/href/M3_347.html, help/gen_html/href/M3_348.html, help/gen_html/href/M3_349.html, help/gen_html/href/M3_35.html, help/gen_html/href/M3_350.html, help/gen_html/href/M3_351.html, help/gen_html/href/M3_352.html, help/gen_html/href/M3_353.html, help/gen_html/href/M3_354.html, help/gen_html/href/M3_355.html, help/gen_html/href/M3_356.html, help/gen_html/href/M3_357.html, help/gen_html/href/M3_358.html, help/gen_html/href/M3_359.html, help/gen_html/href/M3_36.html, help/gen_html/href/M3_360.html, help/gen_html/href/M3_361.html, help/gen_html/href/M3_37.html, help/gen_html/href/M3_38.html, help/gen_html/href/M3_39.html, help/gen_html/href/M3_4.html, help/gen_html/href/M3_40.html, help/gen_html/href/M3_41.html, help/gen_html/href/M3_42.html, help/gen_html/href/M3_43.html, help/gen_html/href/M3_44.html, help/gen_html/href/M3_45.html, help/gen_html/href/M3_46.html, help/gen_html/href/M3_47.html, help/gen_html/href/M3_48.html, help/gen_html/href/M3_49.html, help/gen_html/href/M3_5.html, help/gen_html/href/M3_50.html, help/gen_html/href/M3_51.html, help/gen_html/href/M3_52.html, help/gen_html/href/M3_53.html, help/gen_html/href/M3_54.html, help/gen_html/href/M3_55.html, help/gen_html/href/M3_56.html, help/gen_html/href/M3_57.html, help/gen_html/href/M3_58.html, help/gen_html/href/M3_59.html, help/gen_html/href/M3_60.html, help/gen_html/href/M3_61.html, help/gen_html/href/M3_62.html, help/gen_html/href/M3_63.html, help/gen_html/href/M3_64.html, help/gen_html/href/M3_65.html, help/gen_html/href/M3_66.html, help/gen_html/href/M3_67.html, help/gen_html/href/M3_68.html, help/gen_html/href/M3_69.html, help/gen_html/href/M3_70.html, help/gen_html/href/M3_71.html, help/gen_html/href/M3_72.html, help/gen_html/href/M3_73.html, help/gen_html/href/M3_74.html, help/gen_html/href/M3_75.html, help/gen_html/href/M3_76.html, help/gen_html/href/M3_77.html, help/gen_html/href/M3_78.html, help/gen_html/href/M3_79.html, help/gen_html/href/M3_8.html, help/gen_html/href/M3_80.html, help/gen_html/href/M3_81.html, help/gen_html/href/M3_82.html, help/gen_html/href/M3_83.html, help/gen_html/href/M3_84.html, help/gen_html/href/M3_85.html, help/gen_html/href/M3_86.html, help/gen_html/href/M3_87.html, help/gen_html/href/M3_88.html, help/gen_html/href/M3_89.html, help/gen_html/href/M3_90.html, help/gen_html/href/M3_91.html, help/gen_html/href/M3_92.html, help/gen_html/href/M3_93.html, help/gen_html/href/M3_94.html, help/gen_html/href/M3_95.html, help/gen_html/href/M3_96.html, help/gen_html/href/M3_97.html, help/gen_html/href/M3_98.html, help/gen_html/href/M3_99.html, help/gen_html/href/MG_1.html, help/gen_html/href/MG_10.html, help/gen_html/href/MG_11.html, help/gen_html/href/MG_12.html, help/gen_html/href/MG_13.html, help/gen_html/href/MG_14.html, help/gen_html/href/MG_15.html, help/gen_html/href/MG_16.html, help/gen_html/href/MG_17.html, help/gen_html/href/MG_18.html, help/gen_html/href/MG_19.html, help/gen_html/href/MG_2.html, help/gen_html/href/MG_20.html, help/gen_html/href/MG_21.html, help/gen_html/href/MG_3.html, help/gen_html/href/MG_4.html, help/gen_html/href/MG_5.html, help/gen_html/href/MG_6.html, help/gen_html/href/MG_7.html, help/gen_html/href/MG_8.html, help/gen_html/href/MG_9.html, help/gen_html/http/INDEX.html, help/gen_html/juno-app/INDEX.html, help/gen_html/juno-app/derived/JunoBundle.m3.html, help/gen_html/juno-compiler/INDEX.html, help/gen_html/juno-machine/INDEX.html, help/gen_html/jvideo/INDEX.html, help/gen_html/jvideo/src/POSIX/JVConverter.i3.html, help/gen_html/libbuf/INDEX.html, help/gen_html/libbuf/src/Buf.m3.html, help/gen_html/libm3/INDEX.html, help/gen_html/libm3/src/bundleintf/Bundle.i3.html, help/gen_html/libm3/src/fmtlex/Fmt.m3.html, help/gen_html/libm3/src/geometry/Path.i3.html, help/gen_html/libm3/src/os/Common/File.i3.html, help/gen_html/libm3/src/os/Common/Pipe.i3.html, help/gen_html/libm3/src/os/Common/Process.i3.html, help/gen_html/libm3/src/os/Common/RegularFile.i3.html, help/gen_html/libm3/src/os/Common/Terminal.i3.html, help/gen_html/libm3/src/os/POSIX/FSPosix.m3.html, help/gen_html/libm3/src/os/POSIX/FSPosixC.c.html, help/gen_html/libm3/src/os/POSIX/FSPosixC.i3.html, help/gen_html/libm3/src/os/POSIX/FilePosix.m3.html, help/gen_html/libm3/src/os/POSIX/FilePosixC.c.html, help/gen_html/libm3/src/os/POSIX/FilePosixC.i3.html, help/gen_html/libm3/src/os/POSIX/OSConfigPosixC.c.html, help/gen_html/libm3/src/os/POSIX/ProcessPosixCommon.m3.html, help/gen_html/libm3/src/os/POSIX/SocketPosix.m3.html, help/gen_html/libm3/src/perftool/POSIX/LowPerfTool.m3.html, help/gen_html/libm3/src/pickle/ver2/ConvertPacking.m3.html, help/gen_html/libm3/src/pickle/ver2/PickleStubs.i3.html, help/gen_html/libm3/src/pickle/ver2/PickleStubs.m3.html, help/gen_html/libm3/src/rw/AutoFlushWr.m3.html, help/gen_html/libm3/src/rw/FileRd.m3.html, help/gen_html/libm3/src/rw/FileWr.m3.html, help/gen_html/libm3/src/rw/IO.i3.html, help/gen_html/libm3/src/rw/IO.m3.html, help/gen_html/libm3/src/rw/Rd.i3.html, help/gen_html/libm3/src/rw/Rd.m3.html, help/gen_html/libm3/src/rw/UnsafeWr.i3.html, help/gen_html/libm3/src/rw/Wr.i3.html, help/gen_html/libm3/src/rw/Wr.m3.html, help/gen_html/libm3/src/types/Unicode.i3.html, help/gen_html/libm3/src/types/Unicode.m3.html, help/gen_html/libm3/src/uid/POSIX/MachineIDPosixC.c.html, help/gen_html/libsio/INDEX.html, help/gen_html/listfuncs/INDEX.html, help/gen_html/listfuncs/src/ListFuncs.ig.html, help/gen_html/listfuncs/src/ListFuncs.mg.html, help/gen_html/m3browser/INDEX.html, help/gen_html/m3browser/src/Main.m3.html, help/gen_html/m3browser/src/OS.i3.html, help/gen_html/m3browser/src/OS.m3.html, help/gen_html/m3bundle/INDEX.html, help/gen_html/m3cgcat/INDEX.html, help/gen_html/m3cggen/INDEX.html, help/gen_html/m3cggen/src/Main.m3.html, help/gen_html/m3core/INDEX.html, help/gen_html/m3core/derived/Compiler.i3.html, help/gen_html/m3core/src/m3core.h.html, help/gen_html/m3core/src/C/Common/CerrnoC.c.html, help/gen_html/m3core/src/C/Common/Csignal.i3.html, help/gen_html/m3core/src/C/Common/CsignalC.c.html, help/gen_html/m3core/src/C/Common/Cstddef.i3.html, help/gen_html/m3core/src/C/Common/Cstdio.i3.html, help/gen_html/m3core/src/C/Common/CstdioC.c.html, help/gen_html/m3core/src/C/Common/Cstdlib.i3.html, help/gen_html/m3core/src/C/Common/CstdlibC.c.html, help/gen_html/m3core/src/C/Common/Cstring.i3.html, help/gen_html/m3core/src/C/Common/CstringC.c.html, help/gen_html/m3core/src/Csupport/Common/dtoa.h.html, help/gen_html/m3core/src/Csupport/Common/hand.c.html, help/gen_html/m3core/src/convert/CConvert.m3.html, help/gen_html/m3core/src/convert/Convert.m3.html, help/gen_html/m3core/src/main/Main.i3.html, help/gen_html/m3core/src/runtime/POSIX/RTOSbrk.c.html, help/gen_html/m3core/src/runtime/POSIX/RTPerfTool.m3.html, help/gen_html/m3core/src/runtime/POSIX/RTSignalC.c.html, help/gen_html/m3core/src/runtime/POSIX/RTThread.i3.html, help/gen_html/m3core/src/runtime/POSIX/RTThread.m3.html, help/gen_html/m3core/src/runtime/POSIX/RTThreadStk.m3.html, help/gen_html/m3core/src/runtime/common/RTAllocator.m3.html, help/gen_html/m3core/src/runtime/common/RTCollector.m3.html, help/gen_html/m3core/src/runtime/common/RTCollectorSRC.i3.html, help/gen_html/m3core/src/runtime/common/RTHeapInfo.m3.html, help/gen_html/m3core/src/runtime/common/RTHeapRep.i3.html, help/gen_html/m3core/src/runtime/common/RTHeapRep.m3.html, help/gen_html/m3core/src/runtime/common/RTHeapStats.m3.html, help/gen_html/m3core/src/runtime/common/RTIO.i3.html, help/gen_html/m3core/src/runtime/common/RTIOc.c.html, help/gen_html/m3core/src/runtime/common/RTLinker.m3.html, help/gen_html/m3core/src/runtime/common/RTLinkerC.c.html, help/gen_html/m3core/src/runtime/common/RTLinkerX.i3.html, help/gen_html/m3core/src/runtime/common/RTMachine.i3.html, help/gen_html/m3core/src/runtime/common/RTMisc.i3.html, help/gen_html/m3core/src/runtime/common/RTMisc.m3.html, help/gen_html/m3core/src/runtime/common/RTMiscC.c.html, help/gen_html/m3core/src/runtime/common/RTOS.i3.html, help/gen_html/m3core/src/runtime/common/RTPacking.i3.html, help/gen_html/m3core/src/runtime/common/RTPacking.m3.html, help/gen_html/m3core/src/runtime/common/RTProcess.i3.html, help/gen_html/m3core/src/runtime/common/RTProcessC.c.html, help/gen_html/m3core/src/runtime/common/RTThread.i3.html, help/gen_html/m3core/src/runtime/common/RTTipe.i3.html, help/gen_html/m3core/src/runtime/common/RTTipe.m3.html, help/gen_html/m3core/src/runtime/ex_frame/RTExFrame.m3.html, help/gen_html/m3core/src/runtime/ex_frame/RTStackC.c.html, help/gen_html/m3core/src/text/String16.i3.html, help/gen_html/m3core/src/text/String16.m3.html, help/gen_html/m3core/src/text/String8.m3.html, help/gen_html/m3core/src/text/Text.m3.html, help/gen_html/m3core/src/thread/Common/Thread.i3.html, help/gen_html/m3core/src/thread/Common/ThreadEvent.i3.html, help/gen_html/m3core/src/thread/Common/ThreadF.i3.html, help/gen_html/m3core/src/time/POSIX/DateBsd.m3.html, help/gen_html/m3core/src/win32/WinDef.i3.html, help/gen_html/m3core/src/win32/WinNT.i3.html, help/gen_html/m3front/INDEX.html, help/gen_html/m3front/src/builtinOps/Adr.m3.html, help/gen_html/m3front/src/builtinOps/BuiltinOps.m3.html, help/gen_html/m3front/src/builtinOps/Dec.m3.html, help/gen_html/m3front/src/builtinOps/Dispose.m3.html, help/gen_html/m3front/src/builtinOps/First.m3.html, help/gen_html/m3front/src/builtinOps/Inc.m3.html, help/gen_html/m3front/src/builtinOps/Last.m3.html, help/gen_html/m3front/src/builtinOps/Loophole.m3.html, help/gen_html/m3front/src/builtinOps/Ord.m3.html, help/gen_html/m3front/src/builtinOps/Subarray.m3.html, help/gen_html/m3front/src/builtinOps/Val.m3.html, help/gen_html/m3front/src/builtinTypes/BuiltinTypes.m3.html, help/gen_html/m3front/src/builtinTypes/LCard.i3.html, help/gen_html/m3front/src/builtinTypes/LCard.m3.html, help/gen_html/m3front/src/builtinWord/GenAnd.ig.html, help/gen_html/m3front/src/builtinWord/GenAnd.mg.html, help/gen_html/m3front/src/builtinWord/GenDivide.ig.html, help/gen_html/m3front/src/builtinWord/GenDivide.mg.html, help/gen_html/m3front/src/builtinWord/GenExtract.ig.html, help/gen_html/m3front/src/builtinWord/GenExtract.mg.html, help/gen_html/m3front/src/builtinWord/GenGE.ig.html, help/gen_html/m3front/src/builtinWord/GenGE.mg.html, help/gen_html/m3front/src/builtinWord/GenGT.ig.html, help/gen_html/m3front/src/builtinWord/GenGT.mg.html, help/gen_html/m3front/src/builtinWord/GenInsert.ig.html, help/gen_html/m3front/src/builtinWord/GenInsert.mg.html, help/gen_html/m3front/src/builtinWord/GenLE.ig.html, help/gen_html/m3front/src/builtinWord/GenLE.mg.html, help/gen_html/m3front/src/builtinWord/GenLT.ig.html, help/gen_html/m3front/src/builtinWord/GenLT.mg.html, help/gen_html/m3front/src/builtinWord/GenMinus.ig.html, help/gen_html/m3front/src/builtinWord/GenMinus.mg.html, help/gen_html/m3front/src/builtinWord/GenMod.ig.html, help/gen_html/m3front/src/builtinWord/GenMod.mg.html, help/gen_html/m3front/src/builtinWord/GenModule.ig.html, help/gen_html/m3front/src/builtinWord/GenModule.mg.html, help/gen_html/m3front/src/builtinWord/GenNot.ig.html, help/gen_html/m3front/src/builtinWord/GenNot.mg.html, help/gen_html/m3front/src/builtinWord/GenOr.ig.html, help/gen_html/m3front/src/builtinWord/GenOr.mg.html, help/gen_html/m3front/src/builtinWord/GenPlus.ig.html, help/gen_html/m3front/src/builtinWord/GenPlus.mg.html, help/gen_html/m3front/src/builtinWord/GenRotate.ig.html, help/gen_html/m3front/src/builtinWord/GenRotate.mg.html, help/gen_html/m3front/src/builtinWord/GenShift.ig.html, help/gen_html/m3front/src/builtinWord/GenShift.mg.html, help/gen_html/m3front/src/builtinWord/GenTimes.ig.html, help/gen_html/m3front/src/builtinWord/GenTimes.mg.html, help/gen_html/m3front/src/builtinWord/GenXor.ig.html, help/gen_html/m3front/src/builtinWord/GenXor.mg.html, help/gen_html/m3front/src/builtinWord/WordAnd.i3.html, help/gen_html/m3front/src/builtinWord/WordAnd.m3.html, help/gen_html/m3front/src/builtinWord/WordDivide.i3.html, help/gen_html/m3front/src/builtinWord/WordDivide.m3.html, help/gen_html/m3front/src/builtinWord/WordExtract.i3.html, help/gen_html/m3front/src/builtinWord/WordExtract.m3.html, help/gen_html/m3front/src/builtinWord/WordGE.i3.html, help/gen_html/m3front/src/builtinWord/WordGE.m3.html, help/gen_html/m3front/src/builtinWord/WordGT.i3.html, help/gen_html/m3front/src/builtinWord/WordGT.m3.html, help/gen_html/m3front/src/builtinWord/WordInsert.i3.html, help/gen_html/m3front/src/builtinWord/WordInsert.m3.html, help/gen_html/m3front/src/builtinWord/WordLE.i3.html, help/gen_html/m3front/src/builtinWord/WordLE.m3.html, help/gen_html/m3front/src/builtinWord/WordLT.i3.html, help/gen_html/m3front/src/builtinWord/WordLT.m3.html, help/gen_html/m3front/src/builtinWord/WordMinus.i3.html, help/gen_html/m3front/src/builtinWord/WordMinus.m3.html, help/gen_html/m3front/src/builtinWord/WordMod.i3.html, help/gen_html/m3front/src/builtinWord/WordMod.m3.html, help/gen_html/m3front/src/builtinWord/WordModule.i3.html, help/gen_html/m3front/src/builtinWord/WordModule.m3.html, help/gen_html/m3front/src/builtinWord/WordNot.i3.html, help/gen_html/m3front/src/builtinWord/WordNot.m3.html, help/gen_html/m3front/src/builtinWord/WordOr.i3.html, help/gen_html/m3front/src/builtinWord/WordOr.m3.html, help/gen_html/m3front/src/builtinWord/WordPlus.i3.html, help/gen_html/m3front/src/builtinWord/WordPlus.m3.html, help/gen_html/m3front/src/builtinWord/WordRotate.i3.html, help/gen_html/m3front/src/builtinWord/WordRotate.m3.html, help/gen_html/m3front/src/builtinWord/WordShift.i3.html, help/gen_html/m3front/src/builtinWord/WordShift.m3.html, help/gen_html/m3front/src/builtinWord/WordTimes.i3.html, help/gen_html/m3front/src/builtinWord/WordTimes.m3.html, help/gen_html/m3front/src/builtinWord/WordXor.i3.html, help/gen_html/m3front/src/builtinWord/WordXor.m3.html, help/gen_html/m3front/src/builtinWord/word.tmpl.html, help/gen_html/m3front/src/exprs/AddExpr.m3.html, help/gen_html/m3front/src/exprs/CallExpr.i3.html, help/gen_html/m3front/src/exprs/CallExpr.m3.html, help/gen_html/m3front/src/exprs/CastExpr.m3.html, help/gen_html/m3front/src/exprs/CheckExpr.m3.html, help/gen_html/m3front/src/exprs/DerefExpr.m3.html, help/gen_html/m3front/src/exprs/Expr.i3.html, help/gen_html/m3front/src/exprs/Expr.m3.html, help/gen_html/m3front/src/exprs/ExprRep.i3.html, help/gen_html/m3front/src/exprs/KeywordExpr.m3.html, help/gen_html/m3front/src/exprs/NamedExpr.m3.html, help/gen_html/m3front/src/exprs/QualifyExpr.m3.html, help/gen_html/m3front/src/exprs/RecordExpr.m3.html, help/gen_html/m3front/src/exprs/SetExpr.m3.html, help/gen_html/m3front/src/exprs/SubscriptExpr.m3.html, help/gen_html/m3front/src/exprs/SubtractExpr.m3.html, help/gen_html/m3front/src/exprs/VarExpr.m3.html, help/gen_html/m3front/src/misc/CG.i3.html, help/gen_html/m3front/src/misc/CG.m3.html, help/gen_html/m3front/src/misc/M3Front.m3.html, help/gen_html/m3front/src/misc/TipeDesc.i3.html, help/gen_html/m3front/src/misc/Token.m3.html, help/gen_html/m3front/src/stmts/AssignStmt.m3.html, help/gen_html/m3front/src/stmts/WithStmt.m3.html, help/gen_html/m3front/src/types/RecordType.i3.html, help/gen_html/m3front/src/types/RecordType.m3.html, help/gen_html/m3front/src/types/SubrangeType.m3.html, help/gen_html/m3front/src/values/Formal.m3.html, help/gen_html/m3front/src/values/Value.i3.html, help/gen_html/m3front/src/values/Value.m3.html, help/gen_html/m3front/src/values/ValueRep.i3.html, help/gen_html/m3front/src/values/Variable.m3.html, help/gen_html/m3linker/INDEX.html, help/gen_html/m3markup/INDEX.html, help/gen_html/m3middle/INDEX.html, help/gen_html/m3middle/src/M3CG.i3.html, help/gen_html/m3middle/src/M3CG.m3.html, help/gen_html/m3middle/src/M3CG_BinRd.m3.html, help/gen_html/m3middle/src/M3CG_BinWr.m3.html, help/gen_html/m3middle/src/M3CG_Binary.i3.html, help/gen_html/m3middle/src/M3CG_Check.m3.html, help/gen_html/m3middle/src/M3CG_Ops.i3.html, help/gen_html/m3middle/src/M3CG_Rd.m3.html, help/gen_html/m3middle/src/M3CG_Wr.m3.html, help/gen_html/m3middle/src/TInt.i3.html, help/gen_html/m3middle/src/TInt.m3.html, help/gen_html/m3middle/src/TWord.i3.html, help/gen_html/m3middle/src/TWord.m3.html, help/gen_html/m3middle/src/Target.i3.html, help/gen_html/m3middle/src/Target.m3.html, help/gen_html/m3quake/INDEX.html, help/gen_html/m3quake/derived/M3xConfig.i3.html, help/gen_html/m3quake/src/M3Path.i3.html, help/gen_html/m3quake/src/M3Path.m3.html, help/gen_htm