From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 3B1817FD6C for ; Sun, 22 Jan 2017 19:23:13 +0100 (CET) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=zhenya1007@gmail.com; spf=Pass smtp.mailfrom=zhenya1007@gmail.com; spf=None smtp.helo=postmaster@mail-yw0-f176.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of zhenya1007@gmail.com) identity=pra; client-ip=209.85.161.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="zhenya1007@gmail.com"; x-sender="zhenya1007@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of zhenya1007@gmail.com designates 209.85.161.176 as permitted sender) identity=mailfrom; client-ip=209.85.161.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="zhenya1007@gmail.com"; x-sender="zhenya1007@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-yw0-f176.google.com) identity=helo; client-ip=209.85.161.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="zhenya1007@gmail.com"; x-sender="postmaster@mail-yw0-f176.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3Ah3oDjBxtPbntsnTXCy+O+j09IxM/srCxBDY+r6Qd?= =?us-ascii?q?1OMeIJqq85mqBkHD//Il1AaPBtSHra4bwLOP6ujJYi8p2d65qncMcZhBBVcuqP?= =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6?= =?us-ascii?q?JvjvGo7Vks+7y/2+94fdbghMizexe7x/IRe5oQnMq8UanJZpJ7osxBfOvnZGYf?= =?us-ascii?q?ldy3lyJVKUkRb858Ow84Bm/i9Npf8v9NNOXLvjcaggQrNWEDopM2Yu5M32rhbD?= =?us-ascii?q?VheA5mEdUmoNjBVFBRXO4QzgUZfwtiv6sfd92DWfMMbrQ704RSiu4qF2QxLulS?= =?us-ascii?q?wJNSM28HvPh8NygqJVoByvqR9izYDKfI6YL+Bxcr/HcN4AWWZNQsRcWipcCY28?= =?us-ascii?q?dYsPCO8BMP5XoYnjqFsBsx2+BAmxD+3zzT9Im2T53aw80+s9EQHGwBIvH9MIsH?= =?us-ascii?q?/Jq9j0NacSXv6zzKjI1zrPcu9a1Sv/5YXTfRAhpOuDXbN0ccbL1UYvEAbFg0yW?= =?us-ascii?q?pIf4MT2V0eENvHKa7+pmTe+uhGoqpB1rrjih3McgkpLGh4IJyl/a+iV23oA1Kc?= =?us-ascii?q?e9SE5/Z9OvDZhetzmCOodoXs8vR3tktSU6x7EcpJK2fTUGxI46yxPdavGKdZWD?= =?us-ascii?q?7Aj5W+aLOzh4gWpoeLKhiBa29kit0uj8WdO10FZOtyZEktfNumwU2xzd98SKSP?= =?us-ascii?q?pw8l2u2TaI0ADT5eVELl4umaXHLJ4hx6Y8lpsVsUvdAi/7gFv6gLOSe0k++eWl?= =?us-ascii?q?6/7rbqjnq5OBLYN4lwPzP6U2lsy6G+s4MwwOX2aB+eS70b3u5Uz4QLVUgf0wkq?= =?us-ascii?q?jWqo3WKdgHqqO7GAJV3YMj5Ay+DzeiytgXgX4HLFdddBKdk4fpI03OIOz/Dfqn?= =?us-ascii?q?n1ujijJrx/TfMr3lA5XNNWTDnaz6fbd97k5c0BA8wcpe55JSELEBIej8VlX/tN?= =?us-ascii?q?zCXVcFNFmdww//BTw1/I4GsGeGAufNLqDUsHeZ7+QjLvnKfpJD6xjnLP1wyuDh?= =?us-ascii?q?gHko0WUaYKOo25AXdH25GLwyMUWUZ2vl249ZTk8FuwM/SKrhj1jUAm0bXGq7Q6?= =?us-ascii?q?9pvmJzM4mhF4qWHo0=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BnBwCn94RYhrChVdFeGwEBAQMBAQEJA?= =?us-ascii?q?QEBFgEBAQMBAQEJAQEBgxIBAQEBAUE+gQkHg0yaZQEBBoEdgxuFW4QjhHCFMiq?= =?us-ascii?q?FeAKCDgdDFAEBAQEBAQEBAQEBEgEBAQgLCwodMIIzGYIeAQMBASMdARsdAQMBC?= =?us-ascii?q?wYDAgQHNwICIgERAQUBHAaJAwEDCwUIDo8rkQ0/jAKCAwUBHIMJBYNMChknDVW?= =?us-ascii?q?CMwEBCAEBAQEBGwIGEoV1hTSHT4JeBYErAQEBjnyLCQ4IAQGBNQmFJIsIgkmOJ?= =?us-ascii?q?YoqhwYUHoEUDyeBaE8USYMkKQ8RCxmBZiA1AYgXAQEB?= X-IPAS-Result: =?us-ascii?q?A0BnBwCn94RYhrChVdFeGwEBAQMBAQEJAQEBFgEBAQMBAQE?= =?us-ascii?q?JAQEBgxIBAQEBAUE+gQkHg0yaZQEBBoEdgxuFW4QjhHCFMiqFeAKCDgdDFAEBA?= =?us-ascii?q?QEBAQEBAQEBEgEBAQgLCwodMIIzGYIeAQMBASMdARsdAQMBCwYDAgQHNwICIgE?= =?us-ascii?q?RAQUBHAaJAwEDCwUIDo8rkQ0/jAKCAwUBHIMJBYNMChknDVWCMwEBCAEBAQEBG?= =?us-ascii?q?wIGEoV1hTSHT4JeBYErAQEBjnyLCQ4IAQGBNQmFJIsIgkmOJYoqhwYUHoEUDye?= =?us-ascii?q?BaE8USYMkKQ8RCxmBZiA1AYgXAQEB?= X-IronPort-AV: E=Sophos;i="5.33,270,1477954800"; d="scan'208,217";a="210391587" Received: from mail-yw0-f176.google.com ([209.85.161.176]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 22 Jan 2017 19:23:12 +0100 Received: by mail-yw0-f176.google.com with SMTP id w75so123643908ywg.1 for ; Sun, 22 Jan 2017 10:23:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=1lSdETEi1s39KbBeoaTXH6641Smk8wrIkyx0jK9rfbc=; b=UZME3VFtT7dWCBAUGAX/22R9tXRI1bmwUQzPsOZyCeoK8Ct4QJr+ib+2NEadXoaLqU /ymhGarrCfNNzzswDKD6fgj8+4OQRkPbEo6jndVTgbR//MSQB0c3z3wxtE02WIIZPzFC ZtGZVaOZQYHKomTalHhDp7XVbGnexF04mGhWdXTcVLURml7CL0sMzYHQHHMc2Zx9sJx7 nHdeXdLRxm7dso+LMV6pZWEGF5RcStYK3bhcM1c63tzpxOGdrmVXTp6DaKa9D6A3dWt2 VRqrQ4zN0ijVNYLlrVVJBtC/7d7+a1/j2IlcKvQBJDG1gaEf/BY5StuW4ODLe0XkKn4L BCnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=1lSdETEi1s39KbBeoaTXH6641Smk8wrIkyx0jK9rfbc=; b=GCIY5z7Sd75Glye9XDydlXxQzjMOwi26qyH84Hcsnc4BVLJmSDNivIePDXr4qywGPT NwE5xbzs+ALTzubklZos/UQzzcv+FdfyBtYR5ZsVx/Z5BW2GpdnOzGhVVZSdmyJyHPt9 o4pkX4k9q4o6y0e95G0w8ADG2zfkH+3Bacs4of4cL4buRhZw8lJufkvCq3FfFzGh4Brx g2o7m4kP4yp0oy4u1/IqROrpxO//Gs9/RyYy+Zy/xMWtGKso83E7Ieq5IRRwN0bwgrlb 3eIcw9Tw3jbN60LgDiw3boX1jiiRq1tbi5Z2tT/XcOGNPvmW73MJSfNUUCWXWSBHlPMz 5T4w== X-Gm-Message-State: AIkVDXLOvLCYIl+q+qKfZwYRMVwH2moow0fl7pW7QXsS0lyjp98utXyngnjopRX+jj2miCVOZloWVyMFxgbJFw== X-Received: by 10.129.164.143 with SMTP id b137mr18349162ywh.117.1485109390822; Sun, 22 Jan 2017 10:23:10 -0800 (PST) MIME-Version: 1.0 Received: by 10.37.174.158 with HTTP; Sun, 22 Jan 2017 10:23:10 -0800 (PST) In-Reply-To: <4653711485104160@web7j.yandex.ru> References: <4653711485104160@web7j.yandex.ru> From: Evgeny Roubinchtein Date: Sun, 22 Jan 2017 13:23:10 -0500 Message-ID: To: =?UTF-8?B?0JDQvdC00YDQtdC5INCR0LXRgNCz0LzQsNC9?= Cc: caml-list@inria.fr Content-Type: multipart/alternative; boundary=94eb2c1295d2b1717e0546b2f9ea Subject: Re: [Caml-list] How floats are handled in bytecode interpreter? And other questions. --94eb2c1295d2b1717e0546b2f9ea Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable > 1. Is "Caml Virtual Machine =E2=80=94 Instruction set, v1.4" by Xavier Cl= erc - > http://cadmium.x9c.fr/distrib/caml-instructions.pdf up to date? He > describes virtual machine of 3.12, while current version is 4.04. Accordi= ng > to GitHub logs there were some changes in the VM. Did they touch > instruction set? > The definitive list of byte codes understood by the "vanila" CAML virtual machine is in byterun/caml/instruct.h, so one could, in theory compare the two lists side-by-side, if that is what you are asking. > 2. How are handled operations on floats in bytecode? In MosML, which uses > bytecode machine of CamlLight, they added set of instructions FLOATOFINT, > SMLNEGFLOAT, SMLADDFLOAT, SMLSUBFLOAT, SMLMULFLOAT, SMLDIVFLOAT, INTOFFLO= AT > and etc. > They are not handled in the byte code. They are handled by C code in the run time. Look around line 340 of bytecomp/bytegen.ml on Github to see how those calls are translated. --=20 Best, =D0=96=D0=B5=D0=BD=D1=8F --94eb2c1295d2b1717e0546b2f9ea Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

=
1. Is "Caml Virtual Machine =E2=80=94 Instruction set, v1.4" by X= avier Clerc - http://cadmium.x9c.fr/distrib/= caml-instructions.pdf up to date? He describes virtual machine of 3.12,= while current version is 4.04. According to GitHub logs there were some ch= anges in the VM. Did they touch instruction set?

=
The definitive list of byte codes understood by = the "vanila" CAML virtual machine is in byterun/caml/instruct.h, = so one could, in theory compare the two lists side-by-side, if that is what= you are asking.
=C2=A0
<= blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-l= eft:1px solid rgb(204,204,204);padding-left:1ex"> 2. How are handled operations on floats in bytecode? In MosML, which uses b= ytecode machine of CamlLight, they added set of instructions FLOATOFINT, SM= LNEGFLOAT, SMLADDFLOAT, SMLSUBFLOAT, SMLMULFLOAT, SMLDIVFLOAT, INTOFFLOAT a= nd etc.

They are not handled in the byt= e code. =C2=A0 They are handled by C code in the run time.=C2=A0 Look aroun= d line 340 of bytecomp/bytegen.ml on Gith= ub to see how those calls are translated.

--
Best,
=D0=96=D0=B5=D0=BD=D1=8F
=C2=A0

--94eb2c1295d2b1717e0546b2f9ea--