Commit Graph

10345 Commits (8be30254e2f38835f1530220a4b790e2c9cfb134)

Author SHA1 Message Date
Alain Frisch a682f45abc Adding in mli file for Intel_dsl.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15341 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-26 08:32:32 +00:00
Alain Frisch 02097ac8b9 Clarify the fsub/fsubr bug in AT\&T syntax.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15340 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-26 08:26:15 +00:00
Alain Frisch 3180714d61 Comments, cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15339 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-26 08:12:19 +00:00
Alain Frisch 24df4ba246 Document that X-only directives can only be used with the X-emitter.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-26 07:54:42 +00:00
Alain Frisch 338c2907f5 Remove aliases for conditions.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15337 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-26 07:32:00 +00:00
Alain Frisch 62fea28d29 Changelog for #6374.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15335 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-25 15:58:20 +00:00
Alain Frisch 4c3cd9fb7b Sync with trunk.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15334 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-25 15:49:42 +00:00
Alain Frisch bd9c17c8d5 Make it clear that type-qualified constructors are only allowed in bang types.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15333 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-25 15:22:06 +00:00
Alain Frisch 5dac90505f Allow qualified reference to constructors (at least in bang-types). A regular variant type supports qualified constructors of the form: M.t.X. An extensible variant type supports qualified constructors of the form: M.t.N.X.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15332 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-25 15:16:19 +00:00
Alain Frisch fc4e2cd892 Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 16:03:17 +00:00
Alain Frisch 9bd004420f Fix constructor name to match exatcly Intel mnemonics.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15329 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 15:56:44 +00:00
Alain Frisch 51472c925c Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15328 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 15:53:26 +00:00
Alain Frisch 11f3e765be Fix syntax for comments in gas (not currently used, but useful to mark parts of the generated output).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15327 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 15:20:24 +00:00
Alain Frisch 7dea33dc40 Cosmetic, bringing i386 and amd64 versions of emit.mlp closer to each other.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15326 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 10:28:28 +00:00
Alain Frisch 79ee71e8ca Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15324 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:48:56 +00:00
Alain Frisch 53f5caf8dc Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15323 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:45:49 +00:00
Alain Frisch d300d7ba2e Changelog.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15322 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:31:01 +00:00
Alain Frisch bc3439603a #6577: fix performance of %C format.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15321 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:26:19 +00:00
Alain Frisch f8ca8db7bb #6577: fix performance of %S format.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15320 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:24:36 +00:00
Alain Frisch 45e9ebde3c #6577: fix performance of %L, %l, %n formats.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15319 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-24 09:20:05 +00:00
Alain Frisch 4aa48476d8 Refer to the inlined record type as !M.Foo for a constructor M.Foo.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/constructors_with_record3@15315 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 16:06:09 +00:00
Alain Frisch 44c2066055 #5904: improve support for ppx in the toplevel by allowing ppx processors to keep information across calls (through the use of persistent cookies). Also change Ast_mapper.register so that the function that creates the mapper from arguments is executed once the context has been restored.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15314 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 14:54:01 +00:00
Alain Frisch 37c50a06f1 displ can be represented as an int.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15311 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 13:27:33 +00:00
Alain Frisch a8b637fb54 Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15310 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 13:21:03 +00:00
Alain Frisch 3320a87fd2 Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15309 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 12:59:54 +00:00
Alain Frisch 589640c1e4 Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15308 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 12:54:41 +00:00
Alain Frisch 32e673030d Optim.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 12:51:09 +00:00
Alain Frisch 0344ab317a Fix (dlcode is modified later).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15305 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 12:07:59 +00:00
Alain Frisch 11cf54b097 Use more format strings.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15304 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 10:36:28 +00:00
Alain Frisch 6fe05a51a7 Typo.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15303 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 08:45:58 +00:00
Alain Frisch 6bbc2d7a51 Textual emitters are responsible for emitting the whole file.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15302 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-23 08:36:45 +00:00
Alain Frisch 78f008684b Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15301 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 16:26:03 +00:00
Alain Frisch 630b4649fc Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15300 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 16:25:57 +00:00
Alain Frisch 9d036b4989 Cosmetic.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15299 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 16:24:47 +00:00
Alain Frisch aeb78559df Flattenize addre further.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15297 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 15:11:51 +00:00
Alain Frisch 237406042b Represent the current location explicitly, not through gas encoding (special dot symbol).
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15296 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:56:33 +00:00
Alain Frisch fe2e3ae271 Get rid of data_size, specialize the Constant directive.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15295 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:51:36 +00:00
Alain Frisch 80e8e2c24f Do not keep data_size with integer constants.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15294 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:47:30 +00:00
Alain Frisch 7e5a406a1c Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15293 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:30:58 +00:00
Alain Frisch bb3354efe7 Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15292 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:11:53 +00:00
Alain Frisch 6f2c5e71ce Do not keep explicit datasize with immediate integer operands. Special support for movabsq.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15291 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 14:11:33 +00:00
Alain Frisch b0cf9ee3f5 Cleanup.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15290 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 12:58:32 +00:00
Alain Frisch 1cbeacb2db Factorize emission of addressing modes for masm.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15289 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 12:55:14 +00:00
Alain Frisch 967be9d729 Fix and cleanup masm emitter.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15288 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 12:30:31 +00:00
Alain Frisch 4f4596d77c Represent symbol addresses in a uniform way in the AST. The instruction emitter decides the interpret them as absolute or relative addresses.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15287 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 11:51:53 +00:00
Alain Frisch ff1e7afbb6 Fix.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15286 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 11:39:39 +00:00
Alain Frisch 84e9598fc3 Simplify.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15285 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 11:37:53 +00:00
Alain Frisch 78445243b6 Split immediate symbol and immediate constant cases.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15284 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 11:35:50 +00:00
Alain Frisch 7f7a43b200 Turn addr into a record.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15283 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 10:01:46 +00:00
Alain Frisch 09fb7eb268 Simplify addressing.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/abstract_intel_emit@15281 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-09-22 09:03:04 +00:00