Mark Shinwell
b2e7162546
Second attempt at fixing GPR#167 fallout
2016-04-15 13:41:54 +01:00
Anton Bachin
0746566e79
Don't emit .loc with negative column numbers
...
The Clang assembler does not accept these. They can arise when using
Location.none, for example in a PPX.
2016-04-14 13:30:10 -04:00
Mark Shinwell
e26cd12701
Fix for GPR#167
2016-04-14 16:29:57 +01:00
Pierre Chambart
3ad95a3a59
Also record type information for int
2016-04-12 14:49:54 +02:00
Pierre Chambart
211e6f54fb
Use the mutable_flag instead of let_kind for clambda let
2016-04-12 14:49:53 +02:00
Pierre Chambart
f7dcbf21e7
Annotate Let_mutable with the kind of value
2016-04-12 14:49:52 +02:00
alainfrisch
83ae23568c
Renaming block_kind -> value_kind.
2016-04-12 14:49:50 +02:00
alainfrisch
4dab0b8924
Doc.
2016-04-12 14:49:45 +02:00
alainfrisch
258a335791
When deciding whether to unbox a let binding, if one knows statically that the type of the bound expression is an unboxed number, relax the criterion: unbox if this benefits to at least one branch of the bound expression (instead of checking all branches).
2016-04-12 14:49:44 +02:00
alainfrisch
9b7e5868f2
Detect all let-bindings to unboxable floats.
2016-04-12 14:49:43 +02:00
alainfrisch
4bf9ad6a3c
Keep the approx on all Llet nodes, not only variables.
2016-04-12 14:49:42 +02:00
alainfrisch
c996f5f18d
Keep track of mutable variables obtained by eliminating local references holding aun unboxable number type. Then force unboxing of such variables to avoid repeated boxing every time the reference is assigned.
2016-04-12 14:49:40 +02:00
Pierre Chambart
2923d4d294
Make Cmmgen understand constant bools
2016-03-31 15:32:33 +02:00
alainfrisch
502e4f9336
More warnings when compiling the compiler.
2016-03-15 22:46:35 +01:00
François Bobot
2aec849922
Merge remote-tracking branch 'origin/4.03' into trunk
...
travis.yml is kept from trunk
Conflicts:
.depend
Changes
Makefile
VERSION
boot/ocamlc
boot/ocamldep
boot/ocamllex
parsing/parser.mly
parsing/pprintast.ml
stdlib/hashtbl.ml
testsuite/tests/unwind/Makefile
tools/check-typo
2016-03-11 18:44:32 +01:00
Alain Frisch
3d00fc8773
Avoid ambiguous or-pattern.
2016-03-09 18:42:07 +01:00
alainfrisch
8d0f08b20e
Fix a probable non-bug.
...
Commit 39760599e5
introduced some bogus logic.
Emitting structured constants can register more closures to be emitted. But either
the name of these closures is "unique enough", in which case we don't need the already_translated
argument in transl_all_functions_and_emit_all_constants (and transl_all_functions does not need
to return the set of already emitted functions). Or this is not the case, and the previous code
was wrong since it forgot to remember the set returned by transl_all_functions.
I've fixed the code assuming the latter in order to be on the safe side, but we would probably have
noticed if the former assumption did not hold. I've added a note to the commit mentioned above
so that @chambart can have a look at it.
2016-03-09 13:41:13 +01:00
Mark Shinwell
158e6fc1ae
Stop producing erroneous backtrace frames in Flambda mode
2016-02-29 11:27:08 +00:00
Mark Shinwell
898e06af77
Stop producing erroneous backtrace frames in Flambda mode
2016-02-29 11:18:08 +00:00
Mark Shinwell
5dced42768
Merge pull request #480 from mshinwell/flambda_unbox-closures
...
GPR#480: Flambda fix: try to make Unbox_closures behave more reasonably
2016-02-26 16:18:04 +00:00
Mark Shinwell
b1d1eed3af
Merge pull request #480 from mshinwell/flambda_unbox-closures
...
GPR#480: Flambda fix: try to make Unbox_closures behave more reasonably
2016-02-26 16:15:06 +00:00
Damien Doligez
df75e7e9de
cut overlong lines
2016-02-25 16:51:40 +01:00
Mark Shinwell
0453c74baa
Fix Unbox_closures to lessen runtime performance penalty
2016-02-24 09:03:15 +00:00
Damien Doligez
5401ce8473
Update headers for the new license.
...
Remains to be done: remove all headers in testsuite/tests.
2016-02-18 16:59:16 +01:00
Damien Doligez
ee8f71101b
clean up whitespace and cut long lines
2016-02-17 13:36:27 +01:00
Damien Doligez
59a4fd6615
Merge pull request #408 from btj/trunk
...
Fixes bugs in stack unwinding metadata (PR#7118,7120)
2016-02-12 11:20:02 +01:00
Mark Shinwell
4137939cd7
Make warning 59 less unhelpful (includes work by Runhang Li)
2016-02-11 14:35:18 +00:00
Mark Shinwell
bde2bdd206
Reformatting only (to the standards of tools/check-typo)
2016-02-10 18:28:38 +01:00
Mark Shinwell
c67bd88eee
Addressing CR comments for Flambda
2016-02-10 17:01:33 +01:00
Bart Jacobs
0a914a4765
Generate local jump labels on OS X (PR#7133)
...
See [PR#7133](http://caml.inria.fr/mantis/view.php?id=7133 )
2016-02-10 15:24:37 +01:00
Leo White
59aab8d1c2
Support for unroll and and specialise attributes
2016-02-10 14:14:42 +01:00
Mark Shinwell
a397511031
Import latest Flambda changes
2016-02-09 09:59:26 +01:00
Mark Shinwell
05f1746cb5
Rename to max_arguments_for_tailcalls; revise numbers assuming no unboxed floats using the OCaml calling conventions
2016-02-08 15:02:40 +01:00
Mark Shinwell
878ee9a2ee
Merge remote-tracking branch 'ocaml/trunk' into sensible_num_args
2016-02-08 14:52:52 +01:00
Mark Shinwell
b5618e8642
max_arguments_without_passing_on-stack
2016-01-29 15:57:36 +00:00
Mark Shinwell
355cf1d40b
merge
2016-01-29 14:43:38 +00:00
Pierre Chambart
b0b0f6609c
Enable flambda
2016-01-28 15:04:47 +01:00
Pierre Chambart
93956dc1ef
Avoid pushing test deep inside conditions
2016-01-22 09:36:59 +01:00
Pierre Chambart
d07c0698d0
Fix small divergences
2016-01-22 01:24:02 +01:00
Pierre Chambart
1cf70d9e6e
Remove unused globals field of Export_info.t
2016-01-22 01:24:02 +01:00
Pierre Chambart
f1f0a798f6
Add missing compilenv functions
...
approx_for_global and approx_env are missing implementation
2016-01-22 01:24:02 +01:00
Pierre Chambart
0e8ed08a9d
Add warning headers to flambda files
2016-01-22 00:39:46 +01:00
Mark Shinwell
20d1951566
Merge pull request #417 from chambart/flambda_prereq-duparray_and_array_mutability
...
GPR#417: Add explicit duplication of literal arrays
2016-01-21 16:05:44 +00:00
Mark Shinwell
d489fd2038
comments
2016-01-15 14:54:33 +00:00
Mark Shinwell
0664a1cf03
Alter array patch after feedback from jdimino
2016-01-15 14:49:01 +00:00
Damien Doligez
d296864174
remove unused (and wrong?) line in cmmgen.ml
2016-01-15 15:25:23 +01:00
Mark Shinwell
d3a8745b84
Merge remote-tracking branch 'ocaml/trunk' into flambda_prereq-clflags
2016-01-15 13:22:04 +00:00
Mark Shinwell
9fd67a6052
if-then-else changes in Cmmgen
2016-01-15 11:56:02 +00:00
Mark Shinwell
8e9c865176
Improved fatal error messages in Cmmgen
2016-01-15 11:53:50 +00:00
Mark Shinwell
fb312a989c
Minor naming/comment changes in Cmmgen
2016-01-15 11:20:03 +00:00