[m-rev.] for review: chop up a big module

Paul Bone pbone at csse.unimelb.edu.au
Thu Jan 27 20:29:54 AEDT 2011


On Thu, Jan 27, 2011 at 05:40:56PM +1100, Zoltan Somogyi wrote:
> On 27-Jan-2011, Paul Bone <pbone at csse.unimelb.edu.au> wrote:
> > > deep_profiler/autopar_annotate.m:
> > > 	The part of the old module that annotated the representations of goals.
> > 
> > You don't want to call this instmap.m?
> 
> My intention was that the module should also contain any other predicates
> that associate generally useful annotations with goals, either by putting
> annotations on the goals or by putting goal ids on goals and creating arrays
> indexed by those goal ids.

Ah those are in a few different modules such as var_use_info and coverage.  I
thought that one for each annotation makes sense but I also see the point of
putting more general annotations in one module.  It's not a big deal, I'm happy
with autopar_annotate.m, if there are problems in the future we can address
them then.

> Besides, we learned the lesson about duplicating the names of compiler
> modules.

:-)

> Here is the next installment of the breakup. I think I am done for now,
> since autopar_search_callgraph.m now looks pretty cohesive, with one exception.
> Paul, please have a look and decide in which module the predicate
> pard_goal_detail_to_pard_goal belongs, or whether it should be replaced
> altogether.

I'll replace it altogether before I need to modify it next.


> Zoltan.
> 
> deep_profiler/autopar_calc_overlap.m:
> 	New module for calculating the overlap between the conjuncts of a
> 	parallelised conjunction. Its contents are taken from the old
> 	autopar_search_callgraph.m.
> 
> deep_profiler/autopar_costs.m:
> 	New module for calculating the costs of goals. Its contents
> 	are taken from the old autopar_search_callgraph.m.
> 
> deep_profiler/autopar_reports.m:
> 	New module for creating reports. Its contents are taken from
> 	the old autopar_search_callgraph.m.
> 
> deep_profiler/autopar_search_goals.m:
> 	New module for searching goals for parallelizable conjunctions.
> 	Its contents are taken from the old autopar_search_callgraph.m.
> 
> deep_profiler/autopar_search_callgraph.m:
> 	Remove the code moved to other modules.
> 
> deep_profiler/mdprof_fb.automatic_parallelism.m:
> 	Add the new modules.
> 
> deep_profiler/*.m:
> 	Remove unnecessary imports.
> 	Fix copyright years on the new modules.
> 
> browser/*.m:
> compiler/*.m:
> mdbcomp/*.m:
> 	Remove unnecessary imports.
> 
> library/Mercury.options:
> 	Make it possible to compile a whole workspace with
> 	--warn-unused-imports by turning that option off for type_desc.m
> 	(which has a necessary import that --warn-unused-imports thinks
> 	is unused).

This sounds fine,  Since there are no semantic changes I havn't read the diff.

Thanks.

> Index: boehm_gc/libatomic_ops/tests/test_atomic_include.h
> ===================================================================
> RCS file: /home/mercury/mercury1/repository/mercury/boehm_gc/libatomic_ops/tests/test_atomic_include.h,v
> retrieving revision 1.1.1.1
> diff -u -b -r1.1.1.1 test_atomic_include.h
> --- boehm_gc/libatomic_ops/tests/test_atomic_include.h	23 Feb 2010 06:28:40 -0000	1.1.1.1
> +++ boehm_gc/libatomic_ops/tests/test_atomic_include.h	27 Jan 2011 05:58:51 -0000
> @@ -5,15 +5,6 @@
>   * see doc/COPYING for details.
>   */
>  
> -void test_atomic(void);
> -void test_atomic_release(void);
> -void test_atomic_acquire(void);
> -void test_atomic_read(void);
> -void test_atomic_write(void);
> -void test_atomic_full(void);
> -void test_atomic_release_write(void);
> -void test_atomic_acquire_read(void);
> -
>  /* Some basic sanity tests.  These do not test the barrier semantics. */
>  
>  #undef TA_assert

Take care not to commit this.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: Digital signature
URL: <http://lists.mercurylang.org/archives/reviews/attachments/20110127/a5c75e70/attachment.sig>


More information about the reviews mailing list