mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-20 07:20:26 +08:00
197450 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
|
38304846d1 |
c++: partial ordering with memfn ptr cst [PR108104]
Here we're triggering an overzealous assert in unify during partial ordering since the member function pointer constants are represented as ordinary CONSTRUCTORs (with TYPE_PTRMEMFUNC_P TREE_TYPE) but the assert expects COMPOUND_LITERAL_P constructors. PR c++/108104 gcc/cp/ChangeLog: * pt.cc (unify) <default>: Relax assert to accept any CONSTRUCTOR parm, not just COMPOUND_LITERAL_P one. gcc/testsuite/ChangeLog: * g++.dg/template/ptrmem33.C: New test. |
||
|
12abd5a7d1 |
IRA: Check that reg classes contain a hard reg of given mode in reg move cost calculation
IRA calculates wrong AVR costs for moving general hard regs of SFmode. To calculate the costs we did not exclude sub-classes which do not contain hard regs of given mode. This was the reason for spilling a pseudo in the PR. The patch fixes this. PR rtl-optimization/90706 gcc/ChangeLog: * ira-costs.cc: Include print-rtl.h. (record_reg_classes, scan_one_insn): Add code to print debug info. * ira.cc (ira_init_register_move_cost): Check that at least one hard reg of the mode are in the class contents to calculate the register move costs. gcc/testsuite/ChangeLog: * gcc.target/avr/pr90706.c: New. |
||
|
8b775b4c48 |
c++: Ensure !!var is not an lvalue [PR107065]
The TRUTH_NOT_EXPR case in cp_build_unary_op is one of the spots where we somewhat fold immediately using invert_truthvalue_loc. I've tried using return build1_loc (location, TRUTH_NOT_EXPR, boolean_type_node, arg); in there instead, but unfortunately that regressed Wlogical-not-parentheses-*.c pr49706.c pr62199.c pr65120.c sequence-pt-1.C tests, so at least for backporting that doesn't seem to be a way to go. So, this patch instead wraps it into NON_LVALUE_EXPR if needed (which also need a tweak for some tests in the pr47906.c test, but nothing major), with the intent to make it backportable, and later I'll try to do further steps to avoid folding here prematurely. Most of the problems with build1 TRUTH_NOT_EXPR are that it doesn't even invert comparisons as most common case and lots of warning code isn't able to deal with ! around comparisons; so perhaps one way to do this would be fold by hand only invertable comparisons and for the rest create TRUTH_NOT_EXPR. 2022-12-15 Jakub Jelinek <jakub@redhat.com> PR c++/107065 gcc/cp/ * typeck.cc (cp_build_unary_op) <case TRUTH_NOT_EXPR>: If invert_truthvalue_loc returns obvalue_p, wrap it into NON_LVALUE_EXPR. * parser.cc (cp_parser_binary_expression): Don't call warn_logical_not_parentheses if current.lhs is a NON_LVALUE_EXPR of a decl with boolean type. gcc/testsuite/ * g++.dg/cpp0x/pr107065.C: New test. |
||
|
f5300d28bf |
doc: Fix documentation for __builtin_dynamic_object_size
__builtin_dynamic_object_size is missing from the full list of builtins, so add it. Also mention it alongside __builtin_object_size in the passes description. gcc/ChangeLog: * doc/extend.texi (__builtin_dynamic_object_size): Document builtin. * doc/passes.texi (Optimize calls to @code{__builtin_object_size}): Also mention __builtin_dynamic_object_size. Signed-off-by: Siddhesh Poyarekar <siddhesh@gotplt.org> |
||
|
7283380a58 |
middle-end/70090: Document that -fsanitize=object-size uses dynamic size
Fix the documentation to say that object sizes are deduced using __builtin_dynamic_object_size. gcc/ChangeLog: PR middle-end/70090 * doc/invoke.texi (-fsanitize=object-size): Use __builtin_dynamic_object_size instead of __builtin_object_size. Signed-off-by: Siddhesh Poyarekar <siddhesh@gotplt.org> |
||
|
d49b2a3a1d |
middle-end/108086 - avoid quadraticness in copy_edges_for_bb
For the testcase in PR108086 it's visible that we split blocks multiple times when inlining and that causes us to adjust the block tail stmt BBs multiple times, once for each split. The fix is to walk backwards and split from the tail instead. For a reduced testcase this improves compile-time at -O by 4%. PR middle-end/108086 * tree-inline.cc (copy_edges_for_bb): Walk stmts backwards for splitting the block to avoid quadratic behavior with setting stmts BB on multliple splits. |
||
|
3f101e32e2 |
c++, libstdc++: Add typeinfo for _Float{16,32,64,128,32x,64x} and __bf16 types [PR108075]
The following patch adds typeinfos for the extended floating point types and _Float{32,64}x. 2022-12-15 Jakub Jelinek <jakub@redhat.com> PR libstdc++/108075 gcc/cp/ * rtti.cc (emit_support_tinfos): Add pointers to {bfloat16,float{16,32,64,128,32x,64x,128x}}_type_node to fundamentals array. gcc/testsuite/ * g++.dg/cpp23/ext-floating13.C: New test. libstdc++-v3/ * config/abi/pre/gnu.ver (CXXABI_1.3.14): Export _ZTIDF[0-9]*[_bx], _ZTIPDF[0-9]*[_bx] and _ZTIPKDF[0-9]*[_bx]. * testsuite/util/testsuite_abi.cc (check_version): Handle CXXABI_1.3.14. |
||
|
85d0d2683b |
Subject: [committed, pushed] PR-107607 m2: Remove bdepend on realpath, cut and echo
It can be replaced by a subshell'd cd just fine. (cd gcc/m2; autoconf-2.69) gcc/m2/ChangeLog: * configure.ac: Stop probing for realpath. * tools-src/calcpath: Break dependency on realpath, cut and echo. * configure: Rebuilt. Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com> |
||
|
4a16480841 |
testsuite: Fix up * quoting in glob strings
\* wasn't enough, we need \\* and for ObjC it wasn't done at all. 2022-12-15 Jakub Jelinek <jakub@redhat.com> * lib/target-supports.exp (check_compile): Further quoting fixes for /* Assembly, /* ObjC and (* Modula-2 *) checks. |
||
|
9cf9f3c762 |
testsuite: Add support for Rust and Modula-2 effective target tests
This patch allows magic comments also for Rust and Modula-2 for effective target tests etc. and fixes up the Assembly entry - it is a glob, so /* Assembly can match /whatever Assembly and not just /* Assembly. Tested on x86_64-linux with make check-g++ RUNTESTFLAGS=i386.exp=pr35513* and verifying it still uses *.S extension for the property_1_needed effective target test. 2022-12-15 Jakub Jelinek <jakub@redhat.com> * lib/target-supports.exp (check_compile): Add support for Rust and Modula-2. Use \* rather than * for /* comment for Assembly. |
||
|
32582c190b |
Adjust ChangeLog entries from m2 merge.
Fix up ChangeLog formatting... |
||
|
157003d450 |
PR-108123 gcc/m2/gm2config.h.in
Rebuilt the file gcc/m2/gm2config.h.in with autoheader-2.69. gcc/m2/ChangeLog: * gm2config.h.in: Rebuilt. Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com> |
||
|
e205ec03f0 |
libgfortran's ISO_Fortran_binding.c: Use GCC11 version for backward-only code [PR108056]
Since GCC 12, the conversion between the array descriptors formats - the internal (GFC) and the C binding one (CFI) - moved to the compiler itself such that the cfi_desc_to_gfc_desc/gfc_desc_to_cfi_desc functions are only used with older code (GCC 9 to 11). The newly added checks caused asserts as older code did not pass the proper values (e.g. real(4) as effective argument arrived as BT_ASSUME type as the effective type got lost inbetween). As proposed in the PR, revert to the GCC 11 version - known bugs is better than some fixes and new issues. Still, GCC 12 is much better in terms of TS29113 support and should really be used. This patch uses the current libgomp version of the GCC 11 branch, except it fixes the GFC version number (which is 0), uses calloc instead of malloc, and sets the lower bound to 1 instead of keeping it as is for CFI_attribute_other. libgfortran/ChangeLog: PR libfortran/108056 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc, gfc_desc_to_cfi_desc): Mostly revert to GCC 11 version for those backward-compatiblity-only functions. |
||
|
c263c3eba8 |
gcov: annotate uncovered branches [PR107537]
PR gcov-profile/107537 gcc/ChangeLog: * gcov.cc (output_branch_count): Add annotation '(fallthrough)' or '(throw)' also to uncovered branches. Signed-off-by: Michael Förderer <michael.foerderer@gmx.de> |
||
|
930b3d6948 |
middle-end/108086 - reduce operand scanner use from inliner
The following avoids a redundant second operand scan on all stmts during inlining which shows with PR108086. PR middle-end/108086 * tree-inline.cc (copy_edges_for_bb): Do not update all stmts again. |
||
|
bf3ce6f84a |
into-ssa: Fix emitting debug stmts after asm goto [PR108095]
The following testcase ICEs, because ccp1 replaced s.0_1 = &s; __asm__ goto("" : "=r" MEM[(T *)s.0_1] : : : "lab" lab); with __asm__ goto("" : "=r" s : : : "lab" lab); and because s is no longer addressable, we are rewriting it into ssa and want __asm__ goto("" : "=r" s_7 : : : "lab" lab); plus debug stmt # DEBUG s => s_7 The code assumes that there is at most one non-EH edge in that case, but with the addition of outputs to asm goto that is no longer the case, we can have many outgoing edges. The patch keeps the checking assertion that there is at most one such edge for everything but asm goto, but moves the addition of the debug stmt into the loop, so that it can be added on all edges where it is possible, not just one of them. Furthermore, looking at gsi_insert_on_edge_immediate -> gimple_find_edge_insert_loc, the conditions to insert stmt there to the destination block are if (single_pred_p (dest) && gimple_seq_empty_p (phi_nodes (dest)) && dest != EXIT_BLOCK_PTR_FOR_FN (cfun)) (plus there is code to insert it in the previous block but that is never true when the pred is known to be stmt_ends_bb_p), while mayube_register_def was just checking if (ef && single_pred_p (ef->dest) && ef->dest != EXIT_BLOCK_PTR_FOR_FN (cfun)) so if for whatever reason ef->dest had any PHIs, we'd split the edge for -g and not for -g0, something we must avoid for -fcompare-debug stability. So, I've added the no phi_nodes check too. 2022-12-15 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/108095 * tree-into-ssa.cc (maybe_register_def): Insert debug stmt on all non-EH edges from asm goto if they have a single predecessor rather than asserting there is at most one such edge. Test whether there are no PHI nodes next to the single predecessor test. * gcc.dg/pr108095.c: New test. |
||
|
4ef521bbc6 |
c++: fix initializer_list transformation [PR108071]
In these testcases, we weren't adequately verifying that constructing the element type from an array element would have the same effect as constructing it from one of the initializers. PR c++/108071 PR c++/105838 gcc/cp/ChangeLog: * call.cc (struct conversion_obstack_sentinel): New. (maybe_init_list_as_array): Compare conversion of dummy argument. gcc/testsuite/ChangeLog: * g++.dg/cpp0x/initlist131.C: New test. * g++.dg/cpp0x/initlist132.C: New test. * g++.dg/cpp0x/initlist133.C: New test. |
||
|
26f4aefaeb | Daily bump. | ||
|
41faa1d7be |
analyzer: don't call binding_key::make on empty regions [PR108065]
gcc/analyzer/ChangeLog: PR analyzer/108065 * region.cc (decl_region::get_svalue_for_initializer): Bail out to avoid calling binding_key::make with an empty region. * store.cc (binding_map::apply_ctor_val_to_range): Likewise. (binding_map::apply_ctor_pair_to_child_region): Likewise. (binding_cluster::bind): Likewise. (binding_cluster::purge_region): Likewise. (binding_cluster::maybe_get_compound_binding): Likewise. (binding_cluster::maybe_get_simple_value): Likewise. gcc/testsuite/ChangeLog: PR analyzer/108065 * gfortran.dg/analyzer/pr108065.f90: New test. Signed-off-by: David Malcolm <dmalcolm@redhat.com> |
||
|
70b303049e |
btf: correct generation for extern funcs [PR106773]
The eBPF loader expects to find entries for functions declared as extern in the corresponding BTF_KIND_DATASEC record, but we were not generating these entries. This patch adds support for the 'extern' linkage of function types in BTF, and creates entries for for them BTF_KIND_DATASEC records as needed. PR target/106773 gcc/ * btfout.cc (get_section_name): New function. (btf_collect_datasec): Use it here. Process functions, marking them 'extern' and generating DATASEC entries for them as appropriate. Move creation of BTF_KIND_FUNC records to here... (btf_dtd_emit_preprocess_cb): ... from here. gcc/testsuite/ * gcc.dg/debug/btf/btf-datasec-2.c: New test. * gcc.dg/debug/btf/btf-function-6.c: New test. include/ * btf.h (enum btf_func_linkage): New. (struct btf_var_secinfo): Update comments with notes about extern functions. |
||
|
4f7aa145b7 |
btf: fix 'extern const void' variables [PR106773]
The eBPF loader expects to find BTF_KIND_VAR records for references to extern const void symbols. We were mistakenly identifing these as unsupported types, and as a result skipping emitting VAR records for them. In addition, the internal DWARF representation from which BTF is produced does not generate 'const' modifier DIEs for the void type, which meant in BTF the 'const' qualifier was dropped for 'extern const void' variables. This patch also adds support for generating a const void type in BTF to correct emission for these variables. PR target/106773 gcc/ * btfout.cc (btf_collect_datasec): Correct size of void entries. (btf_dvd_emit_preprocess_cb): Do not skip emitting variables which refer to void types. (btf_init_postprocess): Create 'const void' type record if needed and adjust variables to refer to it as appropriate. gcc/testsuite/ * gcc.dg/debug/btf/btf-pr106773.c: New test. |
||
|
2bce22e88e |
btf: add 'extern' linkage for variables [PR106773]
Add support for the 'extern' linkage value for BTF_KIND_VAR records, which is used for variables declared as extern in the source file. This also fixes a bug with BTF generation for extern variables which have both a non-defining declaration and a defining declaration in the same CU. PR target/106773 gcc/ * btfout.cc (btf_collect_datasec): Mark extern variables as such. (btf_dvd_emit_preprocess_cb): Skip non-defining extern variable decl if there is a defining decl for the same variable. (btf_asm_varent): Accomodate 'extern' linkage. gcc/testsuite/ * gcc.dg/debug/btf/btf-variables-4.c: New test. * gcc.dg/debug/btf/btf-variables-5.c: New test. include/ * btf.h (enum btf_var_linkage): New. (struct btf_var): Update comment to note 'extern' linkage. |
||
|
0e9495303d
|
ipa-sra: Consider the first parameter of methods safe to dereference
Honza requested this after reviewing the patch that taught IPA-SRA that REFERENCE_TYPEs are always non-NULL that the pass also handles the first parameters of methods, this pointers, in the same way. So this patch does that. gcc/ChangeLog: 2022-12-14 Martin Jambor <mjambor@suse.cz> * ipa-sra.cc (create_parameter_descriptors): Consider the first parameter of a method safe to dereference. gcc/testsuite/ChangeLog: 2022-12-14 Martin Jambor <mjambor@suse.cz> * g++.dg/ipa/ipa-sra-6.C: New test. |
||
|
6539bbc148
|
ipa-sra: Fix address escape case when detecting Fortran descriptors
The discussion about scan_expr_access in ipa-sra.cc brought my attention to a missing case of handling an ADDR_EXPR. As the added testcase shows, the heuristics which looks for parameters which are local variables that are only written to and passed by reference in calls can miss a case where the address of the variable in question is stored elsewhere in an assignment. This patch adds that case to the function and also adds the optimization that Richi suggested, i.e. bailing out early on simple SSA_NAMEs and constant trees. gcc/ChangeLog: 2022-12-14 Martin Jambor <mjambor@suse.cz> * ipa-sra.cc (loaded_decls): Adjust comment. (scan_expr_access): Also detect assignments of address of local variables to a variable. Bail out early on SSA_NAMEs and constants as an optimization. gcc/testsuite/ChangeLog: 2022-12-14 Martin Jambor <mjambor@suse.cz> * gcc.dg/ipa/ipa-sra-29.c: New test. |
||
|
1eee94d351 |
Merge modula-2 front end onto gcc.
This commit merges the devel/modula2 into master. The libraries reside in libgm2, the compiler in gcc/m2 and the testsuite in gcc/testsuite/gm2. ChangeLog: * configure.ac (target_libraries): Add target-libgm2. Add NCN_STRICT_CHECK_TARGET_TOOLS entry for gm2. Add GCC_TARGET_TOOL entry for gm2. (compare_exclusions) add gcc/m2/gm2-compiler/M2Version, gcc/m2/gm2-compiler-boot/SYSTEM and gcc/m2/gm2version. * Makefile.def (target_modules): Add libgm2. (flags_to_pass) Add GM2_FOR_TARGET, GM2FLAGS_FOR_TARGET. (dependencies) Add all-target-libgm2 and on=all-target-libatomic. (languages) Add entry for language=m2 with gcc-check-target=check-m2 and lib-check-target=check-target-libgm2. * Makefile.tpl (BUILD_EXPORTS): Add definition for GM2 and GM2FLAGS. (HOST_EXPORTS) Add definition for GM2. (BASE_TARGET_EXPORTS) Add definition for GM2. (GM2_FOR_BUILD) Defined. (GM2FLAGS) Defined. (GM2_FOR_TARGET) Defined. (GM2FLAGS_FOR_TARGET) Defined. (EXTRA_HOST_FLAGS) Defined. (POSTSTAGE1_FLAGS_TO_PASS) Add GM2 and GM2_FOR_BUILD. (EXTRA_TARGET_FLAGS) Add GM2 and GM2FLAGS. (EXTRA_GCC_FLAGS) Add GM2_FOR_TARGET. * configure: (Rebuilt). * Makefile.in: (Rebuilt). libgm2/ChangeLog: * Makefile.am: (New file). * autogen.sh: (New file). * config.h.in: (New file). * configure.ac: (New file). * libm2cor/KeyBoardLEDs.cc: (New file). * libm2cor/Makefile.am: (New file). * libm2iso/ChanConsts.h: (New file). * libm2iso/ErrnoCategory.cc: (New file). * libm2iso/Makefile.am: (New file). * libm2iso/RTco.cc: (New file). * libm2iso/m2rts.h: (New file). * libm2iso/wrapsock.c: (New file). * libm2iso/wraptime.c: (New file). * libm2log/Break.c: (New file). * libm2log/Makefile.am: (New file). * libm2min/Makefile.am: (New file). * libm2min/libc.c: (New file). * libm2pim/Makefile.am: (New file). * libm2pim/Selective.cc: (New file). * libm2pim/SysExceptions.cc: (New file). * libm2pim/UnixArgs.cc: (New file). * libm2pim/cgetopt.cc: (New file). * libm2pim/dtoa.cc: (New file). * libm2pim/errno.cc: (New file). * libm2pim/ldtoa.cc: (New file). * libm2pim/sckt.cc: (New file). * libm2pim/target.c: (New file). * libm2pim/termios.cc: (New file). * libm2pim/wrapc.c: (New file). * configure: (Rebuilt). * libm2log/Makefile.in: (Rebuilt). * libm2min/Makefile.in: (Rebuilt). * libm2cor/Makefile.in: (Rebuilt). * libm2pim/Makefile.in: (Rebuilt). * libm2iso/Makefile.in: (Rebuilt). gcc/ChangeLog: * configure.ac (HAVE_PYTHON): Test for Python3 added. * dwarf2out.cc (gen_compile_unit_die): Check language_string and language to DW_LANG_Modula2. * doc/install.texi: Add m2 as a language. (--disable-libgm2) Documented. Add make check-m2 to testing selected tests. * doc/sourcebuild.texi (GM2): New prerequisite item. (Python3 modules) New item. (libgm2) Added. (gcc/m2) Added. * configure: (Rebuilt). * config.in: (Rebuilt). gcc/m2/ChangeLog: * COPYING.FDL: (New file). * COPYING.RUNTIME: (New file). * COPYING3: (New file). * COPYING3.LIB: (New file). * Make-lang.in: (New file). * Make-maintainer.in: (New file). * NEWS: (New file). * README: (New file). * config-lang.in: (New file). * config-make.in: (New file). * configure.ac: (New file). * gm2-compiler/CLexBuf.def: (New file). * gm2-compiler/CLexBuf.mod: (New file). * gm2-compiler/FifoQueue.def: (New file). * gm2-compiler/FifoQueue.mod: (New file). * gm2-compiler/Lists.def: (New file). * gm2-compiler/Lists.mod: (New file). * gm2-compiler/M2ALU.def: (New file). * gm2-compiler/M2ALU.mod: (New file). * gm2-compiler/M2AsmUtil.def: (New file). * gm2-compiler/M2AsmUtil.mod: (New file). * gm2-compiler/M2Base.def: (New file). * gm2-compiler/M2Base.mod: (New file). * gm2-compiler/M2BasicBlock.def: (New file). * gm2-compiler/M2BasicBlock.mod: (New file). * gm2-compiler/M2Batch.def: (New file). * gm2-compiler/M2Batch.mod: (New file). * gm2-compiler/M2Bitset.def: (New file). * gm2-compiler/M2Bitset.mod: (New file). * gm2-compiler/M2CaseList.def: (New file). * gm2-compiler/M2CaseList.mod: (New file). * gm2-compiler/M2Check.def: (New file). * gm2-compiler/M2Check.mod: (New file). * gm2-compiler/M2Code.def: (New file). * gm2-compiler/M2Code.mod: (New file). * gm2-compiler/M2ColorString.def: (New file). * gm2-compiler/M2ColorString.mod: (New file). * gm2-compiler/M2Comp.def: (New file). * gm2-compiler/M2Comp.mod: (New file). * gm2-compiler/M2Const.def: (New file). * gm2-compiler/M2Const.mod: (New file). * gm2-compiler/M2Debug.def: (New file). * gm2-compiler/M2Debug.mod: (New file). * gm2-compiler/M2DebugStack.def: (New file). * gm2-compiler/M2DebugStack.mod: (New file). * gm2-compiler/M2Defaults.def: (New file). * gm2-compiler/M2Defaults.mod: (New file). * gm2-compiler/M2DriverOptions.def: (New file). * gm2-compiler/M2DriverOptions.mod: (New file). * gm2-compiler/M2Emit.def: (New file). * gm2-compiler/M2Emit.mod: (New file). * gm2-compiler/M2Error.def: (New file). * gm2-compiler/M2Error.mod: (New file). * gm2-compiler/M2EvalSym.def: (New file). * gm2-compiler/M2FileName.def: (New file). * gm2-compiler/M2FileName.mod: (New file). * gm2-compiler/M2GCCDeclare.def: (New file). * gm2-compiler/M2GCCDeclare.mod: (New file). * gm2-compiler/M2GenGCC.def: (New file). * gm2-compiler/M2GenGCC.mod: (New file). * gm2-compiler/M2Graph.def: (New file). * gm2-compiler/M2Graph.mod: (New file). * gm2-compiler/M2Lex.def: (New file). * gm2-compiler/M2Lex.mod: (New file). * gm2-compiler/M2LexBuf.def: (New file). * gm2-compiler/M2LexBuf.mod: (New file). * gm2-compiler/M2MetaError.def: (New file). * gm2-compiler/M2MetaError.mod: (New file). * gm2-compiler/M2Optimize.def: (New file). * gm2-compiler/M2Optimize.mod: (New file). * gm2-compiler/M2Options.def: (New file). * gm2-compiler/M2Options.mod: (New file). * gm2-compiler/M2Pass.def: (New file). * gm2-compiler/M2Pass.mod: (New file). * gm2-compiler/M2Preprocess.def: (New file). * gm2-compiler/M2Preprocess.mod: (New file). * gm2-compiler/M2Printf.def: (New file). * gm2-compiler/M2Printf.mod: (New file). * gm2-compiler/M2Quads.def: (New file). * gm2-compiler/M2Quads.mod: (New file). * gm2-compiler/M2Quiet.def: (New file). * gm2-compiler/M2Quiet.mod: (New file). * gm2-compiler/M2Range.def: (New file). * gm2-compiler/M2Range.mod: (New file). * gm2-compiler/M2Reserved.def: (New file). * gm2-compiler/M2Reserved.mod: (New file). * gm2-compiler/M2SSA.def: (New file). * gm2-compiler/M2SSA.mod: (New file). * gm2-compiler/M2Scaffold.def: (New file). * gm2-compiler/M2Scaffold.mod: (New file). * gm2-compiler/M2Scope.def: (New file). * gm2-compiler/M2Scope.mod: (New file). * gm2-compiler/M2Search.def: (New file). * gm2-compiler/M2Search.mod: (New file). * gm2-compiler/M2Size.def: (New file). * gm2-compiler/M2Size.mod: (New file). * gm2-compiler/M2StackAddress.def: (New file). * gm2-compiler/M2StackAddress.mod: (New file). * gm2-compiler/M2StackWord.def: (New file). * gm2-compiler/M2StackWord.mod: (New file). * gm2-compiler/M2Students.def: (New file). * gm2-compiler/M2Students.mod: (New file). * gm2-compiler/M2Swig.def: (New file). * gm2-compiler/M2Swig.mod: (New file). * gm2-compiler/M2System.def: (New file). * gm2-compiler/M2System.mod: (New file). * gm2-compiler/M2Version.def: (New file). * gm2-compiler/NameKey.def: (New file). * gm2-compiler/NameKey.mod: (New file). * gm2-compiler/ObjectFiles.def: (New file). * gm2-compiler/ObjectFiles.mod: (New file). * gm2-compiler/Output.def: (New file). * gm2-compiler/Output.mod: (New file). * gm2-compiler/P0SymBuild.def: (New file). * gm2-compiler/P0SymBuild.mod: (New file). * gm2-compiler/P0SyntaxCheck.bnf: (New file). * gm2-compiler/P0SyntaxCheck.def: (New file). * gm2-compiler/P1Build.bnf: (New file). * gm2-compiler/P1Build.def: (New file). * gm2-compiler/P1SymBuild.def: (New file). * gm2-compiler/P1SymBuild.mod: (New file). * gm2-compiler/P2Build.bnf: (New file). * gm2-compiler/P2Build.def: (New file). * gm2-compiler/P2SymBuild.def: (New file). * gm2-compiler/P2SymBuild.mod: (New file). * gm2-compiler/P3Build.bnf: (New file). * gm2-compiler/P3Build.def: (New file). * gm2-compiler/P3SymBuild.def: (New file). * gm2-compiler/P3SymBuild.mod: (New file). * gm2-compiler/PCBuild.bnf: (New file). * gm2-compiler/PCBuild.def: (New file). * gm2-compiler/PCSymBuild.def: (New file). * gm2-compiler/PCSymBuild.mod: (New file). * gm2-compiler/PHBuild.bnf: (New file). * gm2-compiler/PHBuild.def: (New file). * gm2-compiler/README: (New file). * gm2-compiler/Sets.def: (New file). * gm2-compiler/Sets.mod: (New file). * gm2-compiler/SymbolConversion.def: (New file). * gm2-compiler/SymbolConversion.mod: (New file). * gm2-compiler/SymbolKey.def: (New file). * gm2-compiler/SymbolKey.mod: (New file). * gm2-compiler/SymbolTable.def: (New file). * gm2-compiler/SymbolTable.mod: (New file). * gm2-compiler/bnflex.def: (New file). * gm2-compiler/bnflex.mod: (New file). * gm2-compiler/cflex.def: (New file). * gm2-compiler/gm2.mod: (New file). * gm2-compiler/gm2lcc.mod: (New file). * gm2-compiler/gm2lgen.mod: (New file). * gm2-compiler/gm2lorder.mod: (New file). * gm2-compiler/m2flex.def: (New file). * gm2-compiler/ppg.mod: (New file). * gm2-gcc/README: (New file). * gm2-gcc/dynamicstrings.h: (New file). * gm2-gcc/gcc-consolidation.h: (New file). * gm2-gcc/init.cc: (New file). * gm2-gcc/init.def: (New file). * gm2-gcc/init.h: (New file). * gm2-gcc/m2assert.cc: (New file). * gm2-gcc/m2assert.h: (New file). * gm2-gcc/m2block.cc: (New file). * gm2-gcc/m2block.def: (New file). * gm2-gcc/m2block.h: (New file). * gm2-gcc/m2builtins.cc: (New file). * gm2-gcc/m2builtins.def: (New file). * gm2-gcc/m2builtins.h: (New file). * gm2-gcc/m2color.cc: (New file). * gm2-gcc/m2color.def: (New file). * gm2-gcc/m2color.h: (New file). * gm2-gcc/m2configure.cc: (New file). * gm2-gcc/m2configure.def: (New file). * gm2-gcc/m2configure.h: (New file). * gm2-gcc/m2convert.cc: (New file). * gm2-gcc/m2convert.def: (New file). * gm2-gcc/m2convert.h: (New file). * gm2-gcc/m2decl.cc: (New file). * gm2-gcc/m2decl.def: (New file). * gm2-gcc/m2decl.h: (New file). * gm2-gcc/m2except.cc: (New file). * gm2-gcc/m2except.def: (New file). * gm2-gcc/m2except.h: (New file). * gm2-gcc/m2expr.cc: (New file). * gm2-gcc/m2expr.def: (New file). * gm2-gcc/m2expr.h: (New file). * gm2-gcc/m2linemap.cc: (New file). * gm2-gcc/m2linemap.def: (New file). * gm2-gcc/m2linemap.h: (New file). * gm2-gcc/m2misc.cc: (New file). * gm2-gcc/m2misc.def: (New file). * gm2-gcc/m2misc.h: (New file). * gm2-gcc/m2options.h: (New file). * gm2-gcc/m2range.h: (New file). * gm2-gcc/m2search.h: (New file). * gm2-gcc/m2statement.cc: (New file). * gm2-gcc/m2statement.def: (New file). * gm2-gcc/m2statement.h: (New file). * gm2-gcc/m2top.cc: (New file). * gm2-gcc/m2top.def: (New file). * gm2-gcc/m2top.h: (New file). * gm2-gcc/m2tree.cc: (New file). * gm2-gcc/m2tree.def: (New file). * gm2-gcc/m2tree.h: (New file). * gm2-gcc/m2treelib.cc: (New file). * gm2-gcc/m2treelib.def: (New file). * gm2-gcc/m2treelib.h: (New file). * gm2-gcc/m2type.cc: (New file). * gm2-gcc/m2type.def: (New file). * gm2-gcc/m2type.h: (New file). * gm2-gcc/rtegraph.cc: (New file). * gm2-gcc/rtegraph.h: (New file). * gm2-ici/M2Emit.mod: (New file). * gm2-ici/README: (New file). * gm2-ici/m2linemap.c: (New file). * gm2-internals.texi: (New file). * gm2-lang.cc: (New file). * gm2-lang.h: (New file). * gm2-libiberty/README: (New file). * gm2-libiberty/choosetemp.def: (New file). * gm2-libiberty/pexecute.def: (New file). * gm2-libs-ch/M2LINK.c: (New file). * gm2-libs-ch/README: (New file). * gm2-libs-ch/RTcodummy.c: (New file). * gm2-libs-ch/RTintdummy.c: (New file). * gm2-libs-ch/Selective.c: (New file). * gm2-libs-ch/SysExceptions.c: (New file). * gm2-libs-ch/UnixArgs.cc: (New file). * gm2-libs-ch/cgetopt.c: (New file). * gm2-libs-ch/choosetemp.c: (New file). * gm2-libs-ch/dtoa.cc: (New file). * gm2-libs-ch/errno.c: (New file). * gm2-libs-ch/host.c: (New file). * gm2-libs-ch/ldtoa.cc: (New file). * gm2-libs-ch/m2rts.h: (New file). * gm2-libs-ch/termios.c: (New file). * gm2-libs-ch/tools.c: (New file). * gm2-libs-ch/wrapc.c: (New file). * gm2-libs-ch/xlibc.c: (New file). * gm2-libs-coroutines/Debug.def: (New file). * gm2-libs-coroutines/Debug.mod: (New file). * gm2-libs-coroutines/Executive.def: (New file). * gm2-libs-coroutines/Executive.mod: (New file). * gm2-libs-coroutines/KeyBoardLEDs.def: (New file). * gm2-libs-coroutines/README.texi: (New file). * gm2-libs-coroutines/SYSTEM.def: (New file). * gm2-libs-coroutines/SYSTEM.mod: (New file). * gm2-libs-coroutines/TimerHandler.def: (New file). * gm2-libs-coroutines/TimerHandler.mod: (New file). * gm2-libs-iso/COROUTINES.def: (New file). * gm2-libs-iso/COROUTINES.mod: (New file). * gm2-libs-iso/ChanConsts.def: (New file). * gm2-libs-iso/ChanConsts.h: (New file). * gm2-libs-iso/ChanConsts.mod: (New file). * gm2-libs-iso/CharClass.def: (New file). * gm2-libs-iso/CharClass.mod: (New file). * gm2-libs-iso/ClientSocket.def: (New file). * gm2-libs-iso/ClientSocket.mod: (New file). * gm2-libs-iso/ComplexMath.def: (New file). * gm2-libs-iso/ComplexMath.mod: (New file). * gm2-libs-iso/ConvStringLong.def: (New file). * gm2-libs-iso/ConvStringLong.mod: (New file). * gm2-libs-iso/ConvStringReal.def: (New file). * gm2-libs-iso/ConvStringReal.mod: (New file). * gm2-libs-iso/ConvTypes.def: (New file). * gm2-libs-iso/ConvTypes.mod: (New file). * gm2-libs-iso/EXCEPTIONS.def: (New file). * gm2-libs-iso/EXCEPTIONS.mod: (New file). * gm2-libs-iso/ErrnoCategory.def: (New file). * gm2-libs-iso/GeneralUserExceptions.def: (New file). * gm2-libs-iso/GeneralUserExceptions.mod: (New file). * gm2-libs-iso/IOChan.def: (New file). * gm2-libs-iso/IOChan.mod: (New file). * gm2-libs-iso/IOConsts.def: (New file). * gm2-libs-iso/IOConsts.mod: (New file). * gm2-libs-iso/IOLink.def: (New file). * gm2-libs-iso/IOLink.mod: (New file). * gm2-libs-iso/IOResult.def: (New file). * gm2-libs-iso/IOResult.mod: (New file). * gm2-libs-iso/LongComplexMath.def: (New file). * gm2-libs-iso/LongComplexMath.mod: (New file). * gm2-libs-iso/LongConv.def: (New file). * gm2-libs-iso/LongConv.mod: (New file). * gm2-libs-iso/LongIO.def: (New file). * gm2-libs-iso/LongIO.mod: (New file). * gm2-libs-iso/LongMath.def: (New file). * gm2-libs-iso/LongMath.mod: (New file). * gm2-libs-iso/LongStr.def: (New file). * gm2-libs-iso/LongStr.mod: (New file). * gm2-libs-iso/LongWholeIO.def: (New file). * gm2-libs-iso/LongWholeIO.mod: (New file). * gm2-libs-iso/LowLong.def: (New file). * gm2-libs-iso/LowLong.mod: (New file). * gm2-libs-iso/LowReal.def: (New file). * gm2-libs-iso/LowReal.mod: (New file). * gm2-libs-iso/LowShort.def: (New file). * gm2-libs-iso/LowShort.mod: (New file). * gm2-libs-iso/M2EXCEPTION.def: (New file). * gm2-libs-iso/M2EXCEPTION.mod: (New file). * gm2-libs-iso/M2RTS.def: (New file). * gm2-libs-iso/M2RTS.mod: (New file). * gm2-libs-iso/MemStream.def: (New file). * gm2-libs-iso/MemStream.mod: (New file). * gm2-libs-iso/Preemptive.def: (New file). * gm2-libs-iso/Preemptive.mod: (New file). * gm2-libs-iso/Processes.def: (New file). * gm2-libs-iso/Processes.mod: (New file). * gm2-libs-iso/ProgramArgs.def: (New file). * gm2-libs-iso/ProgramArgs.mod: (New file). * gm2-libs-iso/README.texi: (New file). * gm2-libs-iso/RTco.def: (New file). * gm2-libs-iso/RTdata.def: (New file). * gm2-libs-iso/RTdata.mod: (New file). * gm2-libs-iso/RTentity.def: (New file). * gm2-libs-iso/RTentity.mod: (New file). * gm2-libs-iso/RTfio.def: (New file). * gm2-libs-iso/RTfio.mod: (New file). * gm2-libs-iso/RTgen.def: (New file). * gm2-libs-iso/RTgen.mod: (New file). * gm2-libs-iso/RTgenif.def: (New file). * gm2-libs-iso/RTgenif.mod: (New file). * gm2-libs-iso/RTio.def: (New file). * gm2-libs-iso/RTio.mod: (New file). * gm2-libs-iso/RandomNumber.def: (New file). * gm2-libs-iso/RandomNumber.mod: (New file). * gm2-libs-iso/RawIO.def: (New file). * gm2-libs-iso/RawIO.mod: (New file). * gm2-libs-iso/RealConv.def: (New file). * gm2-libs-iso/RealConv.mod: (New file). * gm2-libs-iso/RealIO.def: (New file). * gm2-libs-iso/RealIO.mod: (New file). * gm2-libs-iso/RealMath.def: (New file). * gm2-libs-iso/RealMath.mod: (New file). * gm2-libs-iso/RealStr.def: (New file). * gm2-libs-iso/RealStr.mod: (New file). * gm2-libs-iso/RndFile.def: (New file). * gm2-libs-iso/RndFile.mod: (New file). * gm2-libs-iso/SIOResult.def: (New file). * gm2-libs-iso/SIOResult.mod: (New file). * gm2-libs-iso/SLongIO.def: (New file). * gm2-libs-iso/SLongIO.mod: (New file). * gm2-libs-iso/SLongWholeIO.def: (New file). * gm2-libs-iso/SLongWholeIO.mod: (New file). * gm2-libs-iso/SRawIO.def: (New file). * gm2-libs-iso/SRawIO.mod: (New file). * gm2-libs-iso/SRealIO.def: (New file). * gm2-libs-iso/SRealIO.mod: (New file). * gm2-libs-iso/SShortIO.def: (New file). * gm2-libs-iso/SShortIO.mod: (New file). * gm2-libs-iso/SShortWholeIO.def: (New file). * gm2-libs-iso/SShortWholeIO.mod: (New file). * gm2-libs-iso/STextIO.def: (New file). * gm2-libs-iso/STextIO.mod: (New file). * gm2-libs-iso/SWholeIO.def: (New file). * gm2-libs-iso/SWholeIO.mod: (New file). * gm2-libs-iso/SYSTEM.def: (New file). * gm2-libs-iso/SYSTEM.mod: (New file). * gm2-libs-iso/Semaphores.def: (New file). * gm2-libs-iso/Semaphores.mod: (New file). * gm2-libs-iso/SeqFile.def: (New file). * gm2-libs-iso/SeqFile.mod: (New file). * gm2-libs-iso/ShortComplexMath.def: (New file). * gm2-libs-iso/ShortComplexMath.mod: (New file). * gm2-libs-iso/ShortIO.def: (New file). * gm2-libs-iso/ShortIO.mod: (New file). * gm2-libs-iso/ShortWholeIO.def: (New file). * gm2-libs-iso/ShortWholeIO.mod: (New file). * gm2-libs-iso/SimpleCipher.def: (New file). * gm2-libs-iso/SimpleCipher.mod: (New file). * gm2-libs-iso/StdChans.def: (New file). * gm2-libs-iso/StdChans.mod: (New file). * gm2-libs-iso/Storage.def: (New file). * gm2-libs-iso/Storage.mod: (New file). * gm2-libs-iso/StreamFile.def: (New file). * gm2-libs-iso/StreamFile.mod: (New file). * gm2-libs-iso/StringChan.def: (New file). * gm2-libs-iso/StringChan.mod: (New file). * gm2-libs-iso/Strings.def: (New file). * gm2-libs-iso/Strings.mod: (New file). * gm2-libs-iso/SysClock.def: (New file). * gm2-libs-iso/SysClock.mod: (New file). * gm2-libs-iso/TERMINATION.def: (New file). * gm2-libs-iso/TERMINATION.mod: (New file). * gm2-libs-iso/TermFile.def: (New file). * gm2-libs-iso/TermFile.mod: (New file). * gm2-libs-iso/TextIO.def: (New file). * gm2-libs-iso/TextIO.mod: (New file). * gm2-libs-iso/WholeConv.def: (New file). * gm2-libs-iso/WholeConv.mod: (New file). * gm2-libs-iso/WholeIO.def: (New file). * gm2-libs-iso/WholeIO.mod: (New file). * gm2-libs-iso/WholeStr.def: (New file). * gm2-libs-iso/WholeStr.mod: (New file). * gm2-libs-iso/wrapsock.c: (New file). * gm2-libs-iso/wrapsock.def: (New file). * gm2-libs-iso/wraptime.c: (New file). * gm2-libs-iso/wraptime.def: (New file). * gm2-libs-min/M2RTS.def: (New file). * gm2-libs-min/M2RTS.mod: (New file). * gm2-libs-min/SYSTEM.def: (New file). * gm2-libs-min/SYSTEM.mod: (New file). * gm2-libs-min/libc.c: (New file). * gm2-libs-min/libc.def: (New file). * gm2-libs-pim/BitBlockOps.def: (New file). * gm2-libs-pim/BitBlockOps.mod: (New file). * gm2-libs-pim/BitByteOps.def: (New file). * gm2-libs-pim/BitByteOps.mod: (New file). * gm2-libs-pim/BitWordOps.def: (New file). * gm2-libs-pim/BitWordOps.mod: (New file). * gm2-libs-pim/BlockOps.def: (New file). * gm2-libs-pim/BlockOps.mod: (New file). * gm2-libs-pim/Break.c: (New file). * gm2-libs-pim/Break.def: (New file). * gm2-libs-pim/CardinalIO.def: (New file). * gm2-libs-pim/CardinalIO.mod: (New file). * gm2-libs-pim/Conversions.def: (New file). * gm2-libs-pim/Conversions.mod: (New file). * gm2-libs-pim/DebugPMD.def: (New file). * gm2-libs-pim/DebugPMD.mod: (New file). * gm2-libs-pim/DebugTrace.def: (New file). * gm2-libs-pim/DebugTrace.mod: (New file). * gm2-libs-pim/Delay.def: (New file). * gm2-libs-pim/Delay.mod: (New file). * gm2-libs-pim/Display.def: (New file). * gm2-libs-pim/Display.mod: (New file). * gm2-libs-pim/ErrorCode.def: (New file). * gm2-libs-pim/ErrorCode.mod: (New file). * gm2-libs-pim/FileSystem.def: (New file). * gm2-libs-pim/FileSystem.mod: (New file). * gm2-libs-pim/FloatingUtilities.def: (New file). * gm2-libs-pim/FloatingUtilities.mod: (New file). * gm2-libs-pim/InOut.def: (New file). * gm2-libs-pim/InOut.mod: (New file). * gm2-libs-pim/Keyboard.def: (New file). * gm2-libs-pim/Keyboard.mod: (New file). * gm2-libs-pim/LongIO.def: (New file). * gm2-libs-pim/LongIO.mod: (New file). * gm2-libs-pim/NumberConversion.def: (New file). * gm2-libs-pim/NumberConversion.mod: (New file). * gm2-libs-pim/README.texi: (New file). * gm2-libs-pim/Random.def: (New file). * gm2-libs-pim/Random.mod: (New file). * gm2-libs-pim/RealConversions.def: (New file). * gm2-libs-pim/RealConversions.mod: (New file). * gm2-libs-pim/RealInOut.def: (New file). * gm2-libs-pim/RealInOut.mod: (New file). * gm2-libs-pim/Strings.def: (New file). * gm2-libs-pim/Strings.mod: (New file). * gm2-libs-pim/Termbase.def: (New file). * gm2-libs-pim/Termbase.mod: (New file). * gm2-libs-pim/Terminal.def: (New file). * gm2-libs-pim/Terminal.mod: (New file). * gm2-libs-pim/TimeDate.def: (New file). * gm2-libs-pim/TimeDate.mod: (New file). * gm2-libs/ASCII.def: (New file). * gm2-libs/ASCII.mod: (New file). * gm2-libs/Args.def: (New file). * gm2-libs/Args.mod: (New file). * gm2-libs/Assertion.def: (New file). * gm2-libs/Assertion.mod: (New file). * gm2-libs/Break.def: (New file). * gm2-libs/Break.mod: (New file). * gm2-libs/Builtins.def: (New file). * gm2-libs/Builtins.mod: (New file). * gm2-libs/COROUTINES.def: (New file). * gm2-libs/COROUTINES.mod: (New file). * gm2-libs/CmdArgs.def: (New file). * gm2-libs/CmdArgs.mod: (New file). * gm2-libs/Debug.def: (New file). * gm2-libs/Debug.mod: (New file). * gm2-libs/DynamicStrings.def: (New file). * gm2-libs/DynamicStrings.mod: (New file). * gm2-libs/Environment.def: (New file). * gm2-libs/Environment.mod: (New file). * gm2-libs/FIO.def: (New file). * gm2-libs/FIO.mod: (New file). * gm2-libs/FormatStrings.def: (New file). * gm2-libs/FormatStrings.mod: (New file). * gm2-libs/FpuIO.def: (New file). * gm2-libs/FpuIO.mod: (New file). * gm2-libs/GetOpt.def: (New file). * gm2-libs/GetOpt.mod: (New file). * gm2-libs/IO.def: (New file). * gm2-libs/IO.mod: (New file). * gm2-libs/Indexing.def: (New file). * gm2-libs/Indexing.mod: (New file). * gm2-libs/LMathLib0.def: (New file). * gm2-libs/LMathLib0.mod: (New file). * gm2-libs/LegacyReal.def: (New file). * gm2-libs/LegacyReal.mod: (New file). * gm2-libs/M2Dependent.def: (New file). * gm2-libs/M2Dependent.mod: (New file). * gm2-libs/M2EXCEPTION.def: (New file). * gm2-libs/M2EXCEPTION.mod: (New file). * gm2-libs/M2LINK.def: (New file). * gm2-libs/M2RTS.def: (New file). * gm2-libs/M2RTS.mod: (New file). * gm2-libs/MathLib0.def: (New file). * gm2-libs/MathLib0.mod: (New file). * gm2-libs/MemUtils.def: (New file). * gm2-libs/MemUtils.mod: (New file). * gm2-libs/NumberIO.def: (New file). * gm2-libs/NumberIO.mod: (New file). * gm2-libs/OptLib.def: (New file). * gm2-libs/OptLib.mod: (New file). * gm2-libs/PushBackInput.def: (New file). * gm2-libs/PushBackInput.mod: (New file). * gm2-libs/README.texi: (New file). * gm2-libs/RTExceptions.def: (New file). * gm2-libs/RTExceptions.mod: (New file). * gm2-libs/RTint.def: (New file). * gm2-libs/RTint.mod: (New file). * gm2-libs/SArgs.def: (New file). * gm2-libs/SArgs.mod: (New file). * gm2-libs/SCmdArgs.def: (New file). * gm2-libs/SCmdArgs.mod: (New file). * gm2-libs/SEnvironment.def: (New file). * gm2-libs/SEnvironment.mod: (New file). * gm2-libs/SFIO.def: (New file). * gm2-libs/SFIO.mod: (New file). * gm2-libs/SMathLib0.def: (New file). * gm2-libs/SMathLib0.mod: (New file). * gm2-libs/SYSTEM.def: (New file). * gm2-libs/SYSTEM.mod: (New file). * gm2-libs/Scan.def: (New file). * gm2-libs/Scan.mod: (New file). * gm2-libs/Selective.def: (New file). * gm2-libs/StdIO.def: (New file). * gm2-libs/StdIO.mod: (New file). * gm2-libs/Storage.def: (New file). * gm2-libs/Storage.mod: (New file). * gm2-libs/StrCase.def: (New file). * gm2-libs/StrCase.mod: (New file). * gm2-libs/StrIO.def: (New file). * gm2-libs/StrIO.mod: (New file). * gm2-libs/StrLib.def: (New file). * gm2-libs/StrLib.mod: (New file). * gm2-libs/StringConvert.def: (New file). * gm2-libs/StringConvert.mod: (New file). * gm2-libs/SysExceptions.def: (New file). * gm2-libs/SysStorage.def: (New file). * gm2-libs/SysStorage.mod: (New file). * gm2-libs/TimeString.def: (New file). * gm2-libs/TimeString.mod: (New file). * gm2-libs/UnixArgs.def: (New file). * gm2-libs/cbuiltin.def: (New file). * gm2-libs/cgetopt.def: (New file). * gm2-libs/config-host: (New file). * gm2-libs/config-host.in: (New file). * gm2-libs/cxxabi.def: (New file). * gm2-libs/dtoa.def: (New file). * gm2-libs/errno.def: (New file). * gm2-libs/gdbif.def: (New file). * gm2-libs/gdbif.mod: (New file). * gm2-libs/gm2-libs-host.h.in: (New file). * gm2-libs/ldtoa.def: (New file). * gm2-libs/libc.def: (New file). * gm2-libs/libm.def: (New file). * gm2-libs/sckt.def: (New file). * gm2-libs/termios.def: (New file). * gm2-libs/wrapc.def: (New file). * gm2config.h.in: (New file). * gm2spec.cc: (New file). * gm2version.h: (New file). * init/README: (New file). * init/mcinit: (New file). * init/ppginit: (New file). * lang-specs.h: (New file). * lang.opt: (New file). * m2-tree.def: (New file). * m2-tree.h: (New file). * m2.flex: (New file). * m2pp.cc: (New file). * m2pp.h: (New file). * mc-boot-ch/GBuiltins.c: (New file). * mc-boot-ch/GM2LINK.c: (New file). * mc-boot-ch/GRTco.c: (New file). * mc-boot-ch/GSYSTEM.c: (New file). * mc-boot-ch/GSelective.c: (New file). * mc-boot-ch/GSysExceptions.c: (New file). * mc-boot-ch/GUnixArgs.cc: (New file). * mc-boot-ch/Gabort.c: (New file). * mc-boot-ch/Gcbuiltin.c: (New file). * mc-boot-ch/Gdtoa.c: (New file). * mc-boot-ch/Gerrno.c: (New file). * mc-boot-ch/Gldtoa.c: (New file). * mc-boot-ch/Glibc.c: (New file). * mc-boot-ch/Glibm.c: (New file). * mc-boot-ch/Gmcrts.c: (New file). * mc-boot-ch/Gmcrts.h: (New file). * mc-boot-ch/Gnetwork.h: (New file). * mc-boot-ch/Gtermios.cc: (New file). * mc-boot-ch/Gwrapc.c: (New file). * mc-boot-ch/README: (New file). * mc-boot-ch/m2rts.h: (New file). * mc-boot-ch/network.c: (New file). * mc-boot/GASCII.c: (New file). * mc-boot/GASCII.h: (New file). * mc-boot/GArgs.c: (New file). * mc-boot/GArgs.h: (New file). * mc-boot/GAssertion.c: (New file). * mc-boot/GAssertion.h: (New file). * mc-boot/GBreak.c: (New file). * mc-boot/GBreak.h: (New file). * mc-boot/GCOROUTINES.h: (New file). * mc-boot/GCmdArgs.c: (New file). * mc-boot/GCmdArgs.h: (New file). * mc-boot/GDebug.c: (New file). * mc-boot/GDebug.h: (New file). * mc-boot/GDynamicStrings.c: (New file). * mc-boot/GDynamicStrings.h: (New file). * mc-boot/GEnvironment.c: (New file). * mc-boot/GEnvironment.h: (New file). * mc-boot/GFIO.c: (New file). * mc-boot/GFIO.h: (New file). * mc-boot/GFormatStrings.c: (New file). * mc-boot/GFormatStrings.h: (New file). * mc-boot/GFpuIO.c: (New file). * mc-boot/GFpuIO.h: (New file). * mc-boot/GIO.c: (New file). * mc-boot/GIO.h: (New file). * mc-boot/GIndexing.c: (New file). * mc-boot/GIndexing.h: (New file). * mc-boot/GM2Dependent.c: (New file). * mc-boot/GM2Dependent.h: (New file). * mc-boot/GM2EXCEPTION.c: (New file). * mc-boot/GM2EXCEPTION.h: (New file). * mc-boot/GM2LINK.h: (New file). * mc-boot/GM2RTS.c: (New file). * mc-boot/GM2RTS.h: (New file). * mc-boot/GMemUtils.c: (New file). * mc-boot/GMemUtils.h: (New file). * mc-boot/GNumberIO.c: (New file). * mc-boot/GNumberIO.h: (New file). * mc-boot/GPushBackInput.c: (New file). * mc-boot/GPushBackInput.h: (New file). * mc-boot/GRTExceptions.c: (New file). * mc-boot/GRTExceptions.h: (New file). * mc-boot/GRTco.h: (New file). * mc-boot/GRTint.c: (New file). * mc-boot/GRTint.h: (New file). * mc-boot/GSArgs.c: (New file). * mc-boot/GSArgs.h: (New file). * mc-boot/GSFIO.c: (New file). * mc-boot/GSFIO.h: (New file). * mc-boot/GSYSTEM.h: (New file). * mc-boot/GSelective.h: (New file). * mc-boot/GStdIO.c: (New file). * mc-boot/GStdIO.h: (New file). * mc-boot/GStorage.c: (New file). * mc-boot/GStorage.h: (New file). * mc-boot/GStrCase.c: (New file). * mc-boot/GStrCase.h: (New file). * mc-boot/GStrIO.c: (New file). * mc-boot/GStrIO.h: (New file). * mc-boot/GStrLib.c: (New file). * mc-boot/GStrLib.h: (New file). * mc-boot/GStringConvert.c: (New file). * mc-boot/GStringConvert.h: (New file). * mc-boot/GSysExceptions.h: (New file). * mc-boot/GSysStorage.c: (New file). * mc-boot/GSysStorage.h: (New file). * mc-boot/GTimeString.c: (New file). * mc-boot/GTimeString.h: (New file). * mc-boot/GUnixArgs.h: (New file). * mc-boot/Galists.c: (New file). * mc-boot/Galists.h: (New file). * mc-boot/Gdecl.c: (New file). * mc-boot/Gdecl.h: (New file). * mc-boot/Gdtoa.h: (New file). * mc-boot/Gerrno.h: (New file). * mc-boot/Gkeyc.c: (New file). * mc-boot/Gkeyc.h: (New file). * mc-boot/Gldtoa.h: (New file). * mc-boot/Glibc.h: (New file). * mc-boot/Glibm.h: (New file). * mc-boot/Glists.c: (New file). * mc-boot/Glists.h: (New file). * mc-boot/GmcComment.c: (New file). * mc-boot/GmcComment.h: (New file). * mc-boot/GmcComp.c: (New file). * mc-boot/GmcComp.h: (New file). * mc-boot/GmcDebug.c: (New file). * mc-boot/GmcDebug.h: (New file). * mc-boot/GmcError.c: (New file). * mc-boot/GmcError.h: (New file). * mc-boot/GmcFileName.c: (New file). * mc-boot/GmcFileName.h: (New file). * mc-boot/GmcLexBuf.c: (New file). * mc-boot/GmcLexBuf.h: (New file). * mc-boot/GmcMetaError.c: (New file). * mc-boot/GmcMetaError.h: (New file). * mc-boot/GmcOptions.c: (New file). * mc-boot/GmcOptions.h: (New file). * mc-boot/GmcPreprocess.c: (New file). * mc-boot/GmcPreprocess.h: (New file). * mc-boot/GmcPretty.c: (New file). * mc-boot/GmcPretty.h: (New file). * mc-boot/GmcPrintf.c: (New file). * mc-boot/GmcPrintf.h: (New file). * mc-boot/GmcQuiet.c: (New file). * mc-boot/GmcQuiet.h: (New file). * mc-boot/GmcReserved.c: (New file). * mc-boot/GmcReserved.h: (New file). * mc-boot/GmcSearch.c: (New file). * mc-boot/GmcSearch.h: (New file). * mc-boot/GmcStack.c: (New file). * mc-boot/GmcStack.h: (New file). * mc-boot/GmcStream.c: (New file). * mc-boot/GmcStream.h: (New file). * mc-boot/Gmcflex.h: (New file). * mc-boot/Gmcp1.c: (New file). * mc-boot/Gmcp1.h: (New file). * mc-boot/Gmcp2.c: (New file). * mc-boot/Gmcp2.h: (New file). * mc-boot/Gmcp3.c: (New file). * mc-boot/Gmcp3.h: (New file). * mc-boot/Gmcp4.c: (New file). * mc-boot/Gmcp4.h: (New file). * mc-boot/Gmcp5.c: (New file). * mc-boot/Gmcp5.h: (New file). * mc-boot/GnameKey.c: (New file). * mc-boot/GnameKey.h: (New file). * mc-boot/Gpth.h: (New file). * mc-boot/GsymbolKey.c: (New file). * mc-boot/GsymbolKey.h: (New file). * mc-boot/Gtermios.h: (New file). * mc-boot/Gtop.c: (New file). * mc-boot/Gvarargs.c: (New file). * mc-boot/Gvarargs.h: (New file). * mc-boot/Gwlists.c: (New file). * mc-boot/Gwlists.h: (New file). * mc-boot/Gwrapc.h: (New file). * mc-boot/README: (New file). * mc/Indexing.def: (New file). * mc/Indexing.mod: (New file). * mc/README: (New file). * mc/alists.def: (New file). * mc/alists.mod: (New file). * mc/decl.def: (New file). * mc/decl.mod: (New file). * mc/decl.mod-extra: (New file). * mc/keyc.def: (New file). * mc/keyc.mod: (New file). * mc/lists.def: (New file). * mc/lists.mod: (New file). * mc/m2flex.def: (New file). * mc/mc.flex: (New file). * mc/mcComment.def: (New file). * mc/mcComment.h: (New file). * mc/mcComment.mod: (New file). * mc/mcComp.def: (New file). * mc/mcComp.mod: (New file). * mc/mcDebug.def: (New file). * mc/mcDebug.mod: (New file). * mc/mcError.def: (New file). * mc/mcError.mod: (New file). * mc/mcFileName.def: (New file). * mc/mcFileName.mod: (New file). * mc/mcLexBuf.def: (New file). * mc/mcLexBuf.h: (New file). * mc/mcLexBuf.mod: (New file). * mc/mcMetaError.def: (New file). * mc/mcMetaError.mod: (New file). * mc/mcOptions.def: (New file). * mc/mcOptions.mod: (New file). * mc/mcPreprocess.def: (New file). * mc/mcPreprocess.mod: (New file). * mc/mcPretty.def: (New file). * mc/mcPretty.mod: (New file). * mc/mcPrintf.def: (New file). * mc/mcPrintf.mod: (New file). * mc/mcQuiet.def: (New file). * mc/mcQuiet.mod: (New file). * mc/mcReserved.def: (New file). * mc/mcReserved.h: (New file). * mc/mcReserved.mod: (New file). * mc/mcSearch.def: (New file). * mc/mcSearch.mod: (New file). * mc/mcStack.def: (New file). * mc/mcStack.mod: (New file). * mc/mcStream.def: (New file). * mc/mcStream.mod: (New file). * mc/mcflex.def: (New file). * mc/mcp1.bnf: (New file). * mc/mcp1.def: (New file). * mc/mcp2.bnf: (New file). * mc/mcp2.def: (New file). * mc/mcp3.bnf: (New file). * mc/mcp3.def: (New file). * mc/mcp4.bnf: (New file). * mc/mcp4.def: (New file). * mc/mcp5.bnf: (New file). * mc/mcp5.def: (New file). * mc/nameKey.def: (New file). * mc/nameKey.mod: (New file). * mc/symbolKey.def: (New file). * mc/symbolKey.mod: (New file). * mc/top.mod: (New file). * mc/varargs.def: (New file). * mc/varargs.mod: (New file). * mc/wlists.def: (New file). * mc/wlists.mod: (New file). * pge-boot/GASCII.c: (New file). * pge-boot/GASCII.h: (New file). * pge-boot/GArgs.c: (New file). * pge-boot/GArgs.h: (New file). * pge-boot/GAssertion.c: (New file). * pge-boot/GAssertion.h: (New file). * pge-boot/GBreak.h: (New file). * pge-boot/GBuiltins.c: (New file). * pge-boot/GCmdArgs.h: (New file). * pge-boot/GDebug.c: (New file). * pge-boot/GDebug.h: (New file). * pge-boot/GDynamicStrings.c: (New file). * pge-boot/GDynamicStrings.h: (New file). * pge-boot/GEnvironment.h: (New file). * pge-boot/GFIO.c: (New file). * pge-boot/GFIO.h: (New file). * pge-boot/GFormatStrings.h: (New file). * pge-boot/GFpuIO.h: (New file). * pge-boot/GIO.c: (New file). * pge-boot/GIO.h: (New file). * pge-boot/GIndexing.c: (New file). * pge-boot/GIndexing.h: (New file). * pge-boot/GLists.c: (New file). * pge-boot/GLists.h: (New file). * pge-boot/GM2Dependent.c: (New file). * pge-boot/GM2Dependent.h: (New file). * pge-boot/GM2EXCEPTION.c: (New file). * pge-boot/GM2EXCEPTION.h: (New file). * pge-boot/GM2LINK.c: (New file). * pge-boot/GM2LINK.h: (New file). * pge-boot/GM2RTS.c: (New file). * pge-boot/GM2RTS.h: (New file). * pge-boot/GNameKey.c: (New file). * pge-boot/GNameKey.h: (New file). * pge-boot/GNumberIO.c: (New file). * pge-boot/GNumberIO.h: (New file). * pge-boot/GOutput.c: (New file). * pge-boot/GOutput.h: (New file). * pge-boot/GPushBackInput.c: (New file). * pge-boot/GPushBackInput.h: (New file). * pge-boot/GRTExceptions.c: (New file). * pge-boot/GRTExceptions.h: (New file). * pge-boot/GRTco.c: (New file). * pge-boot/GSArgs.h: (New file). * pge-boot/GSEnvironment.h: (New file). * pge-boot/GSFIO.c: (New file). * pge-boot/GSFIO.h: (New file). * pge-boot/GSYSTEM.c: (New file). * pge-boot/GSYSTEM.h: (New file). * pge-boot/GScan.h: (New file). * pge-boot/GSelective.c: (New file). * pge-boot/GStdIO.c: (New file). * pge-boot/GStdIO.h: (New file). * pge-boot/GStorage.c: (New file). * pge-boot/GStorage.h: (New file). * pge-boot/GStrCase.c: (New file). * pge-boot/GStrCase.h: (New file). * pge-boot/GStrIO.c: (New file). * pge-boot/GStrIO.h: (New file). * pge-boot/GStrLib.c: (New file). * pge-boot/GStrLib.h: (New file). * pge-boot/GStringConvert.h: (New file). * pge-boot/GSymbolKey.c: (New file). * pge-boot/GSymbolKey.h: (New file). * pge-boot/GSysExceptions.c: (New file). * pge-boot/GSysExceptions.h: (New file). * pge-boot/GSysStorage.c: (New file). * pge-boot/GSysStorage.h: (New file). * pge-boot/GTimeString.h: (New file). * pge-boot/GUnixArgs.cc: (New file). * pge-boot/GUnixArgs.h: (New file). * pge-boot/Gabort.c: (New file). * pge-boot/Gbnflex.c: (New file). * pge-boot/Gbnflex.h: (New file). * pge-boot/Gcbuiltin.c: (New file). * pge-boot/Gdtoa.c: (New file). * pge-boot/Gdtoa.h: (New file). * pge-boot/Gerrno.c: (New file). * pge-boot/Gerrno.h: (New file). * pge-boot/Gldtoa.c: (New file). * pge-boot/Gldtoa.h: (New file). * pge-boot/Glibc.c: (New file). * pge-boot/Glibc.h: (New file). * pge-boot/Glibm.c: (New file). * pge-boot/Glibm.h: (New file). * pge-boot/Gmcrts.c: (New file). * pge-boot/Gmcrts.h: (New file). * pge-boot/Gnetwork.h: (New file). * pge-boot/Gpge.c: (New file). * pge-boot/Gtermios.cc: (New file). * pge-boot/Gtermios.h: (New file). * pge-boot/Gwrapc.c: (New file). * pge-boot/Gwrapc.h: (New file). * pge-boot/README: (New file). * pge-boot/m2rts.h: (New file). * pge-boot/main.c: (New file). * pge-boot/network.c: (New file). * plugin/README: (New file). * plugin/m2rte.cc: (New file). * tools-src/README: (New file). * tools-src/boilerplate.py: (New file). * tools-src/buildpg: (New file). * tools-src/calcpath: (New file). * tools-src/def2doc.py: (New file). * tools-src/makeSystem: (New file). * tools-src/mklink.c: (New file). * tools-src/tidydates.py: (New file). * images/LICENSE.IMG: (New file). * images/gnupng: (New file). * images/gnu.eps: (New file). * version.c: (New file). * configure: (Rebuilt). gcc/testsuite/ChangeLog: * lib/gm2-dg.exp: (New file). * lib/gm2.exp: (New file). * lib/gm2-simple.exp: (New file). * lib/gm2-torture.exp: (New file). * gm2/calling-c/datatypes/unbounded/run/pass/c.c: (New file). * gm2/calling-c/datatypes/unbounded/run/pass/c.def: (New file). * gm2/calling-c/datatypes/unbounded/run/pass/calling-c-datatypes-unbounded-run-pass.exp: (New file). * gm2/calling-c/datatypes/unbounded/run/pass/m.mod: (New file). * gm2/case/pass/case-pass.exp: (New file). * gm2/case/pass/testcase1.mod: (New file). * gm2/case/pass/testcase2.mod: (New file). * gm2/case/pass/testcase3.mod: (New file). * gm2/case/pass/testcase4.mod: (New file). * gm2/complex/fail/var1.mod: (New file). * gm2/complex/pass/arith.mod: (New file). * gm2/complex/pass/arith2.mod: (New file). * gm2/complex/pass/arith3.mod: (New file). * gm2/complex/pass/arith4.mod: (New file). * gm2/complex/pass/arith5.mod: (New file). * gm2/complex/pass/arith6.mod: (New file). * gm2/complex/pass/complex-pass.exp: (New file). * gm2/complex/pass/consts.mod: (New file). * gm2/complex/pass/consts2.mod: (New file). * gm2/complex/pass/consts3.mod: (New file). * gm2/complex/pass/tinycabs.mod: (New file). * gm2/complex/pass/var1.mod: (New file). * gm2/complex/pass/var2.mod: (New file). * gm2/complex/pass/var3.mod: (New file). * gm2/complex/pass/var4.mod: (New file). * gm2/complex/pass/var5.mod: (New file). * gm2/complex/pass/var6.mod: (New file). * gm2/complex/pass/var7.mod: (New file). * gm2/complex/pass/var8.mod: (New file). * gm2/complex/run/pass/arith3.mod: (New file). * gm2/complex/run/pass/arith4.mod: (New file). * gm2/complex/run/pass/arith5.mod: (New file). * gm2/complex/run/pass/arith6.mod: (New file). * gm2/complex/run/pass/arith7.mod: (New file). * gm2/complex/run/pass/arith8.mod: (New file). * gm2/complex/run/pass/complex-run-pass.exp: (New file). * gm2/coroutines/pim/run/pass/coroutines-pim-run-pass.exp: (New file). * gm2/coroutines/pim/run/pass/testiotransfer.mod: (New file). * gm2/coroutines/pim/run/pass/testtransfer.mod: (New file). * gm2/cpp/fail/another.h: (New file). * gm2/cpp/fail/fail1.mod: (New file). * gm2/cpp/longcard2.mod: (New file). * gm2/cpp/longstrimp.mod: (New file). * gm2/cpp/pass/arrayhuge.mod: (New file). * gm2/cpp/pass/arrayhuge2.mod: (New file). * gm2/cpp/pass/cpp-pass.exp: (New file). * gm2/cpp/pass/cpp.mod: (New file). * gm2/cpp/pass/cpph.mod: (New file). * gm2/cpp/pass/subaddr.mod: (New file). * gm2/cpp/pass/testcpp.mod: (New file). * gm2/cpp/pass/testcpp2.mod: (New file). * gm2/cpp/setchar2.mod: (New file). * gm2/cpp/setchar6.mod: (New file). * gm2/cse/fail/cse-fail.exp: (New file). * gm2/cse/fail/testcse38.mod: (New file). * gm2/cse/pass/cse-pass.exp: (New file). * gm2/cse/pass/m2t.c: (New file). * gm2/cse/pass/testb.mod: (New file). * gm2/cse/pass/testbuiltin.def: (New file). * gm2/cse/pass/testbuiltin.mod: (New file). * gm2/cse/pass/testcse.def: (New file). * gm2/cse/pass/testcse.mod: (New file). * gm2/cse/pass/testcse10.mod: (New file). * gm2/cse/pass/testcse11.mod: (New file). * gm2/cse/pass/testcse12.mod: (New file). * gm2/cse/pass/testcse13.mod: (New file). * gm2/cse/pass/testcse14.mod: (New file). * gm2/cse/pass/testcse15.mod: (New file). * gm2/cse/pass/testcse16.mod: (New file). * gm2/cse/pass/testcse17.mod: (New file). * gm2/cse/pass/testcse18.mod: (New file). * gm2/cse/pass/testcse19.mod: (New file). * gm2/cse/pass/testcse2.mod: (New file). * gm2/cse/pass/testcse20.mod: (New file). * gm2/cse/pass/testcse21.mod: (New file). * gm2/cse/pass/testcse22.mod: (New file). * gm2/cse/pass/testcse23.mod: (New file). * gm2/cse/pass/testcse24.mod: (New file). * gm2/cse/pass/testcse25.mod: (New file). * gm2/cse/pass/testcse26.mod: (New file). * gm2/cse/pass/testcse27.mod: (New file). * gm2/cse/pass/testcse28.mod: (New file). * gm2/cse/pass/testcse29.mod: (New file). * gm2/cse/pass/testcse3.mod: (New file). * gm2/cse/pass/testcse31.mod: (New file). * gm2/cse/pass/testcse32.mod: (New file). * gm2/cse/pass/testcse33.mod: (New file). * gm2/cse/pass/testcse34.mod: (New file). * gm2/cse/pass/testcse35.mod: (New file). * gm2/cse/pass/testcse36.mod: (New file). * gm2/cse/pass/testcse37.mod: (New file). * gm2/cse/pass/testcse39.mod: (New file). * gm2/cse/pass/testcse4.c: (New file). * gm2/cse/pass/testcse4.mod: (New file). * gm2/cse/pass/testcse40.mod: (New file). * gm2/cse/pass/testcse41.mod: (New file). * gm2/cse/pass/testcse42.mod: (New file). * gm2/cse/pass/testcse43.mod: (New file). * gm2/cse/pass/testcse44.mod: (New file). * gm2/cse/pass/testcse45.mod: (New file). * gm2/cse/pass/testcse46.mod: (New file). * gm2/cse/pass/testcse47.mod: (New file). * gm2/cse/pass/testcse48.mod: (New file). * gm2/cse/pass/testcse49.mod: (New file). * gm2/cse/pass/testcse5.c: (New file). * gm2/cse/pass/testcse5.mod: (New file). * gm2/cse/pass/testcse50.def: (New file). * gm2/cse/pass/testcse50.mod: (New file). * gm2/cse/pass/testcse51.mod: (New file). * gm2/cse/pass/testcse52.def: (New file). * gm2/cse/pass/testcse52.mod: (New file). * gm2/cse/pass/testcse53.def: (New file). * gm2/cse/pass/testcse53.mod: (New file). * gm2/cse/pass/testcse6.c: (New file). * gm2/cse/pass/testcse6.mod: (New file). * gm2/cse/pass/testcse7.c: (New file). * gm2/cse/pass/testcse7.mod: (New file). * gm2/cse/pass/testcse8.c: (New file). * gm2/cse/pass/testcse8.mod: (New file). * gm2/cse/pass/testcse9.c: (New file). * gm2/cse/pass/testsize.mod: (New file). * gm2/dynamic/pass/add.mod: (New file). * gm2/dynamic/pass/dynamic-pass.exp: (New file). * gm2/dynamic/pass/prog21.mod: (New file). * gm2/dynamic/pass/testarray.mod: (New file). * gm2/dynamic/pass/testarray2.mod: (New file). * gm2/dynamic/pass/testarray3.mod: (New file). * gm2/dynamic/pass/testarray4.mod: (New file). * gm2/dynamic/pass/testarray6.mod: (New file). * gm2/dynamic/pass/testbec.mod: (New file). * gm2/dynamic/pass/testbec10.mod: (New file). * gm2/dynamic/pass/testbec11.mod: (New file). * gm2/dynamic/pass/testbec12.mod: (New file). * gm2/dynamic/pass/testbec13.mod: (New file). * gm2/dynamic/pass/testbec14.mod: (New file). * gm2/dynamic/pass/testbec15.mod: (New file). * gm2/dynamic/pass/testbec16.mod: (New file). * gm2/dynamic/pass/testbec17.mod: (New file). * gm2/dynamic/pass/testbec18.mod: (New file). * gm2/dynamic/pass/testbec19.mod: (New file). * gm2/dynamic/pass/testbec2.mod: (New file). * gm2/dynamic/pass/testbec20.mod: (New file). * gm2/dynamic/pass/testbec21.mod: (New file). * gm2/dynamic/pass/testbec22.mod: (New file). * gm2/dynamic/pass/testbec23.mod: (New file). * gm2/dynamic/pass/testbec24.mod: (New file). * gm2/dynamic/pass/testbec25.mod: (New file). * gm2/dynamic/pass/testbec26.mod: (New file). * gm2/dynamic/pass/testbec27.mod: (New file). * gm2/dynamic/pass/testbec28.mod: (New file). * gm2/dynamic/pass/testbec29.mod: (New file). * gm2/dynamic/pass/testbec3.mod: (New file). * gm2/dynamic/pass/testbec30.mod: (New file). * gm2/dynamic/pass/testbec31.mod: (New file). * gm2/dynamic/pass/testbec32.mod: (New file). * gm2/dynamic/pass/testbec33.mod: (New file). * gm2/dynamic/pass/testbec34.mod: (New file). * gm2/dynamic/pass/testbec35.mod: (New file). * gm2/dynamic/pass/testbec36.mod: (New file). * gm2/dynamic/pass/testbec37.mod: (New file). * gm2/dynamic/pass/testbec38.mod: (New file). * gm2/dynamic/pass/testbec39.mod: (New file). * gm2/dynamic/pass/testbec4.mod: (New file). * gm2/dynamic/pass/testbec40.mod: (New file). * gm2/dynamic/pass/testbec41.mod: (New file). * gm2/dynamic/pass/testbec42.mod: (New file). * gm2/dynamic/pass/testbec43.mod: (New file). * gm2/dynamic/pass/testbec44.mod: (New file). * gm2/dynamic/pass/testbec45.mod: (New file). * gm2/dynamic/pass/testbec5.mod: (New file). * gm2/dynamic/pass/testbec6.mod: (New file). * gm2/dynamic/pass/testbec7.mod: (New file). * gm2/dynamic/pass/testbec8.mod: (New file). * gm2/dynamic/pass/testbec9.mod: (New file). * gm2/dynamic/pass/testdavid.mod: (New file). * gm2/dynamic/pass/testdiv.mod: (New file). * gm2/dynamic/pass/testexp.mod: (New file). * gm2/dynamic/pass/testfor.mod: (New file). * gm2/dynamic/pass/testfor2.mod: (New file). * gm2/dynamic/pass/testfunc.mod: (New file). * gm2/dynamic/pass/testfunc2.mod: (New file). * gm2/dynamic/pass/testfunc3.mod: (New file). * gm2/dynamic/pass/testfunc4.mod: (New file). * gm2/dynamic/pass/testfunc5.mod: (New file). * gm2/dynamic/pass/testfunc6.mod: (New file). * gm2/dynamic/pass/testif.mod: (New file). * gm2/dynamic/pass/testit.mod: (New file). * gm2/dynamic/pass/testloop.mod: (New file). * gm2/dynamic/pass/testloop2.mod: (New file). * gm2/dynamic/pass/testloop3.mod: (New file). * gm2/dynamic/pass/testloop4.mod: (New file). * gm2/dynamic/pass/testloop5.mod: (New file). * gm2/dynamic/pass/testmin.mod: (New file). * gm2/dynamic/pass/testnum4.mod: (New file). * gm2/dynamic/pass/testord.mod: (New file). * gm2/dynamic/pass/testparam.mod: (New file). * gm2/dynamic/pass/testparam2.mod: (New file). * gm2/dynamic/pass/testproc.mod: (New file). * gm2/dynamic/pass/testproc2.c: (New file). * gm2/dynamic/pass/testproc2.def: (New file). * gm2/dynamic/pass/testproc2.mod: (New file). * gm2/dynamic/pass/testscn.mod: (New file). * gm2/dynamic/pass/testset.mod: (New file). * gm2/dynamic/pass/testset2.mod: (New file). * gm2/dynamic/pass/testset3.mod: (New file). * gm2/dynamic/pass/teststr.c: (New file). * gm2/dynamic/pass/teststr.mod: (New file). * gm2/dynamic/pass/teststr2.mod: (New file). * gm2/dynamic/pass/teststring.mod: (New file). * gm2/dynamic/pass/testunbounded.mod: (New file). * gm2/dynamic/pass/testwith.mod: (New file). * gm2/dynamic/pass/testzero.mod: (New file). * gm2/dynamic/pass/wc.mod: (New file). * gm2/embedded/pass/embedded-pass.exp: (New file). * gm2/embedded/pass/varataddress.mod: (New file). * gm2/embedded/pass/varataddress1.mod: (New file). * gm2/embedded/pass/varataddress2.mod: (New file). * gm2/embedded/pass/varataddress3.mod: (New file). * gm2/errors/fail/array1.mod: (New file). * gm2/errors/fail/badexpr.mod: (New file). * gm2/errors/fail/badfor.mod: (New file). * gm2/errors/fail/badhigh.mod: (New file). * gm2/errors/fail/badshift.mod: (New file). * gm2/errors/fail/badsubexpradr.mod: (New file). * gm2/errors/fail/binaryconst.mod: (New file). * gm2/errors/fail/binarygeneric.mod: (New file). * gm2/errors/fail/binarygenericconst.mod: (New file). * gm2/errors/fail/end.mod: (New file). * gm2/errors/fail/errors-fail.exp: (New file). * gm2/errors/fail/mismatched.mod: (New file). * gm2/errors/fail/mismatchedproc.mod: (New file). * gm2/errors/fail/nestedproc4.mod: (New file). * gm2/errors/fail/nomodule.mod: (New file). * gm2/errors/fail/proctype.mod: (New file). * gm2/errors/fail/prog110.mod: (New file). * gm2/errors/fail/prog111.mod: (New file). * gm2/errors/fail/prog113.mod: (New file). * gm2/errors/fail/prog114.mod: (New file). * gm2/errors/fail/testaddress.mod: (New file). * gm2/errors/fail/testarray.mod: (New file). * gm2/errors/fail/testbit.mod: (New file). * gm2/errors/fail/testbit2.mod: (New file). * gm2/errors/fail/testcase.mod: (New file). * gm2/errors/fail/testcomment.mod: (New file). * gm2/errors/fail/testcomment2.mod: (New file). * gm2/errors/fail/testcomment3.mod: (New file). * gm2/errors/fail/testconst.mod: (New file). * gm2/errors/fail/testdyn.mod: (New file). * gm2/errors/fail/testdyn2.mod: (New file). * gm2/errors/fail/testdyn3.mod: (New file). * gm2/errors/fail/testexp.mod: (New file). * gm2/errors/fail/testfio.mod: (New file). * gm2/errors/fail/testimport.mod: (New file). * gm2/errors/fail/testimport2.def: (New file). * gm2/errors/fail/testimport2.mod: (New file). * gm2/errors/fail/testinit.mod: (New file). * gm2/errors/fail/testmodule.mod: (New file). * gm2/errors/fail/testnil.mod: (New file). * gm2/errors/fail/testnil2.mod: (New file). * gm2/errors/fail/testparam.mod: (New file). * gm2/errors/fail/testproc.mod: (New file). * gm2/errors/fail/testproc2.mod: (New file). * gm2/errors/fail/testsize.mod: (New file). * gm2/errors/fail/teststring.mod: (New file). * gm2/errors/fail/testsub3.mod: (New file). * gm2/errors/fail/testsub4.mod: (New file). * gm2/errors/fail/testtype.mod: (New file). * gm2/errors/fail/testvar.mod: (New file). * gm2/errors/fail/testwith.mod: (New file). * gm2/errors/fail/testwrite.mod: (New file). * gm2/errors/fail/type.mod: (New file). * gm2/errors/fail/unarygeneric.mod: (New file). * gm2/errors/mustfail: (New file). * gm2/errors/options: (New file). * gm2/errors/testchar.mod: (New file). * gm2/errors/testsub2.mod: (New file). * gm2/examples/callingC/pass/examples-callingC-pass.exp: (New file). * gm2/examples/callingC/pass/hello.mod: (New file). * gm2/examples/callingC/pass/libprintf.def: (New file). * gm2/examples/callingC/run/pass/c.c: (New file). * gm2/examples/callingC/run/pass/c.def: (New file). * gm2/examples/callingC/run/pass/examples-callingC-run-pass.exp: (New file). * gm2/examples/callingC/run/pass/hello.mod: (New file). * gm2/examples/callingC/run/pass/libprintf.def: (New file). * gm2/examples/callingC/run/pass/m.mod: (New file). * gm2/examples/cpp/pass/examples-cpp-pass.exp: (New file). * gm2/examples/cpp/pass/hello.mod: (New file). * gm2/examples/cppDef/pass/a.def: (New file). * gm2/examples/cppDef/pass/a.mod: (New file). * gm2/examples/cppDef/pass/b.mod: (New file). * gm2/examples/cppDef/pass/examples-cppDef-pass.exp: (New file). * gm2/examples/cppDef/pass/libprintf.def: (New file). * gm2/examples/hello/pass/examples-hello-pass.exp: (New file). * gm2/examples/hello/pass/hello.mod: (New file). * gm2/examples/map/pass/AdvMap.def: (New file). * gm2/examples/map/pass/AdvMap.mod: (New file). * gm2/examples/map/pass/BoxMap.def: (New file). * gm2/examples/map/pass/BoxMap.mod: (New file). * gm2/examples/map/pass/Chance.def: (New file). * gm2/examples/map/pass/Chance.mod: (New file). * gm2/examples/map/pass/Find.def: (New file). * gm2/examples/map/pass/Find.mod: (New file). * gm2/examples/map/pass/Geometry.def: (New file). * gm2/examples/map/pass/Geometry.mod: (New file). * gm2/examples/map/pass/MakeBoxes.def: (New file). * gm2/examples/map/pass/MakeBoxes.mod: (New file). * gm2/examples/map/pass/Map.mod: (New file). * gm2/examples/map/pass/RoomMap.def: (New file). * gm2/examples/map/pass/RoomMap.mod: (New file). * gm2/examples/map/pass/Semantic.mod: (New file). * gm2/examples/map/pass/StoreCoord.def: (New file). * gm2/examples/map/pass/StoreCoord.mod: (New file). * gm2/examples/map/pass/StoreCoords.def: (New file). * gm2/examples/map/pass/StoreCoords.mod: (New file). * gm2/examples/map/pass/WriteMap.def: (New file). * gm2/examples/map/pass/WriteMap.mod: (New file). * gm2/examples/map/pass/examples-map-pass.exp: (New file). * gm2/examples/map/pass/makemaps: (New file). * gm2/examples/map/pass/testch2.mod: (New file). * gm2/examples/map/pass/testchan.mod: (New file). * gm2/examples/map/pass/testcoor.mod: (New file). * gm2/examples/map/pass/testmaps: (New file). * gm2/exceptions/run/pass/cpp.cpp: (New file). * gm2/exceptions/run/pass/cpp.def: (New file). * gm2/exceptions/run/pass/exceptions-run-pass.exp: (New file). * gm2/exceptions/run/pass/libexcept.mod: (New file). * gm2/exceptions/run/pass/m2test.def: (New file). * gm2/exceptions/run/pass/m2test.mod: (New file). * gm2/exceptions/run/pass/mycpp.cpp: (New file). * gm2/exceptions/run/pass/mycpp.def: (New file). * gm2/exceptions/run/pass/mym2.mod: (New file). * gm2/exceptions/run/pass/mym2a.mod: (New file). * gm2/extensions/pass/align.mod: (New file). * gm2/extensions/pass/align2.mod: (New file). * gm2/extensions/pass/card16p.mod: (New file). * gm2/extensions/pass/card32p.mod: (New file). * gm2/extensions/pass/card64p.mod: (New file). * gm2/extensions/pass/card8p.mod: (New file). * gm2/extensions/pass/co.def: (New file). * gm2/extensions/pass/co.mod: (New file). * gm2/extensions/pass/extensions-pass.exp: (New file). * gm2/extensions/pass/frame.mod: (New file). * gm2/extensions/pass/hello.mod: (New file). * gm2/extensions/pass/int16p.mod: (New file). * gm2/extensions/pass/int32p.mod: (New file). * gm2/extensions/pass/int64p.mod: (New file). * gm2/extensions/pass/int8p.mod: (New file). * gm2/extensions/pass/intsize8.mod: (New file). * gm2/extensions/pass/jmp.mod: (New file). * gm2/extensions/pass/libc.def: (New file). * gm2/extensions/pass/optparam.mod: (New file). * gm2/extensions/pass/optparam2.mod: (New file). * gm2/extensions/pass/return.mod: (New file). * gm2/extensions/pass/set8.mod: (New file). * gm2/extensions/pass/set8a.mod: (New file). * gm2/extensions/pass/set8b.mod: (New file). * gm2/extensions/pass/testco.mod: (New file). * gm2/extensions/run/fail/extensions-run-fail.exp: (New file). * gm2/extensions/run/fail/intsize8.mod: (New file). * gm2/extensions/run/pass/align3.mod: (New file). * gm2/extensions/run/pass/align4.mod: (New file). * gm2/extensions/run/pass/align5.mod: (New file). * gm2/extensions/run/pass/align6.mod: (New file). * gm2/extensions/run/pass/align7.mod: (New file). * gm2/extensions/run/pass/callingc.mod: (New file). * gm2/extensions/run/pass/card16p.mod: (New file). * gm2/extensions/run/pass/card32p.mod: (New file). * gm2/extensions/run/pass/card64p.mod: (New file). * gm2/extensions/run/pass/card8p.mod: (New file). * gm2/extensions/run/pass/column.mod: (New file). * gm2/extensions/run/pass/cvararg.c: (New file). * gm2/extensions/run/pass/cvararg.def: (New file). * gm2/extensions/run/pass/extensions-run-pass.exp: (New file). * gm2/extensions/run/pass/int16p.mod: (New file). * gm2/extensions/run/pass/int32p.mod: (New file). * gm2/extensions/run/pass/int64p.mod: (New file). * gm2/extensions/run/pass/int8field.mod: (New file). * gm2/extensions/run/pass/int8p.mod: (New file). * gm2/extensions/run/pass/packedrecord.mod: (New file). * gm2/extensions/run/pass/packedrecord2.mod: (New file). * gm2/extensions/run/pass/real32.mod: (New file). * gm2/extensions/run/pass/real32a.mod: (New file). * gm2/extensions/run/pass/record.mod: (New file). * gm2/extensions/run/pass/testopen.mod: (New file). * gm2/extensions/run/pass/vararg.mod: (New file). * gm2/extensions/run/pass/vararg2.mod: (New file). * gm2/extensions/run/pass/vararg3.mod: (New file). * gm2/fpu/pass/five.mod: (New file). * gm2/fpu/pass/fp.def: (New file). * gm2/fpu/pass/fp.mod: (New file). * gm2/fpu/pass/fpu-pass.exp: (New file). * gm2/fpu/pass/one.mod: (New file). * gm2/fpu/pass/r1.mod: (New file). * gm2/fpu/pass/realconst.mod: (New file). * gm2/fpu/pass/testfp.mod: (New file). * gm2/fpu/pass/testfp2.mod: (New file). * gm2/fpu/pass/testfpu1.mod: (New file). * gm2/fpu/pass/testfpu2.mod: (New file). * gm2/fpu/pass/testfpu3.mod: (New file). * gm2/fpu/pass/testsin.mod: (New file). * gm2/imports/run/pass/c.def: (New file). * gm2/imports/run/pass/c.mod: (New file). * gm2/imports/run/pass/imports-run-pass.exp: (New file). * gm2/imports/run/pass/innermods.mod: (New file). * gm2/imports/run/pass/innermods2.mod: (New file). * gm2/imports/run/pass/innermods3.mod: (New file). * gm2/imports/run/pass/innermods4.mod: (New file). * gm2/imports/run/pass/innermods5.def: (New file). * gm2/imports/run/pass/innermods5.mod: (New file). * gm2/imports/run/pass/innermods6.mod: (New file). * gm2/integer/div.mod: (New file). * gm2/integer/expr.mod: (New file). * gm2/integer/mod.mod: (New file). * gm2/integer/mod2.mod: (New file). * gm2/integer/one.mod: (New file). * gm2/integer/options: (New file). * gm2/integer/zero.mod: (New file). * gm2/iso/analysis/fail/Makefile: (New file). * gm2/iso/analysis/fail/arithoverflow.mod: (New file). * gm2/iso/analysis/fail/arithoverflow2.mod: (New file). * gm2/iso/analysis/fail/arithsubcard.mod: (New file). * gm2/iso/analysis/fail/arrayrange.mod: (New file). * gm2/iso/analysis/fail/assignvalue.mod: (New file). * gm2/iso/analysis/fail/callassignment.mod: (New file). * gm2/iso/analysis/fail/callassignment2.mod: (New file). * gm2/iso/analysis/fail/callassignment3.mod: (New file). * gm2/iso/analysis/fail/callassignment4.mod: (New file). * gm2/iso/analysis/fail/caserange.mod: (New file). * gm2/iso/analysis/fail/decvalue.mod: (New file). * gm2/iso/analysis/fail/forloop.mod: (New file). * gm2/iso/analysis/fail/incvalue.mod: (New file). * gm2/iso/analysis/fail/iso-analysis-fail.exp: (New file). * gm2/iso/analysis/fail/noreturn.mod: (New file). * gm2/iso/analysis/fail/returnvalue.mod: (New file). * gm2/iso/analysis/fail/staticarray.mod: (New file). * gm2/iso/check/fail/iso-check-fail.exp: (New file). * gm2/iso/check/fail/modulusoverflow.mod: (New file). * gm2/iso/fail/badarray.mod: (New file). * gm2/iso/fail/badarray2.mod: (New file). * gm2/iso/fail/badipv4.mod: (New file). * gm2/iso/fail/bug10.mod: (New file). * gm2/iso/fail/bug8.mod: (New file). * gm2/iso/fail/bug9.mod: (New file). * gm2/iso/fail/case.mod: (New file). * gm2/iso/fail/case2.mod: (New file). * gm2/iso/fail/case3.mod: (New file). * gm2/iso/fail/const1.mod: (New file). * gm2/iso/fail/constarray.mod: (New file). * gm2/iso/fail/constarray2.mod: (New file). * gm2/iso/fail/constprocedure.mod: (New file). * gm2/iso/fail/constrecord.mod: (New file). * gm2/iso/fail/constrecord2.mod: (New file). * gm2/iso/fail/constrecord3.mod: (New file). * gm2/iso/fail/constsubrange.mod: (New file). * gm2/iso/fail/constsubrange2.mod: (New file). * gm2/iso/fail/constsubrange3.mod: (New file). * gm2/iso/fail/defa.def: (New file). * gm2/iso/fail/defa.mod: (New file). * gm2/iso/fail/defb.def: (New file). * gm2/iso/fail/defb.mod: (New file). * gm2/iso/fail/defc.def: (New file). * gm2/iso/fail/defc.mod: (New file). * gm2/iso/fail/except.mod: (New file). * gm2/iso/fail/except2.mod: (New file). * gm2/iso/fail/iso-fail.exp: (New file). * gm2/iso/fail/isoa.def: (New file). * gm2/iso/fail/isoa.mod: (New file). * gm2/iso/fail/lengthsubexpr.mod: (New file). * gm2/iso/fail/proc.mod: (New file). * gm2/iso/fail/realbitscast.mod: (New file). * gm2/iso/fail/varient.mod: (New file). * gm2/iso/fail/varient2.mod: (New file). * gm2/iso/future/builtinlj.mod: (New file). * gm2/iso/pass/ChanConsts.def: (New file). * gm2/iso/pass/ChanConsts.mod: (New file). * gm2/iso/pass/ConvTypes.def: (New file). * gm2/iso/pass/ConvTypes.mod: (New file). * gm2/iso/pass/addadr1.mod: (New file). * gm2/iso/pass/bits32c.mod: (New file). * gm2/iso/pass/callwraptime.mod: (New file). * gm2/iso/pass/caseiso.mod: (New file). * gm2/iso/pass/caseiso2.mod: (New file). * gm2/iso/pass/cast.mod: (New file). * gm2/iso/pass/cast3.mod: (New file). * gm2/iso/pass/castiso.mod: (New file). * gm2/iso/pass/const1.mod: (New file). * gm2/iso/pass/constreal.mod: (New file). * gm2/iso/pass/constructor1.mod: (New file). * gm2/iso/pass/constructor2.mod: (New file). * gm2/iso/pass/constructor3.mod: (New file). * gm2/iso/pass/constructor4.mod: (New file). * gm2/iso/pass/constructor5.mod: (New file). * gm2/iso/pass/constructor6.mod: (New file). * gm2/iso/pass/constsize4.mod: (New file). * gm2/iso/pass/delim.mod: (New file). * gm2/iso/pass/delim2.mod: (New file). * gm2/iso/pass/enummodule.mod: (New file). * gm2/iso/pass/except1.mod: (New file). * gm2/iso/pass/expproc.mod: (New file). * gm2/iso/pass/expproc2.mod: (New file). * gm2/iso/pass/iso-pass.exp: (New file). * gm2/iso/pass/isob.def: (New file). * gm2/iso/pass/isob.mod: (New file). * gm2/iso/pass/isobitset.mod: (New file). * gm2/iso/pass/isobitset2.mod: (New file). * gm2/iso/pass/longm.mod: (New file). * gm2/iso/pass/m.mod: (New file). * gm2/iso/pass/proccast.mod: (New file). * gm2/iso/pass/realbitscast.mod: (New file). * gm2/iso/pass/set12.mod: (New file). * gm2/iso/pass/stringchar.mod: (New file). * gm2/iso/pass/subassign.mod: (New file). * gm2/iso/pass/testaddindr.mod: (New file). * gm2/iso/pass/testconv.def: (New file). * gm2/iso/pass/testconv.mod: (New file). * gm2/iso/pass/testconv2.def: (New file). * gm2/iso/pass/testconv2.mod: (New file). * gm2/iso/pass/testconv3.mod: (New file). * gm2/iso/pass/testconv4.mod: (New file). * gm2/iso/pass/testconv5.mod: (New file). * gm2/iso/pass/testconv6.mod: (New file). * gm2/iso/pass/testconv7.mod: (New file). * gm2/iso/pass/testconv8.mod: (New file). * gm2/iso/pass/testconv9.mod: (New file). * gm2/iso/pass/testiso.mod: (New file). * gm2/iso/pass/testiso2.mod: (New file). * gm2/iso/pass/testisosize.mod: (New file). * gm2/iso/pass/testlength.mod: (New file). * gm2/iso/pass/testlength2.mod: (New file). * gm2/iso/pass/testlength3.mod: (New file). * gm2/iso/pass/testlength4.mod: (New file). * gm2/iso/pass/testlength5.mod: (New file). * gm2/iso/pass/unbounded.mod: (New file). * gm2/iso/pass/unbounded2.mod: (New file). * gm2/iso/run/pass/adraddress.mod: (New file). * gm2/iso/run/pass/adrunbounded3.mod: (New file). * gm2/iso/run/pass/baseimport.mod: (New file). * gm2/iso/run/pass/compsize.mod: (New file). * gm2/iso/run/pass/concurrentstore.mod: (New file). * gm2/iso/run/pass/constprocedure.mod: (New file). * gm2/iso/run/pass/constructor1.mod: (New file). * gm2/iso/run/pass/constructor2.mod: (New file). * gm2/iso/run/pass/conststrarray.mod: (New file). * gm2/iso/run/pass/contimer.mod: (New file). * gm2/iso/run/pass/except.c: (New file). * gm2/iso/run/pass/except2.mod: (New file). * gm2/iso/run/pass/except3.cpp: (New file). * gm2/iso/run/pass/except4.mod: (New file). * gm2/iso/run/pass/except5.cpp: (New file). * gm2/iso/run/pass/except5.mod: (New file). * gm2/iso/run/pass/except6.cpp: (New file). * gm2/iso/run/pass/except7.mod: (New file). * gm2/iso/run/pass/except8.mod: (New file). * gm2/iso/run/pass/fileio.def: (New file). * gm2/iso/run/pass/fileio.mod: (New file). * gm2/iso/run/pass/hello.mod: (New file). * gm2/iso/run/pass/int8field.mod: (New file). * gm2/iso/run/pass/iso-run-pass.exp: (New file). * gm2/iso/run/pass/long.mod: (New file). * gm2/iso/run/pass/long2.mod: (New file). * gm2/iso/run/pass/long3.mod: (New file). * gm2/iso/run/pass/long4.c: (New file). * gm2/iso/run/pass/long4.mod: (New file). * gm2/iso/run/pass/minmax.mod: (New file). * gm2/iso/run/pass/modulus.mod: (New file). * gm2/iso/run/pass/nestediso.mod: (New file). * gm2/iso/run/pass/nestedrecord.mod: (New file). * gm2/iso/run/pass/onebyte.mod: (New file). * gm2/iso/run/pass/onebyte2.mod: (New file). * gm2/iso/run/pass/onebyte3.mod: (New file). * gm2/iso/run/pass/packed.mod: (New file). * gm2/iso/run/pass/proc.c: (New file). * gm2/iso/run/pass/proc.mod: (New file). * gm2/iso/run/pass/proc2.mod: (New file). * gm2/iso/run/pass/returnrecord.mod: (New file). * gm2/iso/run/pass/shift.mod: (New file). * gm2/iso/run/pass/shift2.mod: (New file). * gm2/iso/run/pass/shift3.mod: (New file). * gm2/iso/run/pass/shift4.mod: (New file). * gm2/iso/run/pass/simple: (New file). * gm2/iso/run/pass/simplelarge.mod: (New file). * gm2/iso/run/pass/strcons.mod: (New file). * gm2/iso/run/pass/strcons2.mod: (New file). * gm2/iso/run/pass/t.cpp: (New file). * gm2/iso/run/pass/t1.cpp: (New file). * gm2/iso/run/pass/testLength.mod: (New file). * gm2/iso/run/pass/testarray.mod: (New file). * gm2/iso/run/pass/testgeneric.mod: (New file). * gm2/iso/run/pass/testlarge.mod: (New file). * gm2/iso/run/pass/testsystem.mod: (New file). * gm2/iso/run/pass/tinyconst.mod: (New file). * gm2/iso/run/pass/tinyconst2.mod: (New file). * gm2/iso/run/pass/tinyconst3.mod: (New file). * gm2/iso/run/pass/tinyconst4.mod: (New file). * gm2/iso/run/pass/tinyconst5.mod: (New file). * gm2/iso/run/pass/tinytimer.mod: (New file). * gm2/iso/run/pass/trivialmodulus.mod: (New file). * gm2/iso/run/pass/tsize.mod: (New file). * gm2/iso/run/pass/tsize2.mod: (New file). * gm2/iso/run/pass/tstLength.mod: (New file). * gm2/iso/run/pass/unbounded.mod: (New file). * gm2/iso/run/pass/unbounded2.mod: (New file). * gm2/iso/run/pass/unbounded3.mod: (New file). * gm2/iso/run/pass/unbounded4.mod: (New file). * gm2/iso/run/pass/unbounded5.mod: (New file). * gm2/iso/run/pass/unbounded6.mod: (New file). * gm2/iso/run/pass/unbounded7.mod: (New file). * gm2/iso/run/pass/unbounded8.mod: (New file). * gm2/isocoroutines/run/pass/coroutine.mod: (New file). * gm2/isocoroutines/run/pass/isocoroutines-run-pass.exp: (New file). * gm2/isolib/run/pass/arraycons.mod: (New file). * gm2/isolib/run/pass/arraycons2.mod: (New file). * gm2/isolib/run/pass/arraycons3.mod: (New file). * gm2/isolib/run/pass/arraycons5.mod: (New file). * gm2/isolib/run/pass/arraycons6.mod: (New file). * gm2/isolib/run/pass/arraycons7.mod: (New file). * gm2/isolib/run/pass/arrayconst8.mod: (New file). * gm2/isolib/run/pass/exceptiontest.mod: (New file). * gm2/isolib/run/pass/filepos.mod: (New file). * gm2/isolib/run/pass/hello.mod: (New file). * gm2/isolib/run/pass/insert.mod: (New file). * gm2/isolib/run/pass/intconv.mod: (New file). * gm2/isolib/run/pass/isolib-run-pass.exp: (New file). * gm2/isolib/run/pass/longstr.mod: (New file). * gm2/isolib/run/pass/openlibc.mod: (New file). * gm2/isolib/run/pass/raise.mod: (New file). * gm2/isolib/run/pass/raise2.mod: (New file). * gm2/isolib/run/pass/readreal.mod: (New file). * gm2/isolib/run/pass/real1.mod: (New file). * gm2/isolib/run/pass/real2.mod: (New file). * gm2/isolib/run/pass/real3.mod: (New file). * gm2/isolib/run/pass/realconv.mod: (New file). * gm2/isolib/run/pass/realconv2.mod: (New file). * gm2/isolib/run/pass/realstr.mod: (New file). * gm2/isolib/run/pass/sigfig.mod: (New file). * gm2/isolib/run/pass/stringreal2.mod: (New file). * gm2/isolib/run/pass/termfile.mod-disabled: (New file). * gm2/isolib/run/pass/testappend.mod: (New file). * gm2/isolib/run/pass/testinput: (New file). * gm2/isolib/run/pass/testio.mod: (New file). * gm2/isolib/run/pass/testio2.mod: (New file). * gm2/isolib/run/pass/testmem.mod: (New file). * gm2/isolib/run/pass/testmem2.mod: (New file). * gm2/isolib/run/pass/testnumber: (New file). * gm2/isolib/run/pass/tiny.mod: (New file). * gm2/isolib/run/pass/tiny2.mod: (New file). * gm2/isolib/run/pass/tiny3.mod: (New file). * gm2/isolib/run/pass/tiny4.mod: (New file). * gm2/isolib/run/pass/tiny5.mod: (New file). * gm2/libs/a.def: (New file). * gm2/libs/a.mod: (New file). * gm2/libs/b.def: (New file). * gm2/libs/b.mod: (New file). * gm2/libs/testraw.mod: (New file). * gm2/link/externalscaffold/pass/hello.mod: (New file). * gm2/link/externalscaffold/pass/link-externalscaffold-pass.exp: (New file). * gm2/link/externalscaffold/pass/scaffold.c: (New file). * gm2/link/pim/fail/import.mod: (New file). * gm2/link/pim/fail/link-pim-fail.exp: (New file). * gm2/link/pim/pass/link-pim-pass.exp: (New file). * gm2/link/pimc/pass/README: (New file). * gm2/link/pimc/pass/link-pimc-pass.exp: (New file). * gm2/link/pimc/pass/testdtoa.mod: (New file). * gm2/link/pimc/pass/testerrno.mod: (New file). * gm2/link/pimc/pass/testgetopt.mod: (New file). * gm2/link/pimc/pass/testldtoa.mod: (New file). * gm2/link/pimc/pass/testlibc.mod: (New file). * gm2/link/pimc/pass/testlibc2.mod: (New file). * gm2/link/pimc/pass/testsckt.mod: (New file). * gm2/link/pimc/pass/testselective.mod: (New file). * gm2/link/pimc/pass/testsysexceptions.mod: (New file). * gm2/link/pimc/pass/testtermios.mod: (New file). * gm2/link/pimc/pass/testunixargs.mod: (New file). * gm2/link/pimc/pass/testwrapc.mod: (New file). * gm2/linking/libarchive/pass/c.c: (New file). * gm2/linking/libarchive/pass/c.def: (New file). * gm2/linking/libarchive/pass/d.def: (New file). * gm2/linking/libarchive/pass/e.def: (New file). * gm2/linking/libarchive/pass/linking-libarchive-pass.exp: (New file). * gm2/linking/libarchive/pass/m.mod: (New file). * gm2/linking/verbose/pass/hello.mod: (New file). * gm2/linking/verbose/pass/linking-verbose-pass.exp: (New file). * gm2/pim/fail/TestLong3.mod: (New file). * gm2/pim/fail/TestLong6.mod: (New file). * gm2/pim/fail/a.def: (New file). * gm2/pim/fail/assignbounds.mod: (New file). * gm2/pim/fail/assignsubrange.mod: (New file). * gm2/pim/fail/assignsubrange2.mod: (New file). * gm2/pim/fail/b.def: (New file). * gm2/pim/fail/bad.def: (New file). * gm2/pim/fail/badconst.mod: (New file). * gm2/pim/fail/badfunc.mod: (New file). * gm2/pim/fail/badparam.mod: (New file). * gm2/pim/fail/badparam2.mod: (New file). * gm2/pim/fail/badtype.mod: (New file). * gm2/pim/fail/badtypes.mod: (New file). * gm2/pim/fail/bits.mod: (New file). * gm2/pim/fail/bits2.mod: (New file). * gm2/pim/fail/bits3.mod: (New file). * gm2/pim/fail/bits4.mod: (New file). * gm2/pim/fail/cardword.mod: (New file). * gm2/pim/fail/constbec.mod: (New file). * gm2/pim/fail/constsize3.mod: (New file). * gm2/pim/fail/constvar.mod: (New file). * gm2/pim/fail/convert5.mod: (New file). * gm2/pim/fail/dupconst.mod: (New file). * gm2/pim/fail/dupenum.mod: (New file). * gm2/pim/fail/dupfield.mod: (New file). * gm2/pim/fail/duptype.mod: (New file). * gm2/pim/fail/dupvar.mod: (New file). * gm2/pim/fail/expression.mod: (New file). * gm2/pim/fail/expression2.mod: (New file). * gm2/pim/fail/expression3.mod: (New file). * gm2/pim/fail/func.mod: (New file). * gm2/pim/fail/good.def: (New file). * gm2/pim/fail/good.mod: (New file). * gm2/pim/fail/import.mod: (New file). * gm2/pim/fail/inserttok.def: (New file). * gm2/pim/fail/inserttok.mod: (New file). * gm2/pim/fail/integer.mod: (New file). * gm2/pim/fail/keyword.mod: (New file). * gm2/pim/fail/longtypes2.mod: (New file). * gm2/pim/fail/longtypes3.mod: (New file). * gm2/pim/fail/multisetf.mod: (New file). * gm2/pim/fail/nested3.mod: (New file). * gm2/pim/fail/opaque.mod: (New file). * gm2/pim/fail/opaque2.mod: (New file). * gm2/pim/fail/opasfail.mod: (New file). * gm2/pim/fail/opcpfail.mod: (New file). * gm2/pim/fail/pim-fail.exp: (New file). * gm2/pim/fail/procmod.mod: (New file). * gm2/pim/fail/rotate.mod: (New file). * gm2/pim/fail/rotate2.mod: (New file). * gm2/pim/fail/setbec.mod: (New file). * gm2/pim/fail/setequiv.mod: (New file). * gm2/pim/fail/setsnulf.mod: (New file). * gm2/pim/fail/settype.mod: (New file). * gm2/pim/fail/shift.mod: (New file). * gm2/pim/fail/shift2.mod: (New file). * gm2/pim/fail/subrange7.mod: (New file). * gm2/pim/fail/unary.mod: (New file). * gm2/pim/fail/undeclared.mod: (New file). * gm2/pim/fail/val.mod: (New file). * gm2/pim/fail/val2.mod: (New file). * gm2/pim/fail/wordconst.mod: (New file). * gm2/pim/no-options/run/pass/integer.mod: (New file). * gm2/pim/no-options/run/pass/pim-no-options-run-pass.exp: (New file). * gm2/pim/options/bounds/fail/IdentifierBug.mod: (New file). * gm2/pim/options/bounds/fail/pim-options-bounds-fail.exp: (New file). * gm2/pim/options/optimize/run/pass/addition.def: (New file). * gm2/pim/options/optimize/run/pass/addition.mod: (New file). * gm2/pim/options/optimize/run/pass/concat.mod: (New file). * gm2/pim/options/optimize/run/pass/pim-options-optimize-run-pass.exp: (New file). * gm2/pim/options/optimize/run/pass/testadd.mod: (New file). * gm2/pim/pass/ABSBug.mod: (New file). * gm2/pim/pass/TestLong4.mod: (New file). * gm2/pim/pass/TestLong7.mod: (New file). * gm2/pim/pass/TestLong8.mod: (New file). * gm2/pim/pass/TestLong9.mod: (New file). * gm2/pim/pass/another.mod: (New file). * gm2/pim/pass/aochar.mod: (New file). * gm2/pim/pass/array.mod: (New file). * gm2/pim/pass/array2.mod: (New file). * gm2/pim/pass/array3.mod: (New file). * gm2/pim/pass/array4.mod: (New file). * gm2/pim/pass/array5.mod: (New file). * gm2/pim/pass/array6.mod: (New file). * gm2/pim/pass/arraybool.mod: (New file). * gm2/pim/pass/arraychar.mod: (New file). * gm2/pim/pass/arraychar2.mod: (New file). * gm2/pim/pass/arraychar3.mod: (New file). * gm2/pim/pass/arrayconst1.mod: (New file). * gm2/pim/pass/arrayconst2.mod: (New file). * gm2/pim/pass/arrayconst3.mod: (New file). * gm2/pim/pass/arraydecl.mod: (New file). * gm2/pim/pass/arraydim.mod: (New file). * gm2/pim/pass/arraydyn.mod: (New file). * gm2/pim/pass/arrayeqiv.mod: (New file). * gm2/pim/pass/arrayfio.mod: (New file). * gm2/pim/pass/arrayhuge.mod: (New file). * gm2/pim/pass/arrayhuge2.mod: (New file). * gm2/pim/pass/arrayindex.mod: (New file). * gm2/pim/pass/arrayindirect.mod: (New file). * gm2/pim/pass/arrayinproc.mod: (New file). * gm2/pim/pass/arrayint.mod: (New file). * gm2/pim/pass/arrayofbyte.mod: (New file). * gm2/pim/pass/arrayofcard.mod: (New file). * gm2/pim/pass/arrayptr.mod: (New file). * gm2/pim/pass/arrayptr2.mod: (New file). * gm2/pim/pass/arrayptr3.mod: (New file). * gm2/pim/pass/arrayptr4.mod: (New file). * gm2/pim/pass/arrayptr5.mod: (New file). * gm2/pim/pass/arrayptr6.mod: (New file). * gm2/pim/pass/arrayrecord.mod: (New file). * gm2/pim/pass/arraytiny.c: (New file). * gm2/pim/pass/arraytiny.mod: (New file). * gm2/pim/pass/arraytype.mod: (New file). * gm2/pim/pass/arraytype2.mod: (New file). * gm2/pim/pass/arraytype3.mod: (New file). * gm2/pim/pass/arraytype4.mod: (New file). * gm2/pim/pass/assignment.mod: (New file). * gm2/pim/pass/assignment2.mod: (New file). * gm2/pim/pass/assignment3.mod: (New file). * gm2/pim/pass/assignment4.mod: (New file). * gm2/pim/pass/badpointer.mod: (New file). * gm2/pim/pass/bits32.def: (New file). * gm2/pim/pass/bits32.mod: (New file). * gm2/pim/pass/bits32i.mod: (New file). * gm2/pim/pass/bitset.mod: (New file). * gm2/pim/pass/bitset2.mod: (New file). * gm2/pim/pass/bitset3.mod: (New file). * gm2/pim/pass/bitset4.mod: (New file). * gm2/pim/pass/bitset5.mod: (New file). * gm2/pim/pass/bitsetfunc.mod: (New file). * gm2/pim/pass/block.mod: (New file). * gm2/pim/pass/blockindirect.mod: (New file). * gm2/pim/pass/builtin.def: (New file). * gm2/pim/pass/builtin.mod: (New file). * gm2/pim/pass/builtin2.mod: (New file). * gm2/pim/pass/builtinconst.mod: (New file). * gm2/pim/pass/bytearray.mod: (New file). * gm2/pim/pass/card.mod: (New file). * gm2/pim/pass/card2.mod: (New file). * gm2/pim/pass/char.mod: (New file). * gm2/pim/pass/char2.mod: (New file). * gm2/pim/pass/charproc.mod: (New file). * gm2/pim/pass/charset.mod: (New file). * gm2/pim/pass/charset2.mod: (New file). * gm2/pim/pass/charset3.mod: (New file). * gm2/pim/pass/checkparm.def: (New file). * gm2/pim/pass/checkparm.mod: (New file). * gm2/pim/pass/colour.mod: (New file). * gm2/pim/pass/comment1.mod: (New file). * gm2/pim/pass/complexarray.mod: (New file). * gm2/pim/pass/complextypes.mod: (New file). * gm2/pim/pass/constcast.mod: (New file). * gm2/pim/pass/constmax.mod: (New file). * gm2/pim/pass/constset.mod: (New file). * gm2/pim/pass/constset2.mod: (New file). * gm2/pim/pass/constset3.mod: (New file). * gm2/pim/pass/constsize.mod: (New file). * gm2/pim/pass/constsize2.mod: (New file). * gm2/pim/pass/convert.mod: (New file). * gm2/pim/pass/convert2.mod: (New file). * gm2/pim/pass/convert3.mod: (New file). * gm2/pim/pass/convert4.mod: (New file). * gm2/pim/pass/danglingelse.mod: (New file). * gm2/pim/pass/debug: (New file). * gm2/pim/pass/defset.def: (New file). * gm2/pim/pass/defset.mod: (New file). * gm2/pim/pass/deftype.mod: (New file). * gm2/pim/pass/divaddr.mod: (New file). * gm2/pim/pass/enum.mod: (New file). * gm2/pim/pass/enum2.mod: (New file). * gm2/pim/pass/enum3.mod: (New file). * gm2/pim/pass/file.mod: (New file). * gm2/pim/pass/filesystem.mod: (New file). * gm2/pim/pass/foo.mod: (New file). * gm2/pim/pass/foo2.mod: (New file). * gm2/pim/pass/for1.mod: (New file). * gm2/pim/pass/function.mod: (New file). * gm2/pim/pass/function2.mod: (New file). * gm2/pim/pass/gcd.def: (New file). * gm2/pim/pass/gcd.mod: (New file). * gm2/pim/pass/getconst.mod: (New file). * gm2/pim/pass/hello.mod: (New file). * gm2/pim/pass/impa.mod: (New file). * gm2/pim/pass/impb.def: (New file). * gm2/pim/pass/impb.mod: (New file). * gm2/pim/pass/impc.def: (New file). * gm2/pim/pass/impc.mod: (New file). * gm2/pim/pass/impd.mod: (New file). * gm2/pim/pass/impe.mod: (New file). * gm2/pim/pass/impf.mod: (New file). * gm2/pim/pass/impg.mod: (New file). * gm2/pim/pass/imph.mod: (New file). * gm2/pim/pass/impi.mod: (New file). * gm2/pim/pass/impj.mod: (New file). * gm2/pim/pass/impk.mod: (New file). * gm2/pim/pass/impl.mod: (New file). * gm2/pim/pass/impm.mod: (New file). * gm2/pim/pass/impn.def: (New file). * gm2/pim/pass/impn.mod: (New file). * gm2/pim/pass/impo.mod: (New file). * gm2/pim/pass/imports.mod: (New file). * gm2/pim/pass/impp.def: (New file). * gm2/pim/pass/impp.mod: (New file). * gm2/pim/pass/impq.def: (New file). * gm2/pim/pass/impq.mod: (New file). * gm2/pim/pass/incompsets.mod: (New file). * gm2/pim/pass/index.mod: (New file). * gm2/pim/pass/index2.mod: (New file). * gm2/pim/pass/indirect.mod: (New file). * gm2/pim/pass/inner.mod: (New file). * gm2/pim/pass/inner2.mod: (New file). * gm2/pim/pass/int.mod: (New file). * gm2/pim/pass/largeset.mod: (New file). * gm2/pim/pass/largeset1.mod: (New file). * gm2/pim/pass/largeset2.mod: (New file). * gm2/pim/pass/largeset3.mod: (New file). * gm2/pim/pass/largeset4.mod: (New file). * gm2/pim/pass/largeset5.mod: (New file). * gm2/pim/pass/largeset6.mod: (New file). * gm2/pim/pass/largeset7.mod: (New file). * gm2/pim/pass/localmod.mod: (New file). * gm2/pim/pass/localproc.mod: (New file). * gm2/pim/pass/localvar.mod: (New file). * gm2/pim/pass/log: (New file). * gm2/pim/pass/longint.mod: (New file). * gm2/pim/pass/longint2.mod: (New file). * gm2/pim/pass/longmm.mod: (New file). * gm2/pim/pass/longreal.mod: (New file). * gm2/pim/pass/longtypes.mod: (New file). * gm2/pim/pass/longtypes3.mod: (New file). * gm2/pim/pass/longtypes4.mod: (New file). * gm2/pim/pass/longtypes5.mod: (New file). * gm2/pim/pass/longtypes6.mod: (New file). * gm2/pim/pass/loopexit.mod: (New file). * gm2/pim/pass/math.mod: (New file). * gm2/pim/pass/maxlongint.mod: (New file). * gm2/pim/pass/maxreal.mod: (New file). * gm2/pim/pass/maxreal2.mod: (New file). * gm2/pim/pass/minmaxconst.mod: (New file). * gm2/pim/pass/minmaxconst2.mod: (New file). * gm2/pim/pass/modaddr.mod: (New file). * gm2/pim/pass/multaddr.mod: (New file). * gm2/pim/pass/multiple.mod: (New file). * gm2/pim/pass/multiset.mod: (New file). * gm2/pim/pass/multtypes.mod: (New file). * gm2/pim/pass/mydef.def: (New file). * gm2/pim/pass/negatives.def: (New file). * gm2/pim/pass/negatives.mod: (New file). * gm2/pim/pass/nested.mod: (New file). * gm2/pim/pass/nested2.mod: (New file). * gm2/pim/pass/nested3.mod: (New file). * gm2/pim/pass/nested4.mod: (New file). * gm2/pim/pass/nested5.mod: (New file). * gm2/pim/pass/nested6.mod: (New file). * gm2/pim/pass/nested7.mod: (New file). * gm2/pim/pass/nestedfor.mod: (New file). * gm2/pim/pass/nestedif.mod: (New file). * gm2/pim/pass/nestedset.mod: (New file). * gm2/pim/pass/onezero.mod: (New file). * gm2/pim/pass/opaque.def: (New file). * gm2/pim/pass/opaque.mod: (New file). * gm2/pim/pass/opaque2.mod: (New file). * gm2/pim/pass/opaquetype.def: (New file). * gm2/pim/pass/opaquetype.mod: (New file). * gm2/pim/pass/param.mod: (New file). * gm2/pim/pass/param2.mod: (New file). * gm2/pim/pass/param3.mod: (New file). * gm2/pim/pass/parambool.mod: (New file). * gm2/pim/pass/paramreal.mod: (New file). * gm2/pim/pass/pim-pass.exp: (New file). * gm2/pim/pass/pimimp.mod: (New file). * gm2/pim/pass/pointer.mod: (New file). * gm2/pim/pass/procadr.mod: (New file). * gm2/pim/pass/procconv.mod: (New file). * gm2/pim/pass/procconv2.mod: (New file). * gm2/pim/pass/procedure1.mod: (New file). * gm2/pim/pass/procedure2.mod: (New file). * gm2/pim/pass/procindirect.mod: (New file). * gm2/pim/pass/procmod.mod: (New file). * gm2/pim/pass/procmod2.mod: (New file). * gm2/pim/pass/procmod3.mod: (New file). * gm2/pim/pass/procmod31.mod: (New file). * gm2/pim/pass/procmod4.mod: (New file). * gm2/pim/pass/procmod5.mod: (New file). * gm2/pim/pass/procmod6.def: (New file). * gm2/pim/pass/procmod6.mod: (New file). * gm2/pim/pass/procmod7.mod: (New file). * gm2/pim/pass/procmod8.mod: (New file). * gm2/pim/pass/procmod9.mod: (New file). * gm2/pim/pass/proctype.mod: (New file). * gm2/pim/pass/proctype2.def: (New file). * gm2/pim/pass/proctype3.mod: (New file). * gm2/pim/pass/proctype4.mod: (New file). * gm2/pim/pass/program.mod: (New file). * gm2/pim/pass/program2.mod: (New file). * gm2/pim/pass/ptrarray.mod: (New file). * gm2/pim/pass/ptrarray2.mod: (New file). * gm2/pim/pass/ptrarray3.mod: (New file). * gm2/pim/pass/ptrcard.mod: (New file). * gm2/pim/pass/quads.def: (New file). * gm2/pim/pass/quads.mod: (New file). * gm2/pim/pass/real.mod: (New file). * gm2/pim/pass/real2.mod: (New file). * gm2/pim/pass/real3.mod: (New file). * gm2/pim/pass/realconst.mod: (New file). * gm2/pim/pass/realneg.mod: (New file). * gm2/pim/pass/realneg2.mod: (New file). * gm2/pim/pass/realone.mod: (New file). * gm2/pim/pass/realsize.mod: (New file). * gm2/pim/pass/record1.mod: (New file). * gm2/pim/pass/record10.mod: (New file). * gm2/pim/pass/record11.mod: (New file). * gm2/pim/pass/record12.def: (New file). * gm2/pim/pass/record13.def: (New file). * gm2/pim/pass/record14.def: (New file). * gm2/pim/pass/record15.def: (New file). * gm2/pim/pass/record16.def: (New file). * gm2/pim/pass/record2.mod: (New file). * gm2/pim/pass/record3.mod: (New file). * gm2/pim/pass/record4.mod: (New file). * gm2/pim/pass/record5.mod: (New file). * gm2/pim/pass/record6.mod: (New file). * gm2/pim/pass/record7.mod: (New file). * gm2/pim/pass/record8.mod: (New file). * gm2/pim/pass/record9.mod: (New file). * gm2/pim/pass/recordarray.c: (New file). * gm2/pim/pass/recordarray.mod: (New file). * gm2/pim/pass/recordarray2.mod: (New file). * gm2/pim/pass/redef.mod: (New file). * gm2/pim/pass/set10.mod: (New file). * gm2/pim/pass/set11.def: (New file). * gm2/pim/pass/set11.mod: (New file). * gm2/pim/pass/set12.mod: (New file). * gm2/pim/pass/set4.mod: (New file). * gm2/pim/pass/set5.mod: (New file). * gm2/pim/pass/set6.mod: (New file). * gm2/pim/pass/set7.mod: (New file). * gm2/pim/pass/set8.mod: (New file). * gm2/pim/pass/set9.mod: (New file). * gm2/pim/pass/setchar.mod: (New file). * gm2/pim/pass/setchar10.mod: (New file). * gm2/pim/pass/setchar11.mod: (New file). * gm2/pim/pass/setchar3.mod: (New file). * gm2/pim/pass/setchar4.mod: (New file). * gm2/pim/pass/setchar5.mod: (New file). * gm2/pim/pass/setchar7.mod: (New file). * gm2/pim/pass/setchar8.mod: (New file). * gm2/pim/pass/setchar9.mod: (New file). * gm2/pim/pass/setconst.mod: (New file). * gm2/pim/pass/setconst2.mod: (New file). * gm2/pim/pass/setconst3.mod: (New file). * gm2/pim/pass/setenum.mod: (New file). * gm2/pim/pass/setimp.mod: (New file). * gm2/pim/pass/setimp2.mod: (New file). * gm2/pim/pass/setofchar.mod: (New file). * gm2/pim/pass/setoverflow.mod: (New file). * gm2/pim/pass/sets.mod: (New file). * gm2/pim/pass/sets2.mod: (New file). * gm2/pim/pass/sets3.mod: (New file). * gm2/pim/pass/sets4.mod: (New file). * gm2/pim/pass/sets5.mod: (New file). * gm2/pim/pass/sets6.mod: (New file). * gm2/pim/pass/setsnul.mod: (New file). * gm2/pim/pass/settest1.mod: (New file). * gm2/pim/pass/settest2.mod: (New file). * gm2/pim/pass/settest3.mod: (New file). * gm2/pim/pass/simpleproc.mod: (New file). * gm2/pim/pass/sizes.mod: (New file). * gm2/pim/pass/sizetype.mod: (New file). * gm2/pim/pass/smallset1.mod: (New file). * gm2/pim/pass/smallset2.mod: (New file). * gm2/pim/pass/smallset3.mod: (New file). * gm2/pim/pass/smallset4.mod: (New file). * gm2/pim/pass/smallset5.mod: (New file). * gm2/pim/pass/smallset6.mod: (New file). * gm2/pim/pass/smallset7.mod: (New file). * gm2/pim/pass/stabs.mod: (New file). * gm2/pim/pass/stdio.mod: (New file). * gm2/pim/pass/str1.mod: (New file). * gm2/pim/pass/str2.mod: (New file). * gm2/pim/pass/str3.mod: (New file). * gm2/pim/pass/str4.mod: (New file). * gm2/pim/pass/str5.mod: (New file). * gm2/pim/pass/stressset.mod: (New file). * gm2/pim/pass/stringassign.mod: (New file). * gm2/pim/pass/stringopaq.mod: (New file). * gm2/pim/pass/strings.mod: (New file). * gm2/pim/pass/strparam.def: (New file). * gm2/pim/pass/strparam.mod: (New file). * gm2/pim/pass/subrange.mod: (New file). * gm2/pim/pass/subrange10.mod: (New file). * gm2/pim/pass/subrange11.mod: (New file). * gm2/pim/pass/subrange12.mod: (New file). * gm2/pim/pass/subrange14.mod: (New file). * gm2/pim/pass/subrange15.mod: (New file). * gm2/pim/pass/subrange16.mod: (New file). * gm2/pim/pass/subrange17.mod: (New file). * gm2/pim/pass/subrange2.mod: (New file). * gm2/pim/pass/subrange3.mod: (New file). * gm2/pim/pass/subrange4.mod: (New file). * gm2/pim/pass/subrange5.mod: (New file). * gm2/pim/pass/subrange6.mod: (New file). * gm2/pim/pass/subrange7.mod: (New file). * gm2/pim/pass/subrange8.mod: (New file). * gm2/pim/pass/subrange9.mod: (New file). * gm2/pim/pass/test2recursive.mod: (New file). * gm2/pim/pass/testabs.mod: (New file). * gm2/pim/pass/testbuiltin.mod: (New file). * gm2/pim/pass/testbuiltin2.mod: (New file). * gm2/pim/pass/testbuiltstr.mod: (New file). * gm2/pim/pass/testcap.mod: (New file). * gm2/pim/pass/testcap2.mod: (New file). * gm2/pim/pass/testcard.mod: (New file). * gm2/pim/pass/testcard2.mod: (New file). * gm2/pim/pass/testcard3.mod: (New file). * gm2/pim/pass/testcard4.mod: (New file). * gm2/pim/pass/testcard5.mod: (New file). * gm2/pim/pass/testcase.mod: (New file). * gm2/pim/pass/testcase2.mod: (New file). * gm2/pim/pass/testcase3.mod: (New file). * gm2/pim/pass/testcase4.mod: (New file). * gm2/pim/pass/testchar.mod: (New file). * gm2/pim/pass/testfloat.mod: (New file). * gm2/pim/pass/testfloat2.mod: (New file). * gm2/pim/pass/testfloat3.mod: (New file). * gm2/pim/pass/testfloat4.mod: (New file). * gm2/pim/pass/testfor.mod: (New file). * gm2/pim/pass/testimpvar.mod: (New file). * gm2/pim/pass/testlong3.mod: (New file). * gm2/pim/pass/testmod.mod: (New file). * gm2/pim/pass/testmod2.mod: (New file). * gm2/pim/pass/testodd.mod: (New file). * gm2/pim/pass/testopaque.mod: (New file). * gm2/pim/pass/testopaque2.mod: (New file). * gm2/pim/pass/testopaque3.mod: (New file). * gm2/pim/pass/testord.mod: (New file). * gm2/pim/pass/testparam.mod: (New file). * gm2/pim/pass/testparam2.mod: (New file). * gm2/pim/pass/testparam3.mod: (New file). * gm2/pim/pass/testpimsize.mod: (New file). * gm2/pim/pass/testrecursive.def: (New file). * gm2/pim/pass/testrecursive.mod: (New file). * gm2/pim/pass/testreturnstr.mod: (New file). * gm2/pim/pass/testset.mod: (New file). * gm2/pim/pass/testshort.mod: (New file). * gm2/pim/pass/testsinf.mod: (New file). * gm2/pim/pass/testsinl.mod: (New file). * gm2/pim/pass/testsize.mod: (New file). * gm2/pim/pass/testvar.mod: (New file). * gm2/pim/pass/testvarin.mod: (New file). * gm2/pim/pass/timeio.mod: (New file). * gm2/pim/pass/timeio2.mod: (New file). * gm2/pim/pass/timeio3.mod: (New file). * gm2/pim/pass/timeio4.mod: (New file). * gm2/pim/pass/timeio5.mod: (New file). * gm2/pim/pass/timeio6.mod: (New file). * gm2/pim/pass/timeio7.mod: (New file). * gm2/pim/pass/timeio8.mod: (New file). * gm2/pim/pass/timeio9.mod: (New file). * gm2/pim/pass/tinyalloc.mod: (New file). * gm2/pim/pass/tinyarray.mod: (New file). * gm2/pim/pass/tinyarray2.mod: (New file). * gm2/pim/pass/tinyarray3.mod: (New file). * gm2/pim/pass/tinyarray4.mod: (New file). * gm2/pim/pass/tinyarray5.mod: (New file). * gm2/pim/pass/tinyarray6.mod: (New file). * gm2/pim/pass/tinyassign.def: (New file). * gm2/pim/pass/tinyassign.mod: (New file). * gm2/pim/pass/tinyassign2.mod: (New file). * gm2/pim/pass/tinyassign3.mod: (New file). * gm2/pim/pass/tinyassign4.mod: (New file). * gm2/pim/pass/tinyassign5.mod: (New file). * gm2/pim/pass/tinybitset.mod: (New file). * gm2/pim/pass/tinyelse.mod: (New file). * gm2/pim/pass/tinyenum.mod: (New file). * gm2/pim/pass/tinyfor.mod: (New file). * gm2/pim/pass/tinyfor2.mod: (New file). * gm2/pim/pass/tinyfor3.mod: (New file). * gm2/pim/pass/tinyhalt.mod: (New file). * gm2/pim/pass/tinyhello.mod: (New file). * gm2/pim/pass/tinyif.mod: (New file). * gm2/pim/pass/tinyif2.mod: (New file). * gm2/pim/pass/tinyif3.mod: (New file). * gm2/pim/pass/tinyif4.mod: (New file). * gm2/pim/pass/tinyif5.mod: (New file). * gm2/pim/pass/tinyif6.mod: (New file). * gm2/pim/pass/tinyif7.mod: (New file). * gm2/pim/pass/tinyif8.mod: (New file). * gm2/pim/pass/tinyimp.mod: (New file). * gm2/pim/pass/tinylit.mod: (New file). * gm2/pim/pass/tinylit2.mod: (New file). * gm2/pim/pass/tinymax.mod: (New file). * gm2/pim/pass/tinymod.mod: (New file). * gm2/pim/pass/tinynode.mod: (New file). * gm2/pim/pass/tinyparam.mod: (New file). * gm2/pim/pass/tinyparam2.mod: (New file). * gm2/pim/pass/tinyplus.mod: (New file). * gm2/pim/pass/tinyproc.mod: (New file). * gm2/pim/pass/tinyproc2.mod: (New file). * gm2/pim/pass/tinyproc3.mod: (New file). * gm2/pim/pass/tinyproc4.mod: (New file). * gm2/pim/pass/tinyproc5.mod: (New file). * gm2/pim/pass/tinyproc6.mod: (New file). * gm2/pim/pass/tinyptr.mod: (New file). * gm2/pim/pass/tinyreal.mod: (New file). * gm2/pim/pass/tinyrecord.mod: (New file). * gm2/pim/pass/tinyrepeat.mod: (New file). * gm2/pim/pass/tinyset6.mod: (New file). * gm2/pim/pass/tinyset7.mod: (New file). * gm2/pim/pass/tinystate.mod: (New file). * gm2/pim/pass/tinysub.def: (New file). * gm2/pim/pass/tinytest.mod: (New file). * gm2/pim/pass/tinytrue.mod: (New file). * gm2/pim/pass/tinyvar.mod: (New file). * gm2/pim/pass/tinyvar2.mod: (New file). * gm2/pim/pass/tinyvar3.mod: (New file). * gm2/pim/pass/tinyvar4.mod: (New file). * gm2/pim/pass/tinyvar5.mod: (New file). * gm2/pim/pass/tinyvarient.mod: (New file). * gm2/pim/pass/tinyvarient2.mod: (New file). * gm2/pim/pass/tinyvarient3.def: (New file). * gm2/pim/pass/tinyvarient3.mod: (New file). * gm2/pim/pass/tinyvarient4.mod: (New file). * gm2/pim/pass/tinyvarient5.mod: (New file). * gm2/pim/pass/tinyvarient6.mod: (New file). * gm2/pim/pass/tinywhile.mod: (New file). * gm2/pim/pass/tinywith.mod: (New file). * gm2/pim/pass/tinywith2.mod: (New file). * gm2/pim/pass/tinywith3.mod: (New file). * gm2/pim/pass/tinywith4.mod: (New file). * gm2/pim/pass/tinywith5.mod: (New file). * gm2/pim/pass/tinywith6.mod: (New file). * gm2/pim/pass/trunc.mod: (New file). * gm2/pim/pass/try: (New file). * gm2/pim/pass/typeequiv.mod: (New file). * gm2/pim/pass/typeequiv2.mod: (New file). * gm2/pim/pass/typeequiv3.mod: (New file). * gm2/pim/pass/typeonly.def: (New file). * gm2/pim/pass/typeonly.mod: (New file). * gm2/pim/pass/typesize.mod: (New file). * gm2/pim/pass/unbounded.mod: (New file). * gm2/pim/pass/unbounded2.mod: (New file). * gm2/pim/pass/unbounded3.mod: (New file). * gm2/pim/pass/v.def: (New file). * gm2/pim/pass/varaddress.mod: (New file). * gm2/pim/pass/varaddress2.mod: (New file). * gm2/pim/pass/varaddress3.mod: (New file). * gm2/pim/pass/varcard.mod: (New file). * gm2/pim/pass/variant9.mod: (New file). * gm2/pim/pass/varient.mod: (New file). * gm2/pim/pass/varient2.mod: (New file). * gm2/pim/pass/varient3.mod: (New file). * gm2/pim/pass/varient4.mod: (New file). * gm2/pim/pass/varient5.mod: (New file). * gm2/pim/pass/varient6.mod: (New file). * gm2/pim/pass/varient7.mod: (New file). * gm2/pim/pass/varient8.mod: (New file). * gm2/pim/pass/varin.def: (New file). * gm2/pim/pass/varin.mod: (New file). * gm2/pim/pass/varint.mod: (New file). * gm2/pim/pass/wincat.mod: (New file). * gm2/pim/pass/with.mod: (New file). * gm2/pim/pass/wordconst.mod: (New file). * gm2/pim/run/fail/case.mod: (New file). * gm2/pim/run/fail/nil.mod: (New file). * gm2/pim/run/fail/pim-run-fail.exp: (New file). * gm2/pim/run/pass/Countdown.mod: (New file). * gm2/pim/run/pass/EndFor.def: (New file). * gm2/pim/run/pass/EndFor.mod: (New file). * gm2/pim/run/pass/EnumTest.mod: (New file). * gm2/pim/run/pass/For1.mod: (New file). * gm2/pim/run/pass/For10.mod: (New file). * gm2/pim/run/pass/For11.mod: (New file). * gm2/pim/run/pass/For12.mod: (New file). * gm2/pim/run/pass/For2.mod: (New file). * gm2/pim/run/pass/For3.mod: (New file). * gm2/pim/run/pass/For4.mod: (New file). * gm2/pim/run/pass/For5.mod: (New file). * gm2/pim/run/pass/For6.mod: (New file). * gm2/pim/run/pass/For7.mod: (New file). * gm2/pim/run/pass/For8.mod: (New file). * gm2/pim/run/pass/For9.mod: (New file). * gm2/pim/run/pass/FpuIOBug.mod: (New file). * gm2/pim/run/pass/MaxReal.mod: (New file). * gm2/pim/run/pass/MaxReal2.mod: (New file). * gm2/pim/run/pass/TestLong.mod: (New file). * gm2/pim/run/pass/TestLong2.mod: (New file). * gm2/pim/run/pass/TestLong4.mod: (New file). * gm2/pim/run/pass/TestLong5.mod: (New file). * gm2/pim/run/pass/addrarray.mod: (New file). * gm2/pim/run/pass/arraychar.mod: (New file). * gm2/pim/run/pass/arraychar2.mod: (New file). * gm2/pim/run/pass/arrayrecord.mod: (New file). * gm2/pim/run/pass/bitsettest.def: (New file). * gm2/pim/run/pass/bitsettest.mod: (New file). * gm2/pim/run/pass/bytearray.mod: (New file). * gm2/pim/run/pass/constdynstr.mod: (New file). * gm2/pim/run/pass/conststr.mod: (New file). * gm2/pim/run/pass/conststr2.mod: (New file). * gm2/pim/run/pass/cycles.mod: (New file). * gm2/pim/run/pass/dec.mod: (New file). * gm2/pim/run/pass/enums.mod: (New file). * gm2/pim/run/pass/incsubrange.def: (New file). * gm2/pim/run/pass/incsubrange.mod: (New file). * gm2/pim/run/pass/index3.mod: (New file). * gm2/pim/run/pass/int16.mod: (New file). * gm2/pim/run/pass/int32.mod: (New file). * gm2/pim/run/pass/int8.mod: (New file). * gm2/pim/run/pass/line.mod: (New file). * gm2/pim/run/pass/long.mod: (New file). * gm2/pim/run/pass/longfor.mod: (New file). * gm2/pim/run/pass/longtypes10.mod: (New file). * gm2/pim/run/pass/longtypes7.mod: (New file). * gm2/pim/run/pass/longtypes8.mod: (New file). * gm2/pim/run/pass/longtypes9.mod: (New file). * gm2/pim/run/pass/math.mod: (New file). * gm2/pim/run/pass/math2.mod: (New file). * gm2/pim/run/pass/mathconst.mod: (New file). * gm2/pim/run/pass/minhello.mod: (New file). * gm2/pim/run/pass/minimal.mod: (New file). * gm2/pim/run/pass/nestedproc.mod: (New file). * gm2/pim/run/pass/nestedproc2.mod: (New file). * gm2/pim/run/pass/nestedproc3.mod: (New file). * gm2/pim/run/pass/nestedproc4.mod: (New file). * gm2/pim/run/pass/nestedproc5.mod: (New file). * gm2/pim/run/pass/nestedproc6.mod: (New file). * gm2/pim/run/pass/nestedproc7.mod: (New file). * gm2/pim/run/pass/nestedwith.mod: (New file). * gm2/pim/run/pass/nestedwith2.mod: (New file). * gm2/pim/run/pass/nestedwith3.mod: (New file). * gm2/pim/run/pass/nothing.mod: (New file). * gm2/pim/run/pass/pim-run-pass.exp: (New file). * gm2/pim/run/pass/prog31ex.mod: (New file). * gm2/pim/run/pass/rts.mod: (New file). * gm2/pim/run/pass/setcritical.mod: (New file). * gm2/pim/run/pass/setequiv.mod: (New file). * gm2/pim/run/pass/str6.mod: (New file). * gm2/pim/run/pass/stringaddr.mod: (New file). * gm2/pim/run/pass/stringaddr2.def: (New file). * gm2/pim/run/pass/stringaddr2.mod: (New file). * gm2/pim/run/pass/stripped.mod: (New file). * gm2/pim/run/pass/sys.def: (New file). * gm2/pim/run/pass/sys.mod: (New file). * gm2/pim/run/pass/t.def: (New file). * gm2/pim/run/pass/testaddr.mod: (New file). * gm2/pim/run/pass/testaddr2.mod: (New file). * gm2/pim/run/pass/testaddr3.mod: (New file). * gm2/pim/run/pass/testarray.mod: (New file). * gm2/pim/run/pass/testarray2.mod: (New file). * gm2/pim/run/pass/testarray3.mod: (New file). * gm2/pim/run/pass/testarray4.mod: (New file). * gm2/pim/run/pass/testarray5.mod: (New file). * gm2/pim/run/pass/testavail.mod: (New file). * gm2/pim/run/pass/testdiv.mod: (New file). * gm2/pim/run/pass/testfpufunc.mod: (New file). * gm2/pim/run/pass/testfpufunc2.mod: (New file). * gm2/pim/run/pass/testlarge.mod: (New file). * gm2/pim/run/pass/testlarge2.mod: (New file). * gm2/pim/run/pass/testnextproc.mod: (New file). * gm2/pim/run/pass/testparam.mod: (New file). * gm2/pim/run/pass/testreturnstr.mod: (New file). * gm2/pim/run/pass/testreturnstr2.mod: (New file). * gm2/pim/run/pass/testreturnstr3.def: (New file). * gm2/pim/run/pass/testreturnstr3.mod: (New file). * gm2/pim/run/pass/testsize.mod: (New file). * gm2/pim/run/pass/testsize2.mod: (New file). * gm2/pim/run/pass/testsize3.mod: (New file). * gm2/pim/run/pass/testsize4.mod: (New file). * gm2/pim/run/pass/testtbitsize.mod: (New file). * gm2/pim/run/pass/tinywith.mod: (New file). * gm2/pim/run/pass/unbounded.mod: (New file). * gm2/pim/run/pass/varaddress3.mod: (New file). * gm2/pim/run/pass/varparam2.mod: (New file). * gm2/pim/run/pass/varparam3.mod: (New file). * gm2/pim/run/pass/varparm.mod: (New file). * gm2/pim/run/pass/wr.mod: (New file). * gm2/pimcoroutines/pass/imports.mod: (New file). * gm2/pimcoroutines/pass/imports2.mod: (New file). * gm2/pimcoroutines/pass/pimcoroutines-pass.exp: (New file). * gm2/pimcoroutines/run/pass/pimcoroutines-run-pass.exp: (New file). * gm2/pimcoroutines/run/pass/testtime.mod: (New file). * gm2/pimlib/base/run/pass/FIO.mod: (New file). * gm2/pimlib/base/run/pass/StrLib.mod: (New file). * gm2/pimlib/base/run/pass/pimlib-base-run-pass.exp: (New file). * gm2/pimlib/base/run/pass/testconvert.mod: (New file). * gm2/pimlib/coroutines/pass/pimlib-coroutines-pass.exp: (New file). * gm2/pimlib/coroutines/pass/priority.mod: (New file). * gm2/pimlib/coroutines/pass/priority2.mod: (New file). * gm2/pimlib/coroutines/pass/priority3.def: (New file). * gm2/pimlib/coroutines/pass/priority3.mod: (New file). * gm2/pimlib/logitech/pass/LogitechLong.mod: (New file). * gm2/pimlib/logitech/pass/hello.mod: (New file). * gm2/pimlib/logitech/pass/pimlib-logitech-pass.exp: (New file). * gm2/pimlib/logitech/run/pass/bbits.mod: (New file). * gm2/pimlib/logitech/run/pass/hello.mod: (New file). * gm2/pimlib/logitech/run/pass/helloinout.mod: (New file). * gm2/pimlib/logitech/run/pass/intb.mod: (New file). * gm2/pimlib/logitech/run/pass/pimlib-logitech-run-pass.exp: (New file). * gm2/pimlib/logitech/run/pass/realconv.mod: (New file). * gm2/pimlib/logitech/run/pass/realinput.mod: (New file). * gm2/pimlib/logitech/run/pass/realinput2.mod: (New file). * gm2/pimlib/logitech/run/pass/realinput3.mod: (New file). * gm2/pimlib/logitech/run/pass/rename.mod: (New file). * gm2/pimlib/logitech/run/pass/timedate.mod: (New file). * gm2/pimlib/logitech/run/pass/writeoct.mod: (New file). * gm2/pimlib/pass/pimlib-pass.exp: (New file). * gm2/pimlib/run/pass/format.mod: (New file). * gm2/pimlib/run/pass/limittests.c: (New file). * gm2/pimlib/run/pass/limittests.mod: (New file). * gm2/pimlib/run/pass/longreal.mod: (New file). * gm2/pimlib/run/pass/pimlib-run-pass.exp: (New file). * gm2/pimlib/run/pass/test.c: (New file). * gm2/pimlib/run/pass/testreal.mod: (New file). * gm2/pimlib/run/pass/testreal2.mod: (New file). * gm2/pimlib/run/pass/testreal4.mod: (New file). * gm2/projects/README: (New file). * gm2/projects/iso/run/pass/halma/halma.mod: (New file). * gm2/projects/iso/run/pass/halma/projects-iso-run-pass-halma.exp: (New file). * gm2/projects/iso/run/pass/hello/hello.mod: (New file). * gm2/projects/iso/run/pass/hello/projects-iso-run-pass-hello.exp: (New file). * gm2/projects/log/run/pass/hello/hello.mod: (New file). * gm2/projects/log/run/pass/hello/projects-log-run-pass-hello.exp: (New file). * gm2/projects/pim/run/pass/hello/hello.mod: (New file). * gm2/projects/pim/run/pass/hello/projects-pim-run-pass-hello.exp: (New file). * gm2/projects/pim/run/pass/random/AdvMap.def: (New file). * gm2/projects/pim/run/pass/random/AdvMap.mod: (New file). * gm2/projects/pim/run/pass/random/BoxMap.def: (New file). * gm2/projects/pim/run/pass/random/BoxMap.mod: (New file). * gm2/projects/pim/run/pass/random/Chance.def: (New file). * gm2/projects/pim/run/pass/random/Chance.mod: (New file). * gm2/projects/pim/run/pass/random/Geometry.def: (New file). * gm2/projects/pim/run/pass/random/Geometry.mod: (New file). * gm2/projects/pim/run/pass/random/MakeBoxes.def: (New file). * gm2/projects/pim/run/pass/random/MakeBoxes.mod: (New file). * gm2/projects/pim/run/pass/random/Map.mod: (New file). * gm2/projects/pim/run/pass/random/MapOptions.def: (New file). * gm2/projects/pim/run/pass/random/MapOptions.mod: (New file). * gm2/projects/pim/run/pass/random/Options.def: (New file). * gm2/projects/pim/run/pass/random/Options.mod: (New file). * gm2/projects/pim/run/pass/random/RoomMap.def: (New file). * gm2/projects/pim/run/pass/random/RoomMap.mod: (New file). * gm2/projects/pim/run/pass/random/StoreCoords.def: (New file). * gm2/projects/pim/run/pass/random/StoreCoords.mod: (New file). * gm2/projects/pim/run/pass/random/WriteMap.def: (New file). * gm2/projects/pim/run/pass/random/WriteMap.mod: (New file). * gm2/projects/pim/run/pass/random/projects-pim-run-pass-random.exp: (New file). * gm2/quads/run/pass/becomes.mod: (New file). * gm2/quads/run/pass/param.mod: (New file). * gm2/quads/run/pass/quads-run-pass.exp: (New file). * gm2/quads/run/pass/return.mod: (New file). * gm2/recover/pass/cannot-solve/begin.mod: (New file). * gm2/recover/pass/cannot-solve/statementsemi.mod: (New file). * gm2/recover/pass/end2.mod: (New file). * gm2/recover/pass/of.mod: (New file). * gm2/recover/pass/procsemi.mod: (New file). * gm2/recover/pass/recover-pass.exp: (New file). * gm2/recover/pass/rrbra.mod: (New file). * gm2/recover/pass/rsbra.mod: (New file). * gm2/recover/pass/semi.mod: (New file). * gm2/run/fail/list.mod: (New file). * gm2/run/fail/options: (New file). * gm2/run/fail/testdec.mod: (New file). * gm2/run/fail/testfunc.mod: (New file). * gm2/run/pass/cycles.mod: (New file). * gm2/run/pass/line.mod: (New file). * gm2/run/pass/nestedproc.mod: (New file). * gm2/run/pass/nestedproc2.mod: (New file). * gm2/run/pass/nestedproc3.mod: (New file). * gm2/run/pass/nestedproc5.mod: (New file). * gm2/run/pass/nestedset.mod: (New file). * gm2/run/pass/nothing.mod: (New file). * gm2/run/pass/options: (New file). * gm2/run/pass/prog31ex.mod: (New file). * gm2/run/pass/rts.mod: (New file). * gm2/run/pass/stripped.mod: (New file). * gm2/run/pass/testavail.mod: (New file). * gm2/run/pass/testfpufunc.mod: (New file). * gm2/run/pass/testfpufunc2.mod: (New file). * gm2/run/pass/testnextproc.mod: (New file). * gm2/run/pass/testparam.mod: (New file). * gm2/run/pass/testsize.mod: (New file). * gm2/run/pass/testsize2.mod: (New file). * gm2/run/pass/testsize3.mod: (New file). * gm2/run/pass/wr.mod: (New file). * gm2/scripts/addit: (New file). * gm2/scripts/comp: (New file). * gm2/scripts/compile: (New file). * gm2/scripts/compileiso: (New file). * gm2/scripts/link: (New file). * gm2/scripts/regression: (New file). * gm2/scripts/subit: (New file). * gm2/sets/run/pass/multisetarith.mod: (New file). * gm2/sets/run/pass/multisetarith2.mod: (New file). * gm2/sets/run/pass/multisetarith3.mod: (New file). * gm2/sets/run/pass/multisetarith4.mod: (New file). * gm2/sets/run/pass/multisetrotate.mod: (New file). * gm2/sets/run/pass/multisetrotate2.mod: (New file). * gm2/sets/run/pass/multisetrotate3.mod: (New file). * gm2/sets/run/pass/multisetrotate4.mod: (New file). * gm2/sets/run/pass/multisetshift.mod: (New file). * gm2/sets/run/pass/multisetshift2.mod: (New file). * gm2/sets/run/pass/multisimple.mod: (New file). * gm2/sets/run/pass/multisimple2.mod: (New file). * gm2/sets/run/pass/multisimple3.mod: (New file). * gm2/sets/run/pass/multisimple4.mod: (New file). * gm2/sets/run/pass/multisimple5.mod: (New file). * gm2/sets/run/pass/multisimple6.mod: (New file). * gm2/sets/run/pass/multisimple7.mod: (New file). * gm2/sets/run/pass/setarith.mod: (New file). * gm2/sets/run/pass/setarith2.mod: (New file). * gm2/sets/run/pass/setarith3.mod: (New file). * gm2/sets/run/pass/setarith4.mod: (New file). * gm2/sets/run/pass/setrotate.mod: (New file). * gm2/sets/run/pass/setrotate2.mod: (New file). * gm2/sets/run/pass/setrotate3.mod: (New file). * gm2/sets/run/pass/setrotate4.mod: (New file). * gm2/sets/run/pass/sets-run-pass.exp: (New file). * gm2/sets/run/pass/setshift.mod: (New file). * gm2/sets/run/pass/setshift2.mod: (New file). * gm2/sets/run/pass/simple.mod: (New file). * gm2/sets/run/pass/simple2.mod: (New file). * gm2/sets/run/pass/simple3.mod: (New file). * gm2/sets/run/pass/simple4.mod: (New file). * gm2/sets/run/pass/simple5.mod: (New file). * gm2/sets/run/pass/simple6.mod: (New file). * gm2/sets/run/pass/simple7.mod: (New file). * gm2/switches/auto-init/fail/switches-auto-init-fail.exp: (New file). * gm2/switches/auto-init/fail/uninitptr.mod: (New file). * gm2/switches/auto-init/fail/uninitptr2.mod: (New file). * gm2/switches/check-all/pim2/fail/overflow.mod: (New file). * gm2/switches/check-all/pim2/fail/overflow2.mod: (New file). * gm2/switches/check-all/pim2/fail/overflowdiv1.mod: (New file). * gm2/switches/check-all/pim2/fail/switches-check-all-pim2-fail.exp: (New file). * gm2/switches/check-all/plugin/iso/fail/divceilposneg.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/divceilposneg2.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/divceilposnegcall.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/divceilposnegcall2.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/divfloornegpos.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/divfloorpospos.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/lowdiv.mod: (New file). * gm2/switches/check-all/plugin/iso/fail/switches-check-all-plugin-iso-fail.exp: (New file). * gm2/switches/check-all/plugin/pim2/fail/divceil.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/highdiv.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/modulus.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin1.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin3.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin4.def: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin4.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin5.def: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin5.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin6.def: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin6.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin7.def: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin7.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin8.def: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin8.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/plugin9.mod: (New file). * gm2/switches/check-all/plugin/pim2/fail/switches-check-all-plugin-pim2-fail.exp: (New file). * gm2/switches/check-all/run/fail/cardrange.mod: (New file). * gm2/switches/check-all/run/fail/cardrange2.mod: (New file). * gm2/switches/check-all/run/fail/cardrange3.mod: (New file). * gm2/switches/check-all/run/fail/intrange.mod: (New file). * gm2/switches/check-all/run/fail/intrange2.mod: (New file). * gm2/switches/check-all/run/fail/intrange3.mod: (New file). * gm2/switches/check-all/run/fail/intrange4.mod: (New file). * gm2/switches/check-all/run/fail/intrange5.mod: (New file). * gm2/switches/check-all/run/fail/multint1.mod: (New file). * gm2/switches/check-all/run/fail/multint2.mod: (New file). * gm2/switches/check-all/run/fail/multint3.mod: (New file). * gm2/switches/check-all/run/fail/rangesupport.def: (New file). * gm2/switches/check-all/run/fail/rangesupport.mod: (New file). * gm2/switches/check-all/run/fail/realrange.mod: (New file). * gm2/switches/check-all/run/fail/subrange.mod: (New file). * gm2/switches/check-all/run/fail/switches-check-all-run-fail.exp: (New file). * gm2/switches/check-all/run/fail/tinyrange.mod: (New file). * gm2/switches/check-all/run/pass/cardrange.mod: (New file). * gm2/switches/check-all/run/pass/forcheck.mod: (New file). * gm2/switches/check-all/run/pass/subrange.mod: (New file). * gm2/switches/check-all/run/pass/switches-check-all-run-pass.exp: (New file). * gm2/switches/extended-opaque/fail/a.def: (New file). * gm2/switches/extended-opaque/fail/a.mod: (New file). * gm2/switches/extended-opaque/fail/switches-extended-opaque-fail.exp: (New file). * gm2/switches/extended-opaque/pass/a.def: (New file). * gm2/switches/extended-opaque/pass/a.mod: (New file). * gm2/switches/extended-opaque/pass/b.mod: (New file). * gm2/switches/extended-opaque/pass/switches-extended-opaque-pass.exp: (New file). * gm2/switches/iso/run/pass/modulus.mod: (New file). * gm2/switches/iso/run/pass/modulus4.mod: (New file). * gm2/switches/iso/run/pass/switches-iso-run-pass.exp: (New file). * gm2/switches/makeall/fail/switches-makeall-fail.exp: (New file). * gm2/switches/makeall/fail/test.def: (New file). * gm2/switches/makeall/fail/test.mod: (New file). * gm2/switches/makeall/pass/switches-makeall-pass.exp: (New file). * gm2/switches/makeall/pass/test.def: (New file). * gm2/switches/makeall/pass/test.mod: (New file). * gm2/switches/none/run/pass/gm2-none.exp: (New file). * gm2/switches/none/run/pass/hello.mod: (New file). * gm2/switches/optimization/run/pass/fact.mod: (New file). * gm2/switches/optimization/run/pass/switches-optimization-run-pass.exp: (New file). * gm2/switches/pedantic-params/fail/a.def: (New file). * gm2/switches/pedantic-params/fail/a.mod: (New file). * gm2/switches/pedantic-params/fail/switches-pedantic-params-fail.exp: (New file). * gm2/switches/pedantic-params/pass/Strings.def: (New file). * gm2/switches/pedantic-params/pass/Strings.mod: (New file). * gm2/switches/pedantic-params/pass/Strings2.def: (New file). * gm2/switches/pedantic-params/pass/Strings2.mod: (New file). * gm2/switches/pedantic-params/pass/switches-pedantic-params-pass.exp: (New file). * gm2/switches/pedantic/fail/onlywrite.mod: (New file). * gm2/switches/pedantic/fail/readb4.mod: (New file). * gm2/switches/pic/run/pass/func.c: (New file). * gm2/switches/pic/run/pass/func.mod: (New file). * gm2/switches/pic/run/pass/func2.c: (New file). * gm2/switches/pic/run/pass/func2.mod: (New file). * gm2/switches/pic/run/pass/switches-pic-run-pass.exp: (New file). * gm2/switches/pim2/run/pass/modulus.mod: (New file). * gm2/switches/pim2/run/pass/switches-pim2-run-pass.exp: (New file). * gm2/switches/pim3/run/pass/modulus.mod: (New file). * gm2/switches/pim3/run/pass/switches-pim3-run-pass.exp: (New file). * gm2/switches/pim4/run/pass/FpuIOBug.mod: (New file). * gm2/switches/pim4/run/pass/InOutBug.mod: (New file). * gm2/switches/pim4/run/pass/NumberIOBug.mod: (New file). * gm2/switches/pim4/run/pass/modulus.mod: (New file). * gm2/switches/pim4/run/pass/modulus2.mod: (New file). * gm2/switches/pim4/run/pass/switches-pim4-run-pass.exp: (New file). * gm2/switches/whole-program/pass/run/hello.mod: (New file). * gm2/switches/whole-program/pass/run/hello2.mod: (New file). * gm2/switches/whole-program/pass/run/switches-whole-program-pass-run.exp: (New file). * gm2/switches/whole-program/pass/run/tiny.mod: (New file). * gm2/switches/whole-program/pass/run/tiny2.mod: (New file). * gm2/types/bitset.mod: (New file). * gm2/types/bitset2.mod: (New file). * gm2/types/bitset3.mod: (New file). * gm2/types/charset.mod: (New file). * gm2/types/const.mod: (New file). * gm2/types/prog35.mod: (New file). * gm2/types/real.mod: (New file). * gm2/types/run/pass/d.c: (New file). * gm2/types/run/pass/d.def: (New file). * gm2/types/run/pass/types-run-pass.exp: (New file). * gm2/types/run/pass/varient4.mod: (New file). * gm2/types/run/pass/varient5.mod: (New file). * gm2/types/string.mod: (New file). * gm2/types/type1.mod: (New file). * gm2/types/type2.mod: (New file). * gm2/types/type3.mod: (New file). * gm2/types/type4.mod: (New file). * gm2/types/varient.mod: (New file). * gm2/types/word.mod: (New file). * gm2/ulmlib/pass/ulmlib-pass.exp: (New file). * gm2/ulmlib/std/pass/ulmlib-std-pass.exp: (New file). * gm2/ulmlib/sys/pass/ulmlib-sys-pass.exp: (New file). * gm2/warnings/todo/nestedproc6.mod: (New file). * gm2/warnings/todo/options: (New file). * gm2/warnings/todo/testfor.mod: (New file). * gm2/warnings/todo/testfor2.mod: (New file). * gm2/warnings/todo/testfor3.mod: (New file). * gm2/warnings/todo/testkeywords.mod: (New file). * gm2/warnings/todo/testloop.mod: (New file). * gm2/warnings/todo/testscope.mod: (New file). * gm2/warnings/todo/testscope2.mod: (New file). * gm2/x86-asm/asm.mod: (New file). * gm2/x86-asm/asm2.mod: (New file). Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com> |
||
|
330b9a8d87 |
OpenMP: Duplicate checking for map clauses in Fortran (PR107214)
This patch adds duplicate checking for OpenMP "map" clauses, taking some cues from the implementation for C in c-typeck.cc:c_finish_omp_clauses (and similar for C++). In addition to the existing use of the "mark" and "comp_mark" bitfields in the gfc_symbol structure, the patch adds several new bits handling duplicate checking within various categories of clause types. If "mark" is being used for map clauses, we need to use different bits for other clauses for cases where "map" and some other clause can refer to the same symbol (e.g. "map(n) shared(n)"). 2022-12-06 Julian Brown <julian@codesourcery.com> gcc/fortran/ PR fortran/107214 * gfortran.h (gfc_symbol): Add data_mark, dev_mark, gen_mark and reduc_mark bitfields. * openmp.cc (resolve_omp_clauses): Use above bitfields to improve duplicate clause detection. gcc/testsuite/ PR fortran/107214 * gfortran.dg/gomp/pr107214.f90: New test. * gfortran.dg/gomp/pr107214-2.f90: New test. * gfortran.dg/gomp/pr107214-3.f90: New test. * gfortran.dg/gomp/pr107214-4.f90: New test. * gfortran.dg/gomp/pr107214-5.f90: New test. * gfortran.dg/gomp/pr107214-6.f90: New test. * gfortran.dg/gomp/pr107214-7.f90: New test. * gfortran.dg/gomp/pr107214-8.f90: New test. |
||
|
9316ad3b43 |
OpenMP/Fortran: Combined directives with map/firstprivate of same symbol
This patch fixes a case where a combined directive (e.g. "!$omp target parallel ...") contains both a map and a firstprivate clause for the same variable. When the combined directive is split into two nested directives, the outer "target" gets the "map" clause, and the inner "parallel" gets the "firstprivate" clause, like so: !$omp target parallel map(x) firstprivate(x) --> !$omp target map(x) !$omp parallel firstprivate(x) ... When there is no map of the same variable, the firstprivate is distributed to both directives, e.g. for 'y' in: !$omp target parallel map(x) firstprivate(y) --> !$omp target map(x) firstprivate(y) !$omp parallel firstprivate(y) ... This is not a recent regression, but appear to fix a long-standing ICE. (The included testcase is based on one by Tobias.) 2022-12-06 Julian Brown <julian@codesourcery.com> gcc/fortran/ * trans-openmp.cc (gfc_add_firstprivate_if_unmapped): New function. (gfc_split_omp_clauses): Call above. libgomp/ * testsuite/libgomp.fortran/combined-directive-splitting-1.f90: New test. |
||
|
881c6cabce |
libstdc++: Fix size passed to operator delete [PR108097]
The number of elements gets stored in _M_capacity so use a separate variable for the number of bytes to allocate. libstdc++-v3/ChangeLog: PR libstdc++/108097 * include/std/stacktrace (basic_stracktrace::_Impl): Do not multiply N by sizeof(value_type) when allocating. |
||
|
049dccd080
|
ipa-sra: Fix parameter description.
Somehow I made the description of the parameter almost the opposite of what I wanted to say. Fixed by this patch. Tested by building gcc on x86_64-linux and make info and make pdf. gcc/ChangeLog: 2022-12-14 Martin Jambor <mjambor@suse.cz> * doc/invoke.texi (ipa-sra-ptrwrap-growth-factor): Fix the description. * params.opt (ipa-sra-ptrwrap-growth-factor): Likewise. |
||
|
8c2451ba46 |
AArch64: div-by-255, ensure that arguments are registers. [PR107988]
At -O0 (as opposed to e.g. volatile) we can get into the situation where the in0 and result RTL arguments passed to the division function are memory locations instead of registers. I think we could reject these early on by checking that the gimple values are GIMPLE registers, but I think it's better to handle it. As such I force them to registers and emit a move to the memory locations and leave it up to reload to handle. This fixes the ICE and still allows the optimization in these cases, which improves the code quality a lot. gcc/ChangeLog: PR target/107988 * config/aarch64/aarch64.cc (aarch64_vectorize_can_special_div_by_constant): Ensure input and output RTL are registers. gcc/testsuite/ChangeLog: PR target/107988 * gcc.target/aarch64/pr107988-1.c: New test. |
||
|
81f86cb969 |
contrib: add copyright for my scripts
contrib/ChangeLog: * analyze_brprob.py: Add copyright header. * analyze_brprob_spec.py: Likewise. * check-params-in-docs.py: Likewise. * check_GNU_style.py: Likewise. * check_GNU_style_lib.py: Likewise. * filter-clang-warnings.py: Likewise. * gcc-changelog/git_check_commit.py: Likewise. * gcc-changelog/git_commit.py: Likewise. * gcc-changelog/git_email.py: Likewise. * gcc-changelog/git_repository.py: Likewise. * gcc-changelog/git_update_version.py: Likewise. * gcc-changelog/test_email.py: Likewise. * mark_spam.py: Likewise. |
||
|
95dc11475d |
rust: Fix up aarch64-linux bootstrap [PR106072]
Bootstrap fails on aarch64-linux and some other arches with: .../gcc/rust/parse/rust-parse-impl.h: In member function ‘Rust::AST::ClosureParam Rust::Parser<ManagedTokenSource>::parse_closure_param() [with ManagedTokenSource = Rust::Lexer]’: .../gcc/rust/parse/rust-parse-impl.h:8916:49: error: ‘this’ pointer is null [-Werror=nonnull] The problem is that while say on x86_64-linux the side-effects in the arguments are evaluated from last argument to first, on aarch64-linux it is the other way around, from first to last. The C++ I believe even in C++17 makes the evaluation of those side-effects unordered (indeterminately sequenced with no interleaving), so that is fine. But, when the call in return statement is evaluated from first to last, std::move (pattern) happens before pattern->get_locus () and the former will make pattern (std::unique_ptr) a wrapper object around nullptr, so dereferencing it later to call get_locus () on it is invalid. 2022-12-14 Jakub Jelinek <jakub@redhat.com> PR rust/106072 * parse/rust-parse-impl.h (parse_closure_param): Store pattern->get_locus () in a temporary before std::move (pattern) is invoked. |
||
|
e165214777 |
mklog: do not depend on recent unidiff version
contrib/ChangeLog: * mklog.py: Check for number of hunks and not if a modified file is binary. |
||
|
693638252a |
docs: document --param=ipa-sra-ptrwrap-growth-factor
gcc/ChangeLog: * doc/invoke.texi: Document ipa-sra-ptrwrap-growth-factor. |
||
|
d3fee43fb3 |
tree-optimization/107617 - big-endian .LEN_STORE VN
The following fixes a mistake in interpreting .LEN_STORE definitions during value-numbering when in big-endian mode. We cannot offset the encoding of the RHS but instead encode to an offsetted position which is then treated correctly by the endian aware copying code. PR tree-optimization/107617 * tree-ssa-sccvn.cc (vn_walk_cb_data::push_partial_def): Handle negative pd.rhs_off. (vn_reference_lookup_3): Properly provide pd.rhs_off for .LEN_STORE on big-endian targets. |
||
|
512098a331 |
libgccjit: Allow comparing vector types
gcc/jit/ChangeLog: PR jit/108078 * jit-recording.h: Add vector_type::is_same_type_as method gcc/testsuite/ChangeLog: PR jit/108078 * jit.dg/test-vector-types.cc: Add tests for vector type comparison Co-authored-by: Guillaume Gomez <guillaume1.gomez@gmail.com> Signed-off-by: Guillaume Gomez <guillaume1.gomez@gmail.com> |
||
|
f17ddf2c48 | Daily bump. | ||
|
8a263116d4
|
ipa: Avoid looking for IPA-SRA replacements where there are none
While modifying the code, I realized that we do look into statements even when there are no replacements. This patch adds the necessary early bail-outs to avoid that. ipa_param_body_adjustments::modify_call_stmt cannot have the same at the very beginning because calls can still contain otherwise removed parameters that need to be removed from the statements too. gcc/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * ipa-param-manipulation.cc (ipa_param_body_adjustments::modify_expression): Bail out early if there are no replacements. (ipa_param_body_adjustments::modify_assignment): Likewise. |
||
|
f2cf4c6121
|
ipa-sra: Forward propagation of sizes which are safe to dereference
The previous patch established a way to propagate information about parameters from callers to callees (even though then the actual splitting is done in the opposite direction), this patch adds to that information about size of the parameters that is known to be safe to dereference in the callers - the information currently does not come from actual dereferences but only when we pass a reference to a known declaration, but we can use e.g. dereferences in BBs dominating the call, for example too, if we decide it is worth it. References which look like splitting candidates but are not always dereferenced are - assuming the dereferences are not improbable - not discarded straight away but only marked as conditionally dereferenceable. IPA phase then makes sure that they stay candidates only if all incoming edges have big enough known-to-be-safe size. gcc/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * ipa-sra.cc (isra_param_desc): New fields safe_size, conditionally_dereferenceable and safe_size_set. (struct gensum_param_desc): New field conditionally_dereferenceable. (struct isra_param_flow): Updated comment of field unit_size. (ipa_sra_function_summaries::duplicate): Copy the new fields. (isra_call_summary::dump): Dump unit_size when representing safe_size. (dump_gensum_param_descriptor): Dump new flag. (dump_isra_param_descriptor): Dump new fields. (isra_analyze_call): Fill unit_size when it represents known safe size. (check_gensum_access): Instead of disqualifying pointers which are not always dereference, mark them as conditionally dereferencable if loads are frequent enough. (process_scan_results): Copy the conditionally_dereferenceable flag. (isra_write_node_summary): Stream new fields, or assert they are not initialized yet. (isra_read_node_info): Stream new fields. (update_safe_size): New function. (propagate_param_hints_accross_call): Propagate safe_sizes. (propagate_hints_to_all_callees): New function. (adjust_parameter_descriptions): Check conditionally_dereferenceable candidates, rework dumping. (ipa_sra_analysis): Move most of hint propagation for one node to propagate_hints_to_all_callees. Add another loop to stabilize within SCCs and another one to verify. gcc/testsuite/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * gcc.dg/ipa/ipa-sra-26.c: New test. * gcc.dg/ipa/ipa-sra-27.c: Likewise. * gcc.dg/ipa/ipa-sra-28.c: Likewise. |
||
|
e3a5cc3259
|
ipa-sra: Be optimistic about Fortran descriptors
Fortran descriptors are structures which are often constructed just for a particular argument of a particular call where it is passed by reference. When the called function is under compiler's control, it can be beneficial to split up the descriptor and pass it in individual parameters. Unfortunately, currently we allow IPA-SRA to replace a pointer with a set of replacements which are at most twice as big in total and for descriptors we'd need to bump that factor to seven. This patch looks for parameters which are ADDR_EXPRs of local variables which are written to and passed as arguments by reference but are never loaded from and marks them with a flag in the call edge summary. The IPA analysis phase then identifies formal parameters which are always fed such arguments and then is more lenient when it comoes to size. In order not to store to maximums per formal parameter, I calculate the more lenient one by multiplying the existing one with a new parameter. If it is preferable to keep the maximums independent, we can do that. Documentation for the new parameter is missing as I still need to re-base the patch on a version which has sphinx. I will write it before committing. I have disable IPA-SRA in pr48636-2.f90 in order to be able to keep using its dump-scan expressions. The new testcase is basically a copy of it with different options and IPA-SRA dump scans. gcc/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * ipa-sra.cc (isra_param_desc): New field not_specially_constructed. (struct isra_param_flow): New field constructed_for_calls. (isra_call_summary::dump): Dump the new flag. (loaded_decls): New variable. (dump_isra_param_descriptor): New parameter hints, dump not_specially_constructed if it is true. (dump_isra_param_descriptors): New parameter hints, pass it to dump_isra_param_descriptor. (ipa_sra_function_summaries::duplicate): Duplicate new flag. (create_parameter_descriptors): Adjust comment. (get_gensum_param_desc): Bail out when decl2desc is NULL. (scan_expr_access): Add loaded local variables to loaded_decls. (scan_function): Survive if final_bbs is NULL. (isra_analyze_call): Compute constructed_for_calls flag. (process_scan_results): Be optimistic about size limits. Do not dump computed param hints when dumpint IPA-SRA structures. (isra_write_edge_summary): Stream constructed_for_calls. (isra_read_edge_summary): Likewise. (ipa_sra_dump_all_summaries): New parameter hints, pass it to dump_isra_param_descriptor. (flip_all_hints_pessimistic): New function. (flip_all_param_hints_pessimistic): Likewise. (propagate_param_hints): Likewise. (disable_unavailable_parameters): Renamed to adjust_parameter_descriptions. Expand size limits for parameters which are specially contstructed by all callers. Check limits again.p (ipa_sra_analysis): Pass required hints to ipa_sra_dump_all_summaries. Add hint propagation. (ipa_sra_summarize_function): Initialize and destory loaded_decls, rearrange so that scan_function is called even when there are no candidates. * params.opt (ipa-sra-ptrwrap-growth-factor): New parameter. gcc/testsuite/ChangeLog: 2021-11-11 Martin Jambor <mjambor@suse.cz> * gfortran.dg/pr48636-2.f90: Disable IPA-SRA. * gfortran.dg/ipa-sra-1.f90: New test. |
||
|
803a91330b
|
ipa-sra: Move caller->callee propagation before callee->caller one
This patch does not do any functional changes, it merely moves top-down propagation in the IPA-SRA WPA phase before bottom-up one. This also meant moving some preliminary checks from the latter to the former - where they need to be in their own loop over each SCC because the subsequent one looks at callers. Currently the propagations are independent (top-down is used for return value rermoval, bottom-up for parameter removal and splitting) but subsequent patches will introduce flags about parameters which should be propagated from callers first and used in splitting. I separated this change to test ir independently and make those subsequent patches cleaner. While at it, I also replaced couple of FOR_EACH_VEC_ELT macros with C++11 style iteration. gcc/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * ipa-sra.cc (ipa_sra_analysis): Move top-down analysis before bottom-up analysis. Replace FOR_EACH_VEC_ELT with C++11 iteration. gcc/testsuite/ChangeLog: 2021-12-14 Martin Jambor <mjambor@suse.cz> * gcc.dg/ipa/ipa-sra-25.c: New test |
||
|
10478270fe
|
ipa-sra: Treat REFERENCE_TYPES as always dereferencable
C++ and especially Fortran pass data by references which are not pointers potentially pointing anywhere and so can be assumed to be safely dereferencable. This patch teaches IPA-SRA to treat them as such and avoid the dance we do to prove that we can move loads from them to the caller. When we do not know that a dereference will happen all the time, we need a heuristics so that we do not force memory accesses that normally happen only rarely. The patch simply uses the (possibly guessed) profile and checks whether the (expected) number of loads is at least half of function invocations invocations - the half is now configurable with a param as requested by Honza. gcc/ChangeLog: 2022-12-13 Martin Jambor <mjambor@suse.cz> PR ipa/103585 * params.opt (ipa-sra-deref-prob-threshold): New parameter. * doc/invoke.texi (ipa-sra-deref-prob-threshold): Document it. * ipa-sra.cc (struct gensum_param_access): New field load_count. (struct gensum_param_desc): New field safe_ref, adjusted comments. (by_ref_count): Renamed to unsafe_by_ref_count, adjusted all uses. (dump_gensum_access): Dump the new field. (dump_gensum_param_descriptor): Likewise. (create_parameter_descriptors): Set safe_ref field, move setting by_ref forward. Only increment unsafe_by_ref_count for unsafe by_ref parameters. (allocate_access): Initialize new field. (mark_param_dereference): Adjust indentation. Only add data to bb_dereferences for unsafe by_ref parameters. (scan_expr_access): For loads, accumulate BB counts. (dereference_probable_p): New function. (check_gensum_access): Fix leading comment, add parameter FUN. Check cumulative counts of loads for safe by_ref accesses instead of dereferences. (process_scan_results): Do not propagate dereference distances for safe by_ref parameters. Pass fun to check_gensum_access. Safe by_ref params do not need the postdominance check. gcc/testsuite/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> * g++.dg/ipa/ipa-sra-5.C: New test |
||
|
095a13eda2
|
ipa-cp: Leave removal of unused parameters to IPA-SRA
Looking at some benchmarks I have noticed many cases when IPA-CP cloned a function for all contexts just because it knew that some parameters were not used at all. Then IPA-SRA looked at the function and cloned it again to split another parameter or two. The latter pass is better equipped to detect when parameters can be altogether removed and so the IPA-CP cloning was for no good reason. This patch simply alters the IPA-CP not to do that in the situations where IPA-SRA can (for nodes which can be made local) with additional dumping requested by Honza. gcc/ChangeLog: 2022-12-13 Martin Jambor <mjambor@suse.cz> * ipa-cp.cc (clone_for_param_removal_p): New function. (estimate_local_effects): Call it before considering cloning just to remove unused parameters. |
||
|
4834e9360f
|
ipa: Better way of applying both IPA-CP and IPA-SRA (PR 103227)
This is basically a better fix for PR 103227. The one currently in use, rushed in late at stage3, which means that IPA-CP transformation simply does a replacement of default-definition of IPA-SRA-created scalar parameters with a constant, meant that IPA-SRA actually often led to creation of a bunch of unused parameters, which was rather ironic and sub-optimal. This patch rips that old way out and makes sure the clash is resolved at clone-materialization time. What happens is that: 1) IPA-SRA IPA analysis (decision) stage recognizes the clash and does not create a param adjustment entry for such a scalar component. 2) Clone materialization code checks the IPA-CP transformation summary and when it realizes that it is removing a parameter that is a base for a discovered IPA-CP aggregate constant, and: a) the value is passed by reference, it internally records that any load of the value is replaced directly with the known constant value. IPA-SRA will not attempt to split values passed by reference when there is a write to it so we know such a load won't be on a a LHS. b) the value is passed by value, there can be stores to the corresponding bit of the aggregate and so all accesses are replaced with a new decl and an assignment of the constant to this decl is generated at the beginning of the function. The new testcase contains an xfail as the patch does not fix PR 107640 but it is one that ICEs when one is not careful about remapping indices of parameters, so I'd like to have it in testsuite/gcc.gd/ipa/ even now. I don't think that PR 107640 should be attempted through ipa-param-manipulation replacements because the information is not really there any more and we'd either need to do the replacements earlier or dig deep into the clone parent info. Instead, we should record somewhere that at the beginning of the function the bits of the global decl have known values and use that in the value numbering. That way we could one day encode also known constants in globals that do not come through parameters. gcc/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> PR ipa/103227 * ipa-param-manipulation.h (class ipa_param_adjustments): Removed member function get_updated_index_or_split. (class ipa_param_body_adjustments): New overload of register_replacement, new member function append_init_stmts, new member m_split_agg_csts_inits. * ipa-param-manipulation.cc: Include ipa-prop.h. (ipa_param_adjustments::get_updated_index_or_split): Removed. (ipa_param_body_adjustments::register_replacement): New overload, use it from the older one. (ipa_param_body_adjustments::common_initialization): Added the capability to create replacements for conflicting IPA-CP discovered constants. (ipa_param_body_adjustments::ipa_param_body_adjustments): Construct the new member. (ipa_param_body_adjustments::append_init_stmts): New function. * ipa-sra.cc: Include ipa-prop.h. (push_param_adjustments_for_index): Require IPA-CP transformation summary as a parameter, do not create replacements which are known to have constant values. (process_isra_node_results): Find and pass to the above function the IPA-CP transformation summary. * ipa-prop.cc (adjust_agg_replacement_values): Remove the functionality replacing IPA-SRA created scalar parameters with constants. Simplify, do not require parameter descriptors, do not return anything. (ipcp_transform_function): Simplify now that adjust_agg_replacement_values does not change cfg. Move definition and initialization of descriptors lower. * tree-inline.cc (tree_function_versioning): Call append_init_stmts of param_body_adjs, if there are any. gcc/testsuite/ChangeLog: 2022-11-11 Martin Jambor <mjambor@suse.cz> PR ipa/103227 PR ipa/107640 * gcc.dg/ipa/pr107640-2.c: New test. |
||
|
7450b25566
|
ipa-cp: Write transformation summaries of all functions
IPA-CP transformation summary streaming code currently won't stream out transformations necessary for clones which are only necessary for materialization of other clones (such as an IPA-CP clone which is then cloned again by IPA-SRA). However, a follow-up patch for bettor reconciling IPA-SRA and IPA-CP modifications requires to have that information at its disposal and so this one reworks the streaming to write out all non-empty transformation summaries. In order not to stream transformation summaies into partitions where the node itself nor any of its clones are materialized, I had to make sure that clones also get encode_body flag in the encoder (so that it could be tested) and therefore in turn lto_output understands it needs to skip clones. This should actually mean less streaming in typical case because previously we streamed three zeros for all nodes in a partition with no useful information associated with them. Currently we don't stream anything for those. When reworking the streaming, I also simplified it a little a converted it writing to nicer C++ vector iterations. gcc/ChangeLog: 2022-11-25 Martin Jambor <mjambor@suse.cz> * ipa-prop.cc (useful_ipcp_transformation_info_p): New function. (write_ipcp_transformation_info): Added a parameter, simplified given that is known not to be NULL. (ipcp_write_transformation_summaries): Write out all useful transformation summaries. (read_ipcp_transformation_info): Simplify given that some info will be read. (read_replacements_section): Remove assert. * lto-cgraph.cc (add_node_to): Also set encode_body for clones. * lto-streamer-out.cc (lto_output): Do not output virtual clones. |
||
|
37c2d99f3f |
i386: Fix up *concat*_{5,6,7} patterns [PR108044]
The following patch fixes 2 issues with the *concat<half><mode>3_5 and *concat<mode><dwi>3_{6,7} patterns. One is that if the destination is memory rather than register, then we can't use movabsq and so can't support all the possible immediates. I see 3 possibilities to fix that. One would be to use x86_64_hilo_int_operand predicate instead of const_scalar_int_operand and thus not match it at all during combine in such cases, but that unnecessarily pessimizes also the case when it is loaded into register where we can use movabsq. Another one is what is implemented in the patch, use Wd constraint for the integer on 64-bit if destination is memory and n otherwise. Yet another option would be to add match_scratch to the pattern and use it with =X constraints except for the =o case for 64-bit non-Wd where it would give a single DImode register (rather than 2). Another thing is that if one half of the constant is ix86_endbr_immediate_operand, then for -fcf-protection=branch we force those constants into memory and that might not work properly with -fpic. So we should refuse to match with such constants. OT, seems for movabsq we don't check that and happily allow the endbr pattern in the immediate. 2022-12-13 Jakub Jelinek <jakub@redhat.com> PR target/108044 * config/i386/i386.md (*concat<half><mode>3_5, *concat<mode><dwi>3_6, *concat<mode><dwi>3_7): Split alternative with =ro output constraint into =r,o,o and use Wd input constraint for the last alternative which is enabled for TARGET_64BIT. Reject ix86_endbr_immediate_operand in the input constant. * gcc.target/i386/pr108044-1.c: New test. * gcc.target/i386/pr108044-2.c: New test. * gcc.target/i386/pr108044-3.c: New test. * gcc.target/i386/pr108044-4.c: New test. |
||
|
f82afb6976 |
libstdc++: Update backtrace-rename.h
When writing the r13-4629 commit log I've realized that libsanitizer isn't the only place which nowadays renames libbacktrace symbols, libstdc++ does that too. 2022-12-13 Jakub Jelinek <jakub@redhat.com> * src/libbacktrace/backtrace-rename.h (backtrace_uncompress_zstd): Define. |
||
|
531ca06c00 |
Fortran: NULL pointer dereference while parsing a function [PR107423]
gcc/fortran/ChangeLog: PR fortran/107423 * parse.cc (parse_spec): Avoid NULL pointer dereference when parsing a function and an error occured. gcc/testsuite/ChangeLog: PR fortran/107423 * gfortran.dg/pr107423.f90: New test. |
||
|
69ec1e2065 |
AArch64: Fix ILP32 tbranch
the baremetal builds are currently broken because the shift ends up in the wrong representation if the mode is SImode and the shift amount if 31. To fix this create the rtx constant with an explicit mode so the backend passes know which representation it needs to take. gcc/ChangeLog: * config/aarch64/aarch64.md (tbranch_<code><mode>3): Use gen_int_mode. |
||
|
33be3ee36a |
vect-patterns: Fix up vect_recog_rotate_pattern [PR108064]
Since vect_recog_rotate_pattern has been extended to work also on signed types in r13-1100 we miscompile the testcase below. vect_recog_rotate_pattern actually emits correct scalar code into the pattern def sequence (in particular cast to utype, doing the 2 shifts in utype so that the right shift is logical and not arithmetic, or and then cast back to the signed type), but it didn't supply vectype for most of those pattern statements, which means that the generic handling fills it up later with the vectype provided by vect_recog_rotate_pattern. The problem is that it is vectype of the result of the whole pattern, i.e. vector of signed values in this case, while the conversion to utype, 2 shifts and or (everything with utype lhs in scalar code) should have uvectype as STMT_VINFO_VECTYPE. 2022-12-13 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/108064 * tree-vect-patterns.cc (vect_recog_rotate_pattern): Pass uvectype as 4th argument to append_pattern_def_seq for statements with lhs with utype type. * gcc.c-torture/execute/pr108064.c: New test. |