Alain Frisch
8bbd041398
Starting to simplify/clenaup emit.mlp.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15201 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-10 09:07:50 +00:00
Alain Frisch
1b8f2a29f1
Forgot to apply emit_symbol.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15200 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-10 08:43:51 +00:00
Alain Frisch
5e9194ec6f
Fix for mingw64.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15199 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-09 16:02:22 +00:00
Alain Frisch
5190950665
Comment.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15198 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-09 14:20:16 +00:00
Alain Frisch
1701d2733b
#5528 : factorize the generation of names for inlined records.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15194 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-05 12:24:31 +00:00
Jérémie Dimino
fbdb2f5585
fix Travis script: git requires a name and email
...
(Patch by Pierre Chambart)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15193 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-05 08:41:34 +00:00
Alain Frisch
28afbb4d23
Make ocamldoc compile (still need support for inlined records).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15192 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-04 16:22:44 +00:00
Alain Frisch
7740036108
Bootstrap.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15191 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-04 16:22:39 +00:00
Alain Frisch
378a967cb7
Sync with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15190 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-04 16:11:12 +00:00
Alain Frisch
14e22181c6
Need to call begin_assembly after Compilenv.reset.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15189 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 16:02:50 +00:00
Alain Frisch
ae216ad212
Let the binary backend split the sections.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15188 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 15:06:52 +00:00
Alain Frisch
9a414baa96
Allow a binary code emitter to avoid the creation of an assembly source file.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15187 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 14:46:53 +00:00
Jérémie Dimino
a360747bc2
PR#6539: don't divide caml_major_heap_increment by the word size
...
(Patch by Daniel Richman)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15186 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 14:08:15 +00:00
Jérémie Dimino
d095ba7f89
PR#6540: update documentation of default values in gc.mli
...
(Patch by Daniel Richman)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15185 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 13:35:48 +00:00
Alain Frisch
0652dda14d
Factorize the sequencing of operations for setting up the assembly output, calling the assembler, closing/removing the assembly output.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15184 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 12:48:13 +00:00
Alain Frisch
ac226bf931
The internal assembler emits to a file, not to a string.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15183 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-03 09:46:45 +00:00
Alain Frisch
62a834f455
Fix for Windows.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15182 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 16:04:55 +00:00
Alain Frisch
e4ac6b651a
Synchronize with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15181 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 15:08:52 +00:00
Alain Frisch
25178442c2
Only include Intel_* modules when arch is i386 or amd64.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15180 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 15:07:59 +00:00
Alain Frisch
46b8de0b24
emit_nt is not needed anymore.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15179 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 14:58:33 +00:00
Alain Frisch
dfe5d892d9
Note.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15178 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 12:34:31 +00:00
Alain Frisch
6cd15407b4
Fix for msvc64.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15177 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 07:37:40 +00:00
Alain Frisch
f39d50891a
Fix for msvc64.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-02 07:36:59 +00:00
Alain Frisch
2cf427beb3
#6529 : the checked flag is now part of pers_struct.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15174 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-01 12:28:48 +00:00
Alain Frisch
856122459e
Synchronize with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15173 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-01 08:43:08 +00:00
Alain Frisch
adcd0fe5c9
#6529 : further optimize consistency check.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15171 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-01 08:36:47 +00:00
Xavier Leroy
132c529b75
Reflecting commit 15169 on version/4.02:
...
PR#6529: fix quadratic-time algorithm in Consistbl.extract.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15170 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-31 14:44:51 +00:00
Damien Doligez
a18bc7950b
merge changes of version/4.02 from r15121 to r15155
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15168 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 17:14:00 +00:00
Damien Doligez
499a573b7f
merge changes of version/4.02 from r15121 to r15155
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15167 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 17:13:34 +00:00
Alain Frisch
e36e77f7d7
Print instructions one by one to the assembly file (instead of printing everything in a single huge text buffer).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15166 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 16:28:15 +00:00
Alain Frisch
a6d6f6e084
Do not use hex syntax for 32-bit constants (if we want to use it, we must display it as 32-bit integers, not 64-bit).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15165 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 15:45:38 +00:00
Alain Frisch
11942a03d2
Cosmetic.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15163 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:58:33 +00:00
Alain Frisch
c2baf41654
Cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15162 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:50:22 +00:00
Alain Frisch
0ccd4d18b6
Add interfaces for intel_gas/intel_masm, remove dead code.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15161 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:46:00 +00:00
Alain Frisch
45f4535e99
Move the DSL part from intel_gas to its own module.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15160 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:40:25 +00:00
Alain Frisch
e7ba464587
Add intel_proc.mli, get rid of arch64 bool ref, move StringSet/StringMap to misc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15159 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:35:10 +00:00
Alain Frisch
aab23e506e
Share the masm criterion.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15158 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 14:01:23 +00:00
Alain Frisch
22e239cf91
Introducing a new module (pure interface) to define the AST of the intel assembly language.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15157 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 13:55:56 +00:00
Alain Frisch
2ce8520c2a
Reindent + minor style tweaks.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15153 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 12:36:35 +00:00
Alain Frisch
8dc066e0b6
Revert (unrelated change).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15151 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 12:23:08 +00:00
Alain Frisch
9248774af5
Synchronize with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15147 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-29 10:37:43 +00:00
Gabriel Scherer
f5f3ae77a9
(in|out)_channel_of_descr: improve documentation (Christophe Troestler)
...
Following a discussion on the mailing list, it appears that more
explanation on the closing of channels created from file descriptors
is desirable.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15142 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-28 21:56:03 +00:00
Gabriel Scherer
d875804d9c
fix minor error-reporting bug
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15141 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-28 21:52:00 +00:00
Xavier Leroy
b868c05ec9
PR#6517: use ISO C99 types {,u}int{32,64}_t in preference to our homegrown
...
types {,u}int{32,64}.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-27 09:58:33 +00:00
Damien Doligez
cbfe627f92
merge changes from branch 4.02 from branching (rev 14852) to 4.02.0+rc1 (rev 15121)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15125 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-22 13:45:02 +00:00
Damien Doligez
09ad9c1abb
add ocamldoc to check-typo; some mergeinfo that svn wants to commit
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15124 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-22 10:46:36 +00:00
Gabriel Scherer
d02c8fbc55
new -opaque flag: ocamlopt creates .cmx without cross-module info
...
(Patch by Pierre Chambart and Gabriel Scherer)
(Ack'ed by Damien Doligez)
This enables a form of incremental compilation for ocamlopt: if
A depends on B, and B is compiled with `ocamlopt -opaque`, then minor
implementation changes in B that do not affect the module interface
will not require recompilation of A.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15105 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-18 13:28:34 +00:00
Fabrice Le Fessant
c6d4264a09
import new intel emit branch
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15097 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-18 09:32:20 +00:00
Fabrice Le Fessant
78234a8b65
Create branch abstract_intel_emit from trunk r15095
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15096 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-18 09:17:56 +00:00
Fabrice Le Fessant
a0bdce52f5
Fix PR#6516 in testsuite
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15095 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-08-17 21:11:18 +00:00