Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004454OCamlback end (clambda to assembly)public2007-11-22 16:382016-12-06 23:09
Reporterfrisch 
Assigned Toshinwell 
PrioritynormalSeverityfeatureReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0004454: Better control over cross-module optimizations
DescriptionIt should be possible to have finer control over cross-module optimizations as performed by ocamlopt. Typical motivations:

1. Speed up the edit-compile-run cycle (bytecode is not always an option).
2. Allow .cmxs plugins to be used in several different applications sharing only some interfaces.

Possible ideas:
1. When a module is compiled by ocamlopt, a special option asks ocamlopt no to produce cross-module info for the resulting .cmx.
2. A different set of search directories to look for .cmx files.
3. Put cross-module info into .cmxa and let ocamlopt use .cmxa at compile-time
to perform optimizations.
4. Explicitly allow/disallow ocamlopt (with command line options) to use cross-module optimizations for some modules.

TagsNo tags attached.
Attached Files

- Relationships
related to 0006389closedgasche [github patch] add an -opaque option to produce optimization-empty .cmx file for separate native compilation 

-  Notes
(0011627)
frisch (developer)
2014-06-02 18:57

gasche proposed a command-line to implement 1: https://github.com/ocaml/ocaml/pull/30 [^] / 0006389
(0016686)
shinwell (developer)
2016-12-06 23:09

Option 1 has been implemented (-opaque).

- Issue History
Date Modified Username Field Change
2007-11-22 16:38 frisch New Issue
2008-01-18 16:30 doligez Severity minor => feature
2008-01-18 16:30 doligez Status new => acknowledged
2012-06-20 11:19 frisch Category OCaml general => OCaml backend (code generation)
2014-06-02 18:57 frisch Note Added: 0011627
2014-06-02 18:58 frisch Relationship added related to 0006389
2016-12-06 23:09 shinwell Note Added: 0016686
2016-12-06 23:09 shinwell Status acknowledged => resolved
2016-12-06 23:09 shinwell Resolution open => fixed
2016-12-06 23:09 shinwell Assigned To => shinwell
2017-02-23 16:35 doligez Category OCaml backend (code generation) => Back end (clambda to assembly)
2017-02-23 16:44 doligez Category Back end (clambda to assembly) => back end (clambda to assembly)


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker