From 99c0a588a6b2d8e811fbf70f1168f97ca9e97a1d Mon Sep 17 00:00:00 2001 From: cxl Date: Thu, 2 Oct 2008 10:29:42 +0000 Subject: [PATCH] License fixes git-svn-id: svn://ultimatepp.org/upp/trunk@500 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/AnalyzeMap/AnalyzeMap.upp | 5 +- uppsrc/AnalyzeMap/Authors | 2 - uppsrc/AnalyzeMap/Copying | 43 +- uppsrc/AnalyzeMap/Copying-plain | 33 - uppsrc/AnalyzeMap/init | 4 + uppsrc/CbGen/Authors | 2 - uppsrc/CbGen/CbGen.upp | 5 +- uppsrc/CbGen/Copying | 43 +- uppsrc/CbGen/Copying-plain | 33 - uppsrc/CbGen/init | 4 + uppsrc/Crash/Authors | 2 - uppsrc/Crash/Copying | 43 +- uppsrc/Crash/Copying-plain | 33 - uppsrc/Crash/Crash.upp | 4 +- uppsrc/Crash/init | 4 + uppsrc/Crypto/Authors | 2 - uppsrc/Crypto/Copying | 43 +- uppsrc/Crypto/Copying-plain | 33 - uppsrc/Crypto/Crypto.upp | 8 +- uppsrc/Crypto/init | 4 + uppsrc/DocTypes/Authors | 2 - uppsrc/DocTypes/Copying | 43 +- uppsrc/DocTypes/Copying-plain | 33 - uppsrc/DocTypes/DocTypes.upp | 4 +- uppsrc/DocTypes/init | 7 + uppsrc/Docedit/Authors | 2 - uppsrc/Docedit/Copying | 43 +- uppsrc/Docedit/Copying-plain | 33 - uppsrc/Docedit/Docedit.upp | 7 +- uppsrc/Docedit/init | 5 + uppsrc/Geom/Authors | 2 - uppsrc/Geom/Coords/Authors | 2 - uppsrc/Geom/Coords/Coords.upp | 5 +- uppsrc/Geom/Coords/Copying | 43 +- uppsrc/Geom/Coords/Copying-plain | 33 - uppsrc/Geom/Coords/init | 5 + uppsrc/Geom/Copying | 43 +- uppsrc/Geom/Copying-plain | 33 - uppsrc/Geom/Ctrl/Authors | 2 - uppsrc/Geom/Ctrl/Copying | 43 +- uppsrc/Geom/Ctrl/Copying-plain | 33 - uppsrc/Geom/Ctrl/Ctrl.upp | 5 +- uppsrc/Geom/Ctrl/init | 8 + uppsrc/Geom/Draw/Authors | 2 - uppsrc/Geom/Draw/Copying | 43 +- uppsrc/Geom/Draw/Copying-plain | 33 - uppsrc/Geom/Draw/Draw.upp | 5 +- uppsrc/Geom/Draw/init | 8 + uppsrc/Geom/Geom.upp | 4 +- uppsrc/Geom/init | 4 + uppsrc/PaintGL/Authors | 2 - uppsrc/PaintGL/Copying | 43 +- uppsrc/PaintGL/Copying-plain | 33 - uppsrc/PaintGL/PaintGL.upp | 5 +- uppsrc/PaintGL/init | 3 + uppsrc/SqlCommander/Authors | 2 - uppsrc/SqlCommander/Copying | 43 +- uppsrc/SqlCommander/Copying-plain | 33 - uppsrc/SqlCommander/SqlCommander.upp | 4 +- uppsrc/SqlCommander/init | 8 + uppsrc/SqlCtrl/Authors | 2 - uppsrc/SqlCtrl/Copying | 43 +- uppsrc/SqlCtrl/Copying-plain | 33 - uppsrc/SqlCtrl/SqlCtrl.upp | 5 +- uppsrc/SqlCtrl/init | 9 + uppsrc/TCore/Authors | 2 - uppsrc/TCore/Copying | 43 +- uppsrc/TCore/Copying-plain | 33 - uppsrc/TCore/TCore.upp | 4 +- uppsrc/TCore/init | 9 + uppsrc/TCtrlLib/Authors | 2 - uppsrc/TCtrlLib/Copying | 43 +- uppsrc/TCtrlLib/Copying-plain | 33 - uppsrc/TCtrlLib/TCtrlLib.upp | 4 +- uppsrc/TCtrlLib/init | 12 + uppsrc/TDraw/Authors | 2 - uppsrc/TDraw/Copying | 43 +- uppsrc/TDraw/Copying-plain | 33 - uppsrc/TDraw/TDraw.upp | 4 +- uppsrc/TDraw/init | 7 + uppsrc/TSql/Authors | 2 - uppsrc/TSql/Copying | 43 +- uppsrc/TSql/Copying-plain | 33 - uppsrc/TSql/TSql.upp | 5 +- uppsrc/TSql/init | 8 + uppsrc/Updater/Authors | 2 - uppsrc/Updater/Copying | 43 +- uppsrc/Updater/Copying-plain | 33 - uppsrc/Updater/Updater.upp | 4 +- uppsrc/Updater/init | 4 + uppsrc/VectorDes/Authors | 2 - uppsrc/VectorDes/Copying | 43 +- uppsrc/VectorDes/Copying-plain | 33 - uppsrc/VectorDes/VectorDes.upp | 5 +- uppsrc/VectorDes/init | 9 + uppsrc/Web/SSL/Authors | 2 - uppsrc/Web/SSL/Copying | 43 +- uppsrc/Web/SSL/Copying-plain | 33 - uppsrc/Web/SSL/SSL.upp | 4 +- uppsrc/Web/TServ/Authors | 2 - uppsrc/Web/TServ/Copying | 43 +- uppsrc/Web/TServ/Copying-plain | 33 - uppsrc/Web/TServ/TServ.upp | 9 +- uppsrc/Web/TServ/init | 5 + uppsrc/Web/ctrl/Authors | 2 - uppsrc/Web/ctrl/Copying | 43 +- uppsrc/Web/ctrl/Copying-plain | 33 - uppsrc/Web/ctrl/ctrl.upp | 5 +- uppsrc/Web/ctrl/init | 6 + uppsrc/Web/weblink/Authors | 2 - uppsrc/Web/weblink/Copying | 43 +- uppsrc/Web/weblink/Copying-plain | 33 - uppsrc/Web/weblink/init | 5 + uppsrc/Web/weblink/weblink.upp | 5 +- uppsrc/Web/wisapi/Authors | 2 - uppsrc/Web/wisapi/Copying | 43 +- uppsrc/Web/wisapi/Copying-plain | 33 - uppsrc/Web/wisapi/init | 5 + uppsrc/Web/wisapi/wisapi.upp | 5 +- uppsrc/coff/uar/Authors | 1 - uppsrc/coff/uar/Copying | 43 +- uppsrc/coff/uar/Copying-plain | 33 - uppsrc/coff/uar/init | 4 + uppsrc/coff/uar/uar.upp | 5 +- uppsrc/coff/uld/Authors | 1 - uppsrc/coff/uld/Copying-plain | 33 - uppsrc/coff/uld/init | 4 + uppsrc/coff/uld/uld.upp | 5 +- uppsrc/docpp/Authors | 2 - uppsrc/docpp/Copying | 43 +- uppsrc/docpp/Copying-plain | 33 - uppsrc/docpp/docpp.upp | 5 +- uppsrc/docpp/init | 4 + uppsrc/ide/Browser/AUTHORS | 0 uppsrc/rw/Authors | 2 - uppsrc/rw/Copying | 43 +- uppsrc/rw/Copying-plain | 33 - uppsrc/rw/init | 4 + uppsrc/rw/rw.upp | 11 +- uppsrc/x86disas/Authors | 2 - uppsrc/x86disas/Copying | 30 - uppsrc/x86disas/Copying-plain | 33 - uppsrc/x86disas/main.cpp | 16 - uppsrc/x86disas/mnemonics.i | 547 ------ uppsrc/x86disas/opcmap.cpp | 2676 -------------------------- uppsrc/x86disas/syntax.cpp | 566 ------ uppsrc/x86disas/x86.cpp | 852 -------- uppsrc/x86disas/x86disas.cpp | 28 - uppsrc/x86disas/x86disas.h | 239 --- uppsrc/x86disas/x86disas.upp | 19 - 150 files changed, 674 insertions(+), 6778 deletions(-) delete mode 100644 uppsrc/AnalyzeMap/Authors delete mode 100644 uppsrc/AnalyzeMap/Copying-plain create mode 100644 uppsrc/AnalyzeMap/init delete mode 100644 uppsrc/CbGen/Authors delete mode 100644 uppsrc/CbGen/Copying-plain create mode 100644 uppsrc/CbGen/init delete mode 100644 uppsrc/Crash/Authors delete mode 100644 uppsrc/Crash/Copying-plain create mode 100644 uppsrc/Crash/init delete mode 100644 uppsrc/Crypto/Authors delete mode 100644 uppsrc/Crypto/Copying-plain create mode 100644 uppsrc/Crypto/init delete mode 100644 uppsrc/DocTypes/Authors delete mode 100644 uppsrc/DocTypes/Copying-plain create mode 100644 uppsrc/DocTypes/init delete mode 100644 uppsrc/Docedit/Authors delete mode 100644 uppsrc/Docedit/Copying-plain create mode 100644 uppsrc/Docedit/init delete mode 100644 uppsrc/Geom/Authors delete mode 100644 uppsrc/Geom/Coords/Authors delete mode 100644 uppsrc/Geom/Coords/Copying-plain create mode 100644 uppsrc/Geom/Coords/init delete mode 100644 uppsrc/Geom/Copying-plain delete mode 100644 uppsrc/Geom/Ctrl/Authors delete mode 100644 uppsrc/Geom/Ctrl/Copying-plain create mode 100644 uppsrc/Geom/Ctrl/init delete mode 100644 uppsrc/Geom/Draw/Authors delete mode 100644 uppsrc/Geom/Draw/Copying-plain create mode 100644 uppsrc/Geom/Draw/init create mode 100644 uppsrc/Geom/init delete mode 100644 uppsrc/PaintGL/Authors delete mode 100644 uppsrc/PaintGL/Copying-plain create mode 100644 uppsrc/PaintGL/init delete mode 100644 uppsrc/SqlCommander/Authors delete mode 100644 uppsrc/SqlCommander/Copying-plain create mode 100644 uppsrc/SqlCommander/init delete mode 100644 uppsrc/SqlCtrl/Authors delete mode 100644 uppsrc/SqlCtrl/Copying-plain create mode 100644 uppsrc/SqlCtrl/init delete mode 100644 uppsrc/TCore/Authors delete mode 100644 uppsrc/TCore/Copying-plain create mode 100644 uppsrc/TCore/init delete mode 100644 uppsrc/TCtrlLib/Authors delete mode 100644 uppsrc/TCtrlLib/Copying-plain create mode 100644 uppsrc/TCtrlLib/init delete mode 100644 uppsrc/TDraw/Authors delete mode 100644 uppsrc/TDraw/Copying-plain create mode 100644 uppsrc/TDraw/init delete mode 100644 uppsrc/TSql/Authors delete mode 100644 uppsrc/TSql/Copying-plain create mode 100644 uppsrc/TSql/init delete mode 100644 uppsrc/Updater/Authors delete mode 100644 uppsrc/Updater/Copying-plain create mode 100644 uppsrc/Updater/init delete mode 100644 uppsrc/VectorDes/Authors delete mode 100644 uppsrc/VectorDes/Copying-plain create mode 100644 uppsrc/VectorDes/init delete mode 100644 uppsrc/Web/SSL/Authors delete mode 100644 uppsrc/Web/SSL/Copying-plain delete mode 100644 uppsrc/Web/TServ/Authors delete mode 100644 uppsrc/Web/TServ/Copying-plain create mode 100644 uppsrc/Web/TServ/init delete mode 100644 uppsrc/Web/ctrl/Authors delete mode 100644 uppsrc/Web/ctrl/Copying-plain create mode 100644 uppsrc/Web/ctrl/init delete mode 100644 uppsrc/Web/weblink/Authors delete mode 100644 uppsrc/Web/weblink/Copying-plain create mode 100644 uppsrc/Web/weblink/init delete mode 100644 uppsrc/Web/wisapi/Authors delete mode 100644 uppsrc/Web/wisapi/Copying-plain create mode 100644 uppsrc/Web/wisapi/init delete mode 100644 uppsrc/coff/uar/Authors delete mode 100644 uppsrc/coff/uar/Copying-plain create mode 100644 uppsrc/coff/uar/init delete mode 100644 uppsrc/coff/uld/Authors delete mode 100644 uppsrc/coff/uld/Copying-plain create mode 100644 uppsrc/coff/uld/init delete mode 100644 uppsrc/docpp/Authors delete mode 100644 uppsrc/docpp/Copying-plain create mode 100644 uppsrc/docpp/init delete mode 100644 uppsrc/ide/Browser/AUTHORS delete mode 100644 uppsrc/rw/Authors delete mode 100644 uppsrc/rw/Copying-plain create mode 100644 uppsrc/rw/init delete mode 100644 uppsrc/x86disas/Authors delete mode 100644 uppsrc/x86disas/Copying delete mode 100644 uppsrc/x86disas/Copying-plain delete mode 100644 uppsrc/x86disas/main.cpp delete mode 100644 uppsrc/x86disas/mnemonics.i delete mode 100644 uppsrc/x86disas/opcmap.cpp delete mode 100644 uppsrc/x86disas/syntax.cpp delete mode 100644 uppsrc/x86disas/x86.cpp delete mode 100644 uppsrc/x86disas/x86disas.cpp delete mode 100644 uppsrc/x86disas/x86disas.h delete mode 100644 uppsrc/x86disas/x86disas.upp diff --git a/uppsrc/AnalyzeMap/AnalyzeMap.upp b/uppsrc/AnalyzeMap/AnalyzeMap.upp index a8170955b..86c625163 100644 --- a/uppsrc/AnalyzeMap/AnalyzeMap.upp +++ b/uppsrc/AnalyzeMap/AnalyzeMap.upp @@ -5,9 +5,8 @@ file imagehlp.dli, Analyze.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "GUI"; + diff --git a/uppsrc/AnalyzeMap/Authors b/uppsrc/AnalyzeMap/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/AnalyzeMap/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/AnalyzeMap/Copying b/uppsrc/AnalyzeMap/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/AnalyzeMap/Copying +++ b/uppsrc/AnalyzeMap/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/AnalyzeMap/Copying-plain b/uppsrc/AnalyzeMap/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/AnalyzeMap/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/AnalyzeMap/init b/uppsrc/AnalyzeMap/init new file mode 100644 index 000000000..b372e638f --- /dev/null +++ b/uppsrc/AnalyzeMap/init @@ -0,0 +1,4 @@ +#ifndef _AnalyzeMap_icpp_init_stub +#define _AnalyzeMap_icpp_init_stub +#include "CtrlLib/init" +#endif diff --git a/uppsrc/CbGen/Authors b/uppsrc/CbGen/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/CbGen/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/CbGen/CbGen.upp b/uppsrc/CbGen/CbGen.upp index ed1d4b14d..a081d7ea3 100644 --- a/uppsrc/CbGen/CbGen.upp +++ b/uppsrc/CbGen/CbGen.upp @@ -6,9 +6,8 @@ uses file CppGen.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "Normal" = ""; + diff --git a/uppsrc/CbGen/Copying b/uppsrc/CbGen/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/CbGen/Copying +++ b/uppsrc/CbGen/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/CbGen/Copying-plain b/uppsrc/CbGen/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/CbGen/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/CbGen/init b/uppsrc/CbGen/init new file mode 100644 index 000000000..794f15b39 --- /dev/null +++ b/uppsrc/CbGen/init @@ -0,0 +1,4 @@ +#ifndef _CbGen_icpp_init_stub +#define _CbGen_icpp_init_stub +#include "Core/init" +#endif diff --git a/uppsrc/Crash/Authors b/uppsrc/Crash/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Crash/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Crash/Copying b/uppsrc/Crash/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Crash/Copying +++ b/uppsrc/Crash/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Crash/Copying-plain b/uppsrc/Crash/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Crash/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Crash/Crash.upp b/uppsrc/Crash/Crash.upp index c73c51f0d..0ea3826b6 100644 --- a/uppsrc/Crash/Crash.upp +++ b/uppsrc/Crash/Crash.upp @@ -9,9 +9,7 @@ file crash.iml, crash.rc, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "GUI"; diff --git a/uppsrc/Crash/init b/uppsrc/Crash/init new file mode 100644 index 000000000..fc8503f3d --- /dev/null +++ b/uppsrc/Crash/init @@ -0,0 +1,4 @@ +#ifndef _Crash_icpp_init_stub +#define _Crash_icpp_init_stub +#include "CtrlLib/init" +#endif diff --git a/uppsrc/Crypto/Authors b/uppsrc/Crypto/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Crypto/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Crypto/Copying b/uppsrc/Crypto/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Crypto/Copying +++ b/uppsrc/Crypto/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Crypto/Copying-plain b/uppsrc/Crypto/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Crypto/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Crypto/Crypto.upp b/uppsrc/Crypto/Crypto.upp index 6f2ce22aa..fce0f24d7 100644 --- a/uppsrc/Crypto/Crypto.upp +++ b/uppsrc/Crypto/Crypto.upp @@ -1,8 +1,10 @@ +uses + Core; + file Crypto.h, BscF.cpp, Sha1.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/Crypto/init b/uppsrc/Crypto/init new file mode 100644 index 000000000..2c882cb87 --- /dev/null +++ b/uppsrc/Crypto/init @@ -0,0 +1,4 @@ +#ifndef _Crypto_icpp_init_stub +#define _Crypto_icpp_init_stub +#include "Core/init" +#endif diff --git a/uppsrc/DocTypes/Authors b/uppsrc/DocTypes/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/DocTypes/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/DocTypes/Copying b/uppsrc/DocTypes/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/DocTypes/Copying +++ b/uppsrc/DocTypes/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/DocTypes/Copying-plain b/uppsrc/DocTypes/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/DocTypes/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/DocTypes/DocTypes.upp b/uppsrc/DocTypes/DocTypes.upp index 8619a31a0..920e3c893 100644 --- a/uppsrc/DocTypes/DocTypes.upp +++ b/uppsrc/DocTypes/DocTypes.upp @@ -20,7 +20,5 @@ file Report.lay, DocTypes.usc, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/DocTypes/init b/uppsrc/DocTypes/init new file mode 100644 index 000000000..d8a9a4724 --- /dev/null +++ b/uppsrc/DocTypes/init @@ -0,0 +1,7 @@ +#ifndef _DocTypes_icpp_init_stub +#define _DocTypes_icpp_init_stub +#include "Draw/init" +#include "RichText/init" +#include "CtrlLib/init" +#include "PdfDraw/init" +#endif diff --git a/uppsrc/Docedit/Authors b/uppsrc/Docedit/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Docedit/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Docedit/Copying b/uppsrc/Docedit/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Docedit/Copying +++ b/uppsrc/Docedit/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Docedit/Copying-plain b/uppsrc/Docedit/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Docedit/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Docedit/Docedit.upp b/uppsrc/Docedit/Docedit.upp index 227b8290a..2af762fcf 100644 --- a/uppsrc/Docedit/Docedit.upp +++ b/uppsrc/Docedit/Docedit.upp @@ -11,9 +11,8 @@ file Docedit.cpp, Docedit.iml, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig - "Debug" = normal "GUI"; + "Debug" = "GUI"; + diff --git a/uppsrc/Docedit/init b/uppsrc/Docedit/init new file mode 100644 index 000000000..91bf37012 --- /dev/null +++ b/uppsrc/Docedit/init @@ -0,0 +1,5 @@ +#ifndef _Docedit_icpp_init_stub +#define _Docedit_icpp_init_stub +#include "docpp/init" +#include "RichEdit/init" +#endif diff --git a/uppsrc/Geom/Authors b/uppsrc/Geom/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Geom/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Geom/Coords/Authors b/uppsrc/Geom/Coords/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Geom/Coords/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Geom/Coords/Coords.upp b/uppsrc/Geom/Coords/Coords.upp index b6132fefe..1ef44cd51 100644 --- a/uppsrc/Geom/Coords/Coords.upp +++ b/uppsrc/Geom/Coords/Coords.upp @@ -10,6 +10,5 @@ file method.h, method.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/Geom/Coords/Copying b/uppsrc/Geom/Coords/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Geom/Coords/Copying +++ b/uppsrc/Geom/Coords/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Geom/Coords/Copying-plain b/uppsrc/Geom/Coords/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Geom/Coords/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Geom/Coords/init b/uppsrc/Geom/Coords/init new file mode 100644 index 000000000..cb45f856b --- /dev/null +++ b/uppsrc/Geom/Coords/init @@ -0,0 +1,5 @@ +#ifndef _Geom_Coords_icpp_init_stub +#define _Geom_Coords_icpp_init_stub +#include "TCore/init" +#include "Geom/init" +#endif diff --git a/uppsrc/Geom/Copying b/uppsrc/Geom/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Geom/Copying +++ b/uppsrc/Geom/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Geom/Copying-plain b/uppsrc/Geom/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Geom/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Geom/Ctrl/Authors b/uppsrc/Geom/Ctrl/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Geom/Ctrl/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Geom/Ctrl/Copying b/uppsrc/Geom/Ctrl/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Geom/Ctrl/Copying +++ b/uppsrc/Geom/Ctrl/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Geom/Ctrl/Copying-plain b/uppsrc/Geom/Ctrl/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Geom/Ctrl/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Geom/Ctrl/Ctrl.upp b/uppsrc/Geom/Ctrl/Ctrl.upp index c16fdbc40..1bb6834c4 100644 --- a/uppsrc/Geom/Ctrl/Ctrl.upp +++ b/uppsrc/Geom/Ctrl/Ctrl.upp @@ -16,6 +16,5 @@ file CoordCtrl.h, CoordCtrl.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/Geom/Ctrl/init b/uppsrc/Geom/Ctrl/init new file mode 100644 index 000000000..0be8a472b --- /dev/null +++ b/uppsrc/Geom/Ctrl/init @@ -0,0 +1,8 @@ +#ifndef _Geom_Ctrl_icpp_init_stub +#define _Geom_Ctrl_icpp_init_stub +#include "Geom\Draw/init" +#include "TCtrlLib/init" +#define BLITZ_INDEX__ F1B1C947DDF9AE825683C36D7A839B905 +#include "GeomCtrl_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/Geom/Draw/Authors b/uppsrc/Geom/Draw/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Geom/Draw/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Geom/Draw/Copying b/uppsrc/Geom/Draw/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Geom/Draw/Copying +++ b/uppsrc/Geom/Draw/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Geom/Draw/Copying-plain b/uppsrc/Geom/Draw/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Geom/Draw/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Geom/Draw/Draw.upp b/uppsrc/Geom/Draw/Draw.upp index d4e74e0d1..3e40773fe 100644 --- a/uppsrc/Geom/Draw/Draw.upp +++ b/uppsrc/Geom/Draw/Draw.upp @@ -22,6 +22,5 @@ file hrr.h, hrr.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/Geom/Draw/init b/uppsrc/Geom/Draw/init new file mode 100644 index 000000000..3a59e1de6 --- /dev/null +++ b/uppsrc/Geom/Draw/init @@ -0,0 +1,8 @@ +#ifndef _Geom_Draw_icpp_init_stub +#define _Geom_Draw_icpp_init_stub +#include "TDraw/init" +#include "plugin\png/init" +#include "plugin\gif/init" +#include "plugin\jpg/init" +#include "Geom\Coords/init" +#endif diff --git a/uppsrc/Geom/Geom.upp b/uppsrc/Geom/Geom.upp index a5361766e..4bccc8e1c 100644 --- a/uppsrc/Geom/Geom.upp +++ b/uppsrc/Geom/Geom.upp @@ -14,7 +14,5 @@ file delaunay.h, delaunay.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/Geom/init b/uppsrc/Geom/init new file mode 100644 index 000000000..85bd1e40a --- /dev/null +++ b/uppsrc/Geom/init @@ -0,0 +1,4 @@ +#ifndef _Geom_icpp_init_stub +#define _Geom_icpp_init_stub +#include "Core/init" +#endif diff --git a/uppsrc/PaintGL/Authors b/uppsrc/PaintGL/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/PaintGL/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/PaintGL/Copying b/uppsrc/PaintGL/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/PaintGL/Copying +++ b/uppsrc/PaintGL/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/PaintGL/Copying-plain b/uppsrc/PaintGL/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/PaintGL/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/PaintGL/PaintGL.upp b/uppsrc/PaintGL/PaintGL.upp index 96c6ad0fc..271326666 100644 --- a/uppsrc/PaintGL/PaintGL.upp +++ b/uppsrc/PaintGL/PaintGL.upp @@ -2,6 +2,5 @@ file PaintGL.h, PaintGL.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/PaintGL/init b/uppsrc/PaintGL/init new file mode 100644 index 000000000..24c15ecb1 --- /dev/null +++ b/uppsrc/PaintGL/init @@ -0,0 +1,3 @@ +#ifndef _PaintGL_icpp_init_stub +#define _PaintGL_icpp_init_stub +#endif diff --git a/uppsrc/SqlCommander/Authors b/uppsrc/SqlCommander/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/SqlCommander/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/SqlCommander/Copying b/uppsrc/SqlCommander/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/SqlCommander/Copying +++ b/uppsrc/SqlCommander/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/SqlCommander/Copying-plain b/uppsrc/SqlCommander/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/SqlCommander/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/SqlCommander/SqlCommander.upp b/uppsrc/SqlCommander/SqlCommander.upp index 10e6247a2..a1e00c4ce 100644 --- a/uppsrc/SqlCommander/SqlCommander.upp +++ b/uppsrc/SqlCommander/SqlCommander.upp @@ -15,9 +15,7 @@ file SqlCommander.cpp, login.lay, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = ".NOMYSQL GUI .NOAPPSQL", diff --git a/uppsrc/SqlCommander/init b/uppsrc/SqlCommander/init new file mode 100644 index 000000000..5bcc20cc1 --- /dev/null +++ b/uppsrc/SqlCommander/init @@ -0,0 +1,8 @@ +#ifndef _SqlCommander_icpp_init_stub +#define _SqlCommander_icpp_init_stub +#include "SqlCtrl/init" +#include "Oracle/init" +#include "OleDB/init" +#include "MySql/init" +#include "plugin\sqlite3/init" +#endif diff --git a/uppsrc/SqlCtrl/Authors b/uppsrc/SqlCtrl/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/SqlCtrl/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/SqlCtrl/Copying b/uppsrc/SqlCtrl/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/SqlCtrl/Copying +++ b/uppsrc/SqlCtrl/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/SqlCtrl/Copying-plain b/uppsrc/SqlCtrl/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/SqlCtrl/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/SqlCtrl/SqlCtrl.upp b/uppsrc/SqlCtrl/SqlCtrl.upp index dcbfe8f27..dff2ee4ee 100644 --- a/uppsrc/SqlCtrl/SqlCtrl.upp +++ b/uppsrc/SqlCtrl/SqlCtrl.upp @@ -20,6 +20,5 @@ file SqlCtrl.iml, SqlCtrl.usc, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/SqlCtrl/init b/uppsrc/SqlCtrl/init new file mode 100644 index 000000000..42caf9f30 --- /dev/null +++ b/uppsrc/SqlCtrl/init @@ -0,0 +1,9 @@ +#ifndef _SqlCtrl_icpp_init_stub +#define _SqlCtrl_icpp_init_stub +#include "Sql/init" +#include "CtrlLib/init" +#include "Report/init" +#define BLITZ_INDEX__ F592DB28DB64CE539553ABE0084C09AF2 +#include "SqlCtrl_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/TCore/Authors b/uppsrc/TCore/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/TCore/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/TCore/Copying b/uppsrc/TCore/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/TCore/Copying +++ b/uppsrc/TCore/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/TCore/Copying-plain b/uppsrc/TCore/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/TCore/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/TCore/TCore.upp b/uppsrc/TCore/TCore.upp index 17e9b1751..82707d26d 100644 --- a/uppsrc/TCore/TCore.upp +++ b/uppsrc/TCore/TCore.upp @@ -43,7 +43,5 @@ file dd_h.h, dd_cpp.h, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/TCore/init b/uppsrc/TCore/init new file mode 100644 index 000000000..635fc0e1c --- /dev/null +++ b/uppsrc/TCore/init @@ -0,0 +1,9 @@ +#ifndef _TCore_icpp_init_stub +#define _TCore_icpp_init_stub +#include "Core/init" +#include "Web/init" +#include "plugin\dbf/init" +#define BLITZ_INDEX__ FD099C670A4F9F921B7251BA8CFD143CC +#include "TCore_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/TCtrlLib/Authors b/uppsrc/TCtrlLib/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/TCtrlLib/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/TCtrlLib/Copying b/uppsrc/TCtrlLib/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/TCtrlLib/Copying +++ b/uppsrc/TCtrlLib/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/TCtrlLib/Copying-plain b/uppsrc/TCtrlLib/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/TCtrlLib/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/TCtrlLib/TCtrlLib.upp b/uppsrc/TCtrlLib/TCtrlLib.upp index 9fce3f155..f43d386bd 100644 --- a/uppsrc/TCtrlLib/TCtrlLib.upp +++ b/uppsrc/TCtrlLib/TCtrlLib.upp @@ -56,7 +56,5 @@ file Help\DlgHelpView.lay, Help\DlgHelpView.iml, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/TCtrlLib/init b/uppsrc/TCtrlLib/init new file mode 100644 index 000000000..4d6a216cd --- /dev/null +++ b/uppsrc/TCtrlLib/init @@ -0,0 +1,12 @@ +#ifndef _TCtrlLib_icpp_init_stub +#define _TCtrlLib_icpp_init_stub +#include "TDraw/init" +#include "CtrlLib/init" +#include "RichEdit/init" +#include "plugin\gif/init" +#include "PdfDraw/init" +#include "DocTypes/init" +#define BLITZ_INDEX__ F93CC30092DE132AD1876E89F7DE8ED06 +#include "TCtrlLib_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/TDraw/Authors b/uppsrc/TDraw/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/TDraw/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/TDraw/Copying b/uppsrc/TDraw/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/TDraw/Copying +++ b/uppsrc/TDraw/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/TDraw/Copying-plain b/uppsrc/TDraw/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/TDraw/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/TDraw/TDraw.upp b/uppsrc/TDraw/TDraw.upp index 4f1962fa1..a5d1ff851 100644 --- a/uppsrc/TDraw/TDraw.upp +++ b/uppsrc/TDraw/TDraw.upp @@ -15,7 +15,5 @@ file formula.h, formula.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/TDraw/init b/uppsrc/TDraw/init new file mode 100644 index 000000000..bac878116 --- /dev/null +++ b/uppsrc/TDraw/init @@ -0,0 +1,7 @@ +#ifndef _TDraw_icpp_init_stub +#define _TDraw_icpp_init_stub +#include "Draw/init" +#include "Geom/init" +#include "TCore/init" +#include "PdfDraw/init" +#endif diff --git a/uppsrc/TSql/Authors b/uppsrc/TSql/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/TSql/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/TSql/Copying b/uppsrc/TSql/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/TSql/Copying +++ b/uppsrc/TSql/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/TSql/Copying-plain b/uppsrc/TSql/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/TSql/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/TSql/TSql.upp b/uppsrc/TSql/TSql.upp index 41f875816..20254f8a4 100644 --- a/uppsrc/TSql/TSql.upp +++ b/uppsrc/TSql/TSql.upp @@ -15,6 +15,5 @@ file dict.h, dict.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/TSql/init b/uppsrc/TSql/init new file mode 100644 index 000000000..22c25517e --- /dev/null +++ b/uppsrc/TSql/init @@ -0,0 +1,8 @@ +#ifndef _TSql_icpp_init_stub +#define _TSql_icpp_init_stub +#include "Sql/init" +#include "TCore/init" +#define BLITZ_INDEX__ F3BB9158B36A73CCE79A422B64471481A +#include "TSql_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/Updater/Authors b/uppsrc/Updater/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Updater/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Updater/Copying b/uppsrc/Updater/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Updater/Copying +++ b/uppsrc/Updater/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Updater/Copying-plain b/uppsrc/Updater/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Updater/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Updater/Updater.upp b/uppsrc/Updater/Updater.upp index 23d4ceb80..02cbe84b1 100644 --- a/uppsrc/Updater/Updater.upp +++ b/uppsrc/Updater/Updater.upp @@ -7,9 +7,7 @@ file Updater.rc, Updater.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "GUI"; diff --git a/uppsrc/Updater/init b/uppsrc/Updater/init new file mode 100644 index 000000000..51d041b1d --- /dev/null +++ b/uppsrc/Updater/init @@ -0,0 +1,4 @@ +#ifndef _Updater_icpp_init_stub +#define _Updater_icpp_init_stub +#include "CtrlLib/init" +#endif diff --git a/uppsrc/VectorDes/Authors b/uppsrc/VectorDes/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/VectorDes/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/VectorDes/Copying b/uppsrc/VectorDes/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/VectorDes/Copying +++ b/uppsrc/VectorDes/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/VectorDes/Copying-plain b/uppsrc/VectorDes/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/VectorDes/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/VectorDes/VectorDes.upp b/uppsrc/VectorDes/VectorDes.upp index c28b4137d..a9f30bf6a 100644 --- a/uppsrc/VectorDes/VectorDes.upp +++ b/uppsrc/VectorDes/VectorDes.upp @@ -14,9 +14,8 @@ file VectorDes.iml, test.vec highlight cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "GUI"; + diff --git a/uppsrc/VectorDes/init b/uppsrc/VectorDes/init new file mode 100644 index 000000000..c81f270f0 --- /dev/null +++ b/uppsrc/VectorDes/init @@ -0,0 +1,9 @@ +#ifndef _VectorDes_icpp_init_stub +#define _VectorDes_icpp_init_stub +#include "CtrlLib/init" +#include "Web/init" +#include "RichText/init" +#define BLITZ_INDEX__ F77EAE8CE855C5C553562D46B7B18AD0D +#include "VectorDes_init.icpp" +#undef BLITZ_INDEX__ +#endif diff --git a/uppsrc/Web/SSL/Authors b/uppsrc/Web/SSL/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Web/SSL/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Web/SSL/Copying b/uppsrc/Web/SSL/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Web/SSL/Copying +++ b/uppsrc/Web/SSL/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Web/SSL/Copying-plain b/uppsrc/Web/SSL/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Web/SSL/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Web/SSL/SSL.upp b/uppsrc/Web/SSL/SSL.upp index 271e0d0b5..d5ba5b1da 100644 --- a/uppsrc/Web/SSL/SSL.upp +++ b/uppsrc/Web/SSL/SSL.upp @@ -35,7 +35,5 @@ file srcimp.tpp, srcdoc.tpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; diff --git a/uppsrc/Web/TServ/Authors b/uppsrc/Web/TServ/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Web/TServ/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Web/TServ/Copying b/uppsrc/Web/TServ/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Web/TServ/Copying +++ b/uppsrc/Web/TServ/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Web/TServ/Copying-plain b/uppsrc/Web/TServ/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Web/TServ/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Web/TServ/TServ.upp b/uppsrc/Web/TServ/TServ.upp index c20b921e3..5ad6601b5 100644 --- a/uppsrc/Web/TServ/TServ.upp +++ b/uppsrc/Web/TServ/TServ.upp @@ -2,9 +2,9 @@ uses Web, plugin\bz2; -target(WIN32) "tserv.exe"; +target(WIN32) tserv.exe; -target(!WIN32) "tserv"; +target(!WIN32) tserv; link(GNU3) "-Wl,-R -Wl,/usr/local/lib"; @@ -14,10 +14,9 @@ file version.h, tserv.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "", "" = "SHARED"; + diff --git a/uppsrc/Web/TServ/init b/uppsrc/Web/TServ/init new file mode 100644 index 000000000..6b837339f --- /dev/null +++ b/uppsrc/Web/TServ/init @@ -0,0 +1,5 @@ +#ifndef _Web_TServ_icpp_init_stub +#define _Web_TServ_icpp_init_stub +#include "Web/init" +#include "plugin\bz2/init" +#endif diff --git a/uppsrc/Web/ctrl/Authors b/uppsrc/Web/ctrl/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Web/ctrl/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Web/ctrl/Copying b/uppsrc/Web/ctrl/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Web/ctrl/Copying +++ b/uppsrc/Web/ctrl/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Web/ctrl/Copying-plain b/uppsrc/Web/ctrl/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Web/ctrl/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Web/ctrl/ctrl.upp b/uppsrc/Web/ctrl/ctrl.upp index 2ba2ae939..cfa4865b3 100644 --- a/uppsrc/Web/ctrl/ctrl.upp +++ b/uppsrc/Web/ctrl/ctrl.upp @@ -12,6 +12,5 @@ file web.iml, WebImg.h, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/Web/ctrl/init b/uppsrc/Web/ctrl/init new file mode 100644 index 000000000..99123ea7f --- /dev/null +++ b/uppsrc/Web/ctrl/init @@ -0,0 +1,6 @@ +#ifndef _Web_ctrl_icpp_init_stub +#define _Web_ctrl_icpp_init_stub +#include "Web/init" +#include "TCtrlLib/init" +#include "TDraw/init" +#endif diff --git a/uppsrc/Web/weblink/Authors b/uppsrc/Web/weblink/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Web/weblink/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Web/weblink/Copying b/uppsrc/Web/weblink/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Web/weblink/Copying +++ b/uppsrc/Web/weblink/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Web/weblink/Copying-plain b/uppsrc/Web/weblink/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Web/weblink/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Web/weblink/init b/uppsrc/Web/weblink/init new file mode 100644 index 000000000..c87ebbe3c --- /dev/null +++ b/uppsrc/Web/weblink/init @@ -0,0 +1,5 @@ +#ifndef _Web_weblink_icpp_init_stub +#define _Web_weblink_icpp_init_stub +#include "Web/init" +#include "plugin\bz2/init" +#endif diff --git a/uppsrc/Web/weblink/weblink.upp b/uppsrc/Web/weblink/weblink.upp index d4d20f1ac..aa07d179e 100644 --- a/uppsrc/Web/weblink/weblink.upp +++ b/uppsrc/Web/weblink/weblink.upp @@ -5,9 +5,8 @@ uses file weblink.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = ""; + diff --git a/uppsrc/Web/wisapi/Authors b/uppsrc/Web/wisapi/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/Web/wisapi/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/Web/wisapi/Copying b/uppsrc/Web/wisapi/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/Web/wisapi/Copying +++ b/uppsrc/Web/wisapi/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/Web/wisapi/Copying-plain b/uppsrc/Web/wisapi/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/Web/wisapi/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/Web/wisapi/init b/uppsrc/Web/wisapi/init new file mode 100644 index 000000000..0b201fd01 --- /dev/null +++ b/uppsrc/Web/wisapi/init @@ -0,0 +1,5 @@ +#ifndef _Web_wisapi_icpp_init_stub +#define _Web_wisapi_icpp_init_stub +#include "Web/init" +#include "TCore/init" +#endif diff --git a/uppsrc/Web/wisapi/wisapi.upp b/uppsrc/Web/wisapi/wisapi.upp index 5c49e8f36..bf957507c 100644 --- a/uppsrc/Web/wisapi/wisapi.upp +++ b/uppsrc/Web/wisapi/wisapi.upp @@ -12,9 +12,7 @@ file wisapi.cpp, wisapi.def, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "DLL MT"; @@ -22,3 +20,4 @@ mainconfig custom() "pre-link", "restserv w3svc", ""; + diff --git a/uppsrc/coff/uar/Authors b/uppsrc/coff/uar/Authors deleted file mode 100644 index 408e0afa1..000000000 --- a/uppsrc/coff/uar/Authors +++ /dev/null @@ -1 +0,0 @@ -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/coff/uar/Copying b/uppsrc/coff/uar/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/coff/uar/Copying +++ b/uppsrc/coff/uar/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/coff/uar/Copying-plain b/uppsrc/coff/uar/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/coff/uar/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/coff/uar/init b/uppsrc/coff/uar/init new file mode 100644 index 000000000..708f20422 --- /dev/null +++ b/uppsrc/coff/uar/init @@ -0,0 +1,4 @@ +#ifndef _coff_uar_icpp_init_stub +#define _coff_uar_icpp_init_stub +#include "coff/init" +#endif diff --git a/uppsrc/coff/uar/uar.upp b/uppsrc/coff/uar/uar.upp index 4de667bac..cbe752288 100644 --- a/uppsrc/coff/uar/uar.upp +++ b/uppsrc/coff/uar/uar.upp @@ -14,10 +14,9 @@ file lib.cpp, main.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "", "" = ".TEST"; + diff --git a/uppsrc/coff/uld/Authors b/uppsrc/coff/uld/Authors deleted file mode 100644 index 408e0afa1..000000000 --- a/uppsrc/coff/uld/Authors +++ /dev/null @@ -1 +0,0 @@ -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/coff/uld/Copying-plain b/uppsrc/coff/uld/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/coff/uld/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/coff/uld/init b/uppsrc/coff/uld/init new file mode 100644 index 000000000..802ad6b9e --- /dev/null +++ b/uppsrc/coff/uld/init @@ -0,0 +1,4 @@ +#ifndef _coff_uld_icpp_init_stub +#define _coff_uld_icpp_init_stub +#include "coff/init" +#endif diff --git a/uppsrc/coff/uld/uld.upp b/uppsrc/coff/uld/uld.upp index 6461157fc..7f40ea0a3 100644 --- a/uppsrc/coff/uld/uld.upp +++ b/uppsrc/coff/uld/uld.upp @@ -22,10 +22,9 @@ file diff, main.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = "", "" = ".TEST"; + diff --git a/uppsrc/docpp/Authors b/uppsrc/docpp/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/docpp/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/docpp/Copying b/uppsrc/docpp/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/docpp/Copying +++ b/uppsrc/docpp/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/docpp/Copying-plain b/uppsrc/docpp/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/docpp/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/docpp/docpp.upp b/uppsrc/docpp/docpp.upp index f91d684c7..f172a5de7 100644 --- a/uppsrc/docpp/docpp.upp +++ b/uppsrc/docpp/docpp.upp @@ -8,6 +8,5 @@ file cpplex.cpp, Parser.cpp, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; + diff --git a/uppsrc/docpp/init b/uppsrc/docpp/init new file mode 100644 index 000000000..1bc0db7dc --- /dev/null +++ b/uppsrc/docpp/init @@ -0,0 +1,4 @@ +#ifndef _docpp_icpp_init_stub +#define _docpp_icpp_init_stub +#include "RichEdit/init" +#endif diff --git a/uppsrc/ide/Browser/AUTHORS b/uppsrc/ide/Browser/AUTHORS deleted file mode 100644 index e69de29bb..000000000 diff --git a/uppsrc/rw/Authors b/uppsrc/rw/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/rw/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/rw/Copying b/uppsrc/rw/Copying index 306c7974b..f135f3633 100644 --- a/uppsrc/rw/Copying +++ b/uppsrc/rw/Copying @@ -1,30 +1,21 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) +Copyright 1998-2008 The U++ Project. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: +Redistribution and use in source and binary forms, with or without modification, are permitted +provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + 2. Redistributions in binary form must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. +THIS SOFTWARE IS PROVIDED BY THE U++ PROJECT ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD PROJECT OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/uppsrc/rw/Copying-plain b/uppsrc/rw/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/rw/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/rw/init b/uppsrc/rw/init new file mode 100644 index 000000000..aacac6778 --- /dev/null +++ b/uppsrc/rw/init @@ -0,0 +1,4 @@ +#ifndef _rw_icpp_init_stub +#define _rw_icpp_init_stub +#include "CtrlLib/init" +#endif diff --git a/uppsrc/rw/rw.upp b/uppsrc/rw/rw.upp index 98ac3dbbe..6ae2b2397 100644 --- a/uppsrc/rw/rw.upp +++ b/uppsrc/rw/rw.upp @@ -1,9 +1,9 @@ -uses - CtrlLib; - acceptflags IDERW; +uses + CtrlLib; + file Designer.h, Designer.lay, @@ -20,9 +20,8 @@ file rw.iml, rw.rc, Info readonly separator, - Copying, - Copying-plain, - Authors; + Copying; mainconfig "" = ""; + diff --git a/uppsrc/x86disas/Authors b/uppsrc/x86disas/Authors deleted file mode 100644 index f52ff393f..000000000 --- a/uppsrc/x86disas/Authors +++ /dev/null @@ -1,2 +0,0 @@ -Mirek Fidler -Tomas Rylek \ No newline at end of file diff --git a/uppsrc/x86disas/Copying b/uppsrc/x86disas/Copying deleted file mode 100644 index 306c7974b..000000000 --- a/uppsrc/x86disas/Copying +++ /dev/null @@ -1,30 +0,0 @@ -Copyright (C) 2005 Mirek Fidler, Tomas Rylek and various contributors (see AUTHORS) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies of the Software and its Copyright notices. In addition publicly -documented acknowledgment must be given that this software has been used if no -source code of this software is made available publicly. This includes -acknowledgments in either Copyright notices, Manuals, Publicity and Marketing -documents or any documentation provided with any product containing this -software. This License does not apply to any software that links to the -libraries provided by this software (statically or dynamically), but only to -the software provided. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------------ - -Please see the COPYING.PLAIN for a plain-english explanation of this notice -and it's intent. diff --git a/uppsrc/x86disas/Copying-plain b/uppsrc/x86disas/Copying-plain deleted file mode 100644 index 5b4491072..000000000 --- a/uppsrc/x86disas/Copying-plain +++ /dev/null @@ -1,33 +0,0 @@ -Plain English Copyright Notice - -This file is not intended to be the actual License. The reason this file -exists is that we here are programmers and engineers. We aren't lawyers. We -provide licenses that we THINK say the right things, but we have our own -intentions at heart. This is a plain-english explanation of what those -intentions are, and if you follow them you will be within the "spirit" of -the license. - -The intent is for us to enjoy writing software that is useful to us (the -AUTHORS) and allow others to use it freely and also benefit from the work we -put into making it. We don't want to restrict others using it. They should -not *HAVE* to make the source code of the applications they write that -simply link to these libraries (be that statically or dynamically), or for -them to be limited as to what license they choose to use (be it open, closed -or anything else). But we would like to know you are using these libraries. -We simply would like to know that it has been useful to someone. This is why -we ask for acknowledgement of some sort. - -You can do what you want with the source of this software - it doesn't -matter. We still have it here for ourselves and it is open and free to use -and download and play with. It can't be taken away. We don't really mind what -you do with the source to your software. We would simply like to know that -you are using it - especially if it makes it to a commerical product. If you -simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and -then make sure you include a paragraph or page in the manual or in the "About.." -box for the product with the copyright notice and state that you used this -software, we will be very happy. If you want to contribute back modifications -and fixes you may have made we will welcome those too with open arms (generally). -If you want help with changes needed, ports needed or features to be added, -arrangements can be easily made with some dialogue. - -Mirek Fidler diff --git a/uppsrc/x86disas/main.cpp b/uppsrc/x86disas/main.cpp deleted file mode 100644 index ad637e44b..000000000 --- a/uppsrc/x86disas/main.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "x86disas.h" -#include - -CONSOLE_APP_MAIN -{ - byte *q = (byte *)main; - dword ip = (dword) q; - - for(int i = 0; i < 50000; i++) { - char h[256]; - int size = NDisassemble(h, q, ip); - LOG(FormatIntHex(ip) << " " << h); - ip += size; - q += size; - } -} \ No newline at end of file diff --git a/uppsrc/x86disas/mnemonics.i b/uppsrc/x86disas/mnemonics.i deleted file mode 100644 index ed877cf66..000000000 --- a/uppsrc/x86disas/mnemonics.i +++ /dev/null @@ -1,547 +0,0 @@ -DO(aaa) -DO(aad) -DO(aam) -DO(aas) -DO(adc) -DO(add) -DO(addpd) -DO(addps) -DO(addsd) -DO(addss) -DO(and) -DO(andnpd) -DO(andnps) -DO(andpd) -DO(andps) -DO(arpl) -DO(bound) -DO(bsf) -DO(bsr) -DO(bswap) -DO(bt) -DO(btc) -DO(btr) -DO(bts) -DO(call) -DO(cbw) -DO(cdq) -DO(cdqe) -DO(clc) -DO(cld) -DO(clflush) -DO(cli) -DO(clts) -DO(cmc) -DO(cmovo) -DO(cmovno) -DO(cmovb) -DO(cmovnb) -DO(cmovz) -DO(cmovnz) -DO(cmovbe) -DO(cmovnbe) -DO(cmovs) -DO(cmovns) -DO(cmovp) -DO(cmovnp) -DO(cmovl) -DO(cmovnl) -DO(cmovle) -DO(cmovnle) -DO(cmp) -DO(cmppd) -DO(cmpps) -DO(cmps) -DO(cmpsb) -DO(cmpsd) -DO(cmpsq) -DO(cmpss) -DO(cmpsw) -DO(cmpxchg) -DO(cmpxchg8b) -DO(comisd) -DO(comiss) -DO(cpuid) -DO(cqd) -DO(cqo) -DO(cvtdq2pd) -DO(cvtdq2ps) -DO(cvtpd2dq) -DO(cvtpd2pi) -DO(cvtpd2ps) -DO(cvtpi2pd) -DO(cvtpi2ps) -DO(cvtps2dq) -DO(cvtps2pd) -DO(cvtps2pi) -DO(cvtsd2si) -DO(cvtsd2ss) -DO(cvtsi2sd) -DO(cvtsi2ss) -DO(cvtss2sd) -DO(cvtss2si) -DO(cvttpd2dq) -DO(cvttpd2pi) -DO(cvttps2dq) -DO(cvttps2pi) -DO(cvttsd2si) -DO(cvttsi2sd) -DO(cvttsi2ss) -DO(cvttss2si) -DO(cwd) -DO(cwde) -DO(daa) -DO(das) -DO(dec) -DO(div) -DO(divpd) -DO(divps) -DO(divsd) -DO(divss) -DO(emms) -DO(enter) -DO(esc) -DO(f2xm1) -DO(fsxm1) -DO(fabs) -DO(fadd) -DO(faddp) -DO(fbld) -DO(fbstp) -DO(fchs) -DO(fclex) -DO(fcmovb) -DO(fcmovbe) -DO(fcmove) -DO(fcmovnb) -DO(fcmovnbe) -DO(fcmovne) -DO(fcmovnu) -DO(fcmovu) -DO(fcom) -DO(fcomi) -DO(fcomp) -DO(fcomip) -DO(fcompp) -DO(fcos) -DO(fdecstp) -DO(fdiv) -DO(fdivp) -DO(fdivr) -DO(fdivrp) -DO(femms) -DO(ffree) -DO(fiadd) -DO(ficom) -DO(ficomp) -DO(fidiv) -DO(fidivr) -DO(fidw) -DO(fidwr) -DO(fild) -DO(fimul) -DO(fincstp) -DO(finit) -DO(fist) -DO(fistp) -DO(fisub) -DO(fisubr) -DO(fld) -DO(fld1) -DO(fldcw) -DO(fldenv) -DO(fldl2e) -DO(fldl2t) -DO(fldlg2) -DO(fldln2) -DO(fldlpi) -DO(fldx) -DO(fldz) -DO(fmul) -DO(fmulp) -DO(fnclex) -DO(fncstp) -DO(fninit) -DO(fnop) -DO(fnsave) -DO(fnstcw) -DO(fnstenv) -DO(fnstsw) -DO(fpatan) -DO(fprem) -DO(fprem1) -DO(fptan) -DO(fpxtract) -DO(frndint) -DO(frstor) -DO(fsave) -DO(fscale) -DO(fsin) -DO(fsincos) -DO(fsqrt) -DO(fst) -DO(fstcw) -DO(fstenv) -DO(fstp) -DO(fstsw) -DO(fsub) -DO(fsubp) -DO(fsubr) -DO(fsubrp) -DO(ftst) -DO(fucom) -DO(fucomi) -DO(fucomip) -DO(fucomp) -DO(fucompp) -DO(fwait) -DO(fxam) -DO(fxch) -DO(fxrstor) -DO(fxsave) -DO(fxtract) -DO(fyl2x) -DO(fyl2xp1) -DO(hlt) -DO(idiv) -DO(imul) -DO(in) -DO(inc) -DO(ins) -DO(insb) -DO(insd) -DO(insw) -DO(int) -DO(into) -DO(invd) -DO(invlpg) -DO(iret) -DO(iretd) -DO(iretq) -DO(jcxz) -DO(jecxz) -DO(jmp) -DO(jrcxz) -DO(jo) -DO(jno) -DO(jb) -DO(jnb) -DO(jz) -DO(jnz) -DO(jbe) -DO(jnbe) -DO(js) -DO(jns) -DO(jp) -DO(jnp) -DO(jl) -DO(jnl) -DO(jle) -DO(jnle) -DO(lahf) -DO(lar) -DO(ldmxcsr) -DO(lds) -DO(lea) -DO(leave) -DO(les) -DO(lfence) -DO(lfs) -DO(lgdt) -DO(lgs) -DO(lidt) -DO(lldt) -DO(lmsw) -DO(lock) -DO(lods) -DO(lodsb) -DO(lodsd) -DO(lodsq) -DO(lodsw) -DO(loop) -DO(loope) -DO(loopn) -DO(loopne) -DO(loopnz) -DO(loopz) -DO(lsl) -DO(lss) -DO(ltr) -DO(maskmovdqu) -DO(maskmovq) -DO(maxpd) -DO(maxps) -DO(maxsd) -DO(maxss) -DO(mfence) -DO(minpd) -DO(minps) -DO(minsd) -DO(minss) -DO(mov) -DO(movapd) -DO(movaps) -DO(movd) -DO(movdq2q) -DO(movdqa) -DO(movdqu) -DO(movhlps) -DO(movhpd) -DO(movhps) -DO(movlhps) -DO(movlpd) -DO(movlps) -DO(movmskpd) -DO(movmskps) -DO(movnig) -DO(movntdq) -DO(movnti) -DO(movntpd) -DO(movntps) -DO(movntq) -DO(movq) -DO(movq2dq) -DO(movqa) -DO(movs) -DO(movsb) -DO(movsd) -DO(movsq) -DO(movss) -DO(movsw) -DO(movsx) -DO(movsxd) -DO(movupd) -DO(movups) -DO(movzx) -DO(mul) -DO(mulpd) -DO(mulps) -DO(mulsd) -DO(mulss) -DO(neg) -DO(nop) -DO(not) -DO(or) -DO(orpd) -DO(orps) -DO(out) -DO(outs) -DO(outsb) -DO(outsd) -DO(outsw) -DO(packssdw) -DO(packsswb) -DO(packusdw) -DO(packuswb) -DO(paddb) -DO(paddd) -DO(paddq) -DO(paddsb) -DO(paddsw) -DO(paddusb) -DO(paddusw) -DO(paddw) -DO(pand) -DO(pandn) -DO(pavgb) -DO(pavgusb) -DO(pavgw) -DO(pcmpeqb) -DO(pcmpeqd) -DO(pcmpeqw) -DO(pcmpgtb) -DO(pcmpgtd) -DO(pcmpgtw) -DO(pextrw) -DO(pf2id) -DO(pf2iw) -DO(pfacc) -DO(pfadd) -DO(pfcmpeq) -DO(pfcmpge) -DO(pfcmpgt) -DO(pfmax) -DO(pfmin) -DO(pfmul) -DO(pfnacc) -DO(pfpnacc) -DO(pfrcp) -DO(pfrcpit1) -DO(pfrcpit2) -DO(pfrsqit1) -DO(pfrsqrt) -DO(pfsub) -DO(pfsubr) -DO(pi2fd) -DO(pi2fw) -DO(pinsrw) -DO(pmaddwd) -DO(pmaxsw) -DO(pmaxub) -DO(pminsw) -DO(pminub) -DO(pmovmskb) -DO(pmulhrw) -DO(pmulhuw) -DO(pmulhw) -DO(pmullw) -DO(pmuludq) -DO(pop) -DO(popa) -DO(popad) -DO(popf) -DO(popfd) -DO(popfq) -DO(por) -DO(prefetch) -DO(psadbw) -DO(pshufd) -DO(pshufhw) -DO(pshuflw) -DO(pshufw) -DO(pslld) -DO(pslldq) -DO(psllq) -DO(psllw) -DO(psrad) -DO(psraw) -DO(psraq) -DO(psrld) -DO(psrldq) -DO(psrlq) -DO(psrlw) -DO(psubb) -DO(psubd) -DO(psubq) -DO(psubsb) -DO(psubsw) -DO(psubusb) -DO(psubusw) -DO(psubw) -DO(pswapd) -DO(punpckhbw) -DO(punpckhdq) -DO(punpckhqdq) -DO(punpckhwd) -DO(punpcklbw) -DO(punpckldq) -DO(punpcklqdq) -DO(punpcklwd) -DO(push) -DO(pusha) -DO(pushad) -DO(pushf) -DO(pushfd) -DO(pushfq) -DO(pxor) -DO(rcl) -DO(rcpps) -DO(rcpss) -DO(rcr) -DO(rdivisr) -DO(rdmsr) -DO(rdpmc) -DO(rdtsc) -DO(rep) -DO(repne) -DO(ret) -DO(retf) -DO(rol) -DO(ror) -DO(rsm) -DO(rsqrtps) -DO(rsqrtss) -DO(sahf) -DO(sal) -DO(salc) -DO(sar) -DO(sbb) -DO(scas) -DO(scasb) -DO(scasd) -DO(scasq) -DO(scasw) -DO(seto) -DO(setno) -DO(setb) -DO(setnb) -DO(setz) -DO(setnz) -DO(setbe) -DO(setnbe) -DO(sets) -DO(setns) -DO(setp) -DO(setnp) -DO(setl) -DO(setnl) -DO(setle) -DO(setnle) -DO(sfence) -DO(sgdt) -DO(shl) -DO(shld) -DO(shr) -DO(shrd) -DO(shufpd) -DO(shufps) -DO(sidt) -DO(sldt) -DO(smsw) -DO(sqrtpd) -DO(sqrtps) -DO(sqrtsd) -DO(sqrtss) -DO(stc) -DO(std) -DO(sti) -DO(stmxcsr) -DO(stos) -DO(stosb) -DO(stosw) -DO(stosd) -DO(str) -DO(sub) -DO(subpd) -DO(subps) -DO(subsd) -DO(subss) -DO(swapgs) -DO(syscall) -DO(sysenter) -DO(sysexit) -DO(sysret) -DO(test) -DO(ucomisd) -DO(ucomiss) -DO(ud2) -DO(unpckhpd) -DO(unpckhps) -DO(unpcklpd) -DO(unpcklps) -DO(verr) -DO(verw) -DO(wait) -DO(wbinvd) -DO(wrmsr) -DO(xadd) -DO(xchg) -DO(xlat) -DO(xlatb) -DO(xor) -DO(xorpd) -DO(xorps) -DO(invalid) -DO(grp) -DO(a32) -DO(o32) -DO(es) -DO(fs) -DO(gs) -DO(cs) -DO(ds) -DO(ss) -DO(x87) -DO(3dnow) -DO(db) -DO(none) diff --git a/uppsrc/x86disas/opcmap.cpp b/uppsrc/x86disas/opcmap.cpp deleted file mode 100644 index 339fa13df..000000000 --- a/uppsrc/x86disas/opcmap.cpp +++ /dev/null @@ -1,2676 +0,0 @@ -/* - * opcmap.c - Opcode Maps for x86,x87,sse,mmx,3dnow - * - * Copyright (c) 2002,2003 Vivek Mohan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -#include "x86disas.h" - -/* operand types */ -#define Ap { OP_A, SZ_p } -#define M { OP_M, 0 } -#define Md { OP_M, SZ_d } -#define Mb { OP_M, SZ_b } -#define Mw { OP_M, SZ_w } -#define Ms { OP_M, SZ_w } -#define Mq { OP_M, SZ_q } -#define E { OP_E, 0 } -#define Eb { OP_E, SZ_b } -#define Ew { OP_E, SZ_w } -#define Ev { OP_E, SZ_v } -#define Evw { OP_E, SZ_vw } -#define Ed { OP_E, SZ_d } -#define Ex { OP_E, SZ_x } -#define Ep { OP_E, SZ_p } -#define Ez { OP_E, SZ_z } -#define G { OP_G, 0 } -#define Gx { OP_G, SZ_x } -#define Gb { OP_G, SZ_b } -#define Gw { OP_I, SZ_w } -#define Gv { OP_G, SZ_v } -#define Gd { OP_G, SZ_d } -#define Gvw { OP_G, SZ_vw } -#define I1 { OP_I1, 0 } -#define I3 { OP_I3, 0 } -#define Ib { OP_I, SZ_b } -#define Isb { OP_I, SZ_sb } -#define Iw { OP_I, SZ_w } -#define Iv { OP_I, SZ_v } -#define Iz { OP_I, SZ_z } -#define Jv { OP_J, SZ_v } -#define Jz { OP_J, SZ_z } -#define Jb { OP_J, SZ_b } -#define Jsb { OP_J, SZ_sb } -#define Jw { OP_J, SZ_w } -#define R { OP_R, SZ_m } -#define C { OP_C, 0 } -#define D { OP_D, 0 } -#define S { OP_S, 0 } -#define Ob { OP_O, SZ_b } -#define Ow { OP_O, SZ_w } -#define Ov { OP_O, SZ_v } -#define V { OP_V, 0 } -#define W { OP_W, 0 } -#define P { OP_P, 0 } -#define Q { OP_Q, 0 } -#define VR { OP_VR, 0 } -#define PR { OP_PR, 0 } -#define AL { OP_AL, 0 } -#define CL { OP_CL, 0 } -#define DL { OP_DL, 0 } -#define BL { OP_BL, 0 } -#define AH { OP_AH, 0 } -#define CH { OP_CH, 0 } -#define DH { OP_DH, 0 } -#define BH { OP_BH, 0 } -#define AX { OP_AX, 0 } -#define CX { OP_CX, 0 } -#define DX { OP_DX, 0 } -#define BX { OP_BX, 0 } -#define SI { OP_SI, 0 } -#define DI { OP_DI, 0 } -#define SP { OP_SP, 0 } -#define BP { OP_BP, 0 } -#define eAX { OP_eAX, 0 } -#define eCX { OP_eCX, 0 } -#define eDX { OP_eDX, 0 } -#define eBX { OP_eBX, 0 } -#define eSI { OP_eSI, 0 } -#define eDI { OP_eDI, 0 } -#define eSP { OP_eSP, 0 } -#define eBP { OP_eBP, 0 } -#define rAX { OP_rAX, 0 } -#define rCX { OP_rCX, 0 } -#define rBX { OP_rDX, 0 } -#define rDX { OP_rDX, 0 } -#define rSI { OP_rSI, 0 } -#define rDI { OP_rDI, 0 } -#define rSP { OP_rSP, 0 } -#define rBP { OP_rBP, 0 } -#define ES { OP_ES, 0 } -#define CS { OP_CS, 0 } -#define DS { OP_DS, 0 } -#define SS { OP_SS, 0 } -#define GS { OP_GS, 0 } -#define FS { OP_FS, 0 } -#define ST0 { OP_ST0, 0 } -#define ST1 { OP_ST1, 0 } -#define ST2 { OP_ST2, 0 } -#define ST3 { OP_ST3, 0 } -#define ST4 { OP_ST4, 0 } -#define ST5 { OP_ST5, 0 } -#define ST6 { OP_ST6, 0 } -#define ST7 { OP_ST7, 0 } -#define NOARG { 0, 0 } -#define ALr8b { OP_ALr8b,0 } -#define CLr9b { OP_CLr9b,0 } -#define DLr10b { OP_DLr10b,0 } -#define BLr11b { OP_BLr11b,0 } -#define AHr12b { OP_AHr12b,0 } -#define CHr13b { OP_CHr13b,0 } -#define DHr14b { OP_DHr14b,0 } -#define BHr15b { OP_BHr15b,0 } -#define rAXr8 { OP_rAXr8,0 } -#define rCXr9 { OP_rCXr9,0 } -#define rDXr10 { OP_rDXr10,0 } -#define rBXr11 { OP_rBXr11,0 } -#define rSPr12 { OP_rSPr12,0 } -#define rBPr13 { OP_rBPr13,0 } -#define rSIr14 { OP_rSIr14,0 } -#define rDIr15 { OP_rDIr15,0 } - - -/* Instruction Prefixes */ -#define Pnone 0x00 -#define Pa32 0x01 -#define Po32 0x02 -#define Prex 0x04 -#define Pdef64 0x08 -#define Pinv64 0x10 -#define Psuff 0x20 - -/* REX (AMD64) */ -#define _W 8 -#define _R 4 -#define _X 2 -#define _B 1 -#define REX(c) ((40 | c) << 16) - -/* 1 byte opcode */ -x86_TableEntry insntbl_1byte[0x100] = { - - /* Instruction, op1, op2, op3, Valid Prefixes */ - -/* 00 */ { Iadd, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 01 */ { Iadd, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 02 */ { Iadd, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 03 */ { Iadd, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 04 */ { Iadd, AL, Ib, NOARG, Pnone }, -/* 05 */ { Iadd, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 06 */ { Ipush, ES, NOARG, NOARG, Pnone }, -/* 07 */ { Ipop, ES, NOARG, NOARG, Pnone }, -/* 08 */ { Ior, Eb, Gb, NOARG, Prex | Pa32 | REX(_X|_B) }, -/* 09 */ { Ior, Ev, Gv, NOARG, Prex | Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 0A */ { Ior, Gb, Eb, NOARG, Prex | Pa32 | REX(_X|_B)}, -/* 0B */ { Ior, Gv, Ev, NOARG, Prex | Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 0C */ { Ior, AL, Ib, NOARG, Pnone }, -/* 0D */ { Ior, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 0E */ { Ipush, CS, NOARG, NOARG, Pnone }, -/* 0F */ { Iesc, NOARG, NOARG, NOARG, Pnone }, -/* 10 */ { Iadc, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 11 */ { Iadc, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 12 */ { Iadc, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 13 */ { Iadc, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 14 */ { Iadc, AL, Ib, NOARG, Pnone }, -/* 15 */ { Iadc, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 16 */ { Ipush, SS, NOARG, NOARG, Pnone }, -/* 17 */ { Ipop, SS, NOARG, NOARG, Pnone }, -/* 18 */ { Isbb, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 19 */ { Isbb, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 1A */ { Isbb, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 1B */ { Isbb, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 1C */ { Isbb, AL, Ib, NOARG, Pnone }, -/* 1D */ { Isbb, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 1E */ { Ipush, DS, NOARG, NOARG, Pnone }, -/* 1F */ { Ipop, DS, NOARG, NOARG, Pnone }, -/* 20 */ { Iand, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 21 */ { Iand, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 22 */ { Iand, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 23 */ { Iand, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 24 */ { Iand, AL, Ib, NOARG, Pnone }, -/* 25 */ { Iand, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 26 */ { Ies, ES, NOARG, NOARG, Pnone }, -/* 27 */ { Idaa, NOARG, NOARG, NOARG, Pnone }, -/* 28 */ { Isub, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 29 */ { Isub, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 2A */ { Isub, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 2B */ { Isub, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 2C */ { Isub, AL, Ib, NOARG, Pnone }, -/* 2D */ { Isub, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 2E */ { Ics, CS, NOARG, NOARG, Pnone }, -/* 2F */ { Idas, NOARG, NOARG, NOARG, Prex | Po32 | REX(_W) }, -/* 30 */ { Ixor, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 31 */ { Ixor, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 32 */ { Ixor, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 33 */ { Ixor, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 34 */ { Ixor, AL, Ib, NOARG, Pnone }, -/* 35 */ { Ixor, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 36 */ { Iss, ES, NOARG, NOARG, Pnone }, -/* 37 */ { Iaaa, NOARG, NOARG, NOARG, Pnone }, -/* 38 */ { Icmp, Eb, Gb, NOARG, Pa32 | REX(_X|_B) }, -/* 39 */ { Icmp, Ev, Gv, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 3A */ { Icmp, Gb, Eb, NOARG, Pa32 | REX(_X|_B) }, -/* 3B */ { Icmp, Gv, Ev, NOARG, Pa32 | Po32 | REX(_W|_R|_X|_B) }, -/* 3C */ { Icmp, AL, Ib, NOARG, Pnone }, -/* 3D */ { Icmp, rAX, Iv, NOARG, Prex | Po32 | REX(_W) }, -/* 3E */ { Ids, ES, NOARG, NOARG, Pnone }, -/* 3F */ { Iaas, NOARG, NOARG, NOARG, Pnone }, -/* 40 */ { Iinc, eAX, NOARG, NOARG, Po32 }, -/* 41 */ { Iinc, eCX, NOARG, NOARG, Po32 }, -/* 42 */ { Iinc, eDX, NOARG, NOARG, Po32 }, -/* 43 */ { Iinc, eBX, NOARG, NOARG, Po32 }, -/* 44 */ { Iinc, eSP, NOARG, NOARG, Po32 }, -/* 45 */ { Iinc, eBP, NOARG, NOARG, Po32 }, -/* 46 */ { Iinc, eSI, NOARG, NOARG, Po32 }, -/* 47 */ { Iinc, eDI, NOARG, NOARG, Po32 }, -/* 48 */ { Idec, eAX, NOARG, NOARG, Po32 }, -/* 49 */ { Idec, eCX, NOARG, NOARG, Po32 }, -/* 4A */ { Idec, eDX, NOARG, NOARG, Po32 }, -/* 4B */ { Idec, eBX, NOARG, NOARG, Po32 }, -/* 4C */ { Idec, eSP, NOARG, NOARG, Po32 }, -/* 4D */ { Idec, eBP, NOARG, NOARG, Po32 }, -/* 4E */ { Idec, eSI, NOARG, NOARG, Po32 }, -/* 4F */ { Idec, eDI, NOARG, NOARG, Po32 }, -/* 50 */ { Ipush, rAXr8, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 51 */ { Ipush, rCXr9, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 52 */ { Ipush, rDXr10, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 53 */ { Ipush, rBXr11, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 54 */ { Ipush, rSPr12, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 55 */ { Ipush, rBPr13, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 56 */ { Ipush, rSIr14, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 57 */ { Ipush, rDIr15, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 58 */ { Ipop, rAXr8, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 59 */ { Ipop, rCXr9, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5A */ { Ipop, rDXr10, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5B */ { Ipop, rBXr11, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5C */ { Ipop, rSPr12, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5D */ { Ipop, rBPr13, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5E */ { Ipop, rSIr14, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 5F */ { Ipop, rDIr15, NOARG, NOARG, Po32 | Pdef64 | REX(_B) }, -/* 60 */ { Ipusha, NOARG, NOARG, NOARG, Po32 | Pinv64 | Psuff }, -/* 61 */ { Ipopa, NOARG, NOARG, NOARG, Po32 | Pinv64 | Psuff }, -/* 62 */ { Ibound, Gv, E, NOARG, Po32 | Pa32 | Pinv64 }, -/* 63 */ { Iarpl, Ew, Gw, NOARG, Pa32 | Pinv64 }, -/* 64 */ { Ifs, ES, NOARG, NOARG, Pnone }, -/* 65 */ { Igs, GS, NOARG, NOARG, Pnone }, -/* 66 */ { Ia32, NOARG, NOARG, NOARG, Pnone }, -/* 67 */ { Io32, NOARG, NOARG, NOARG, Pnone }, -/* 68 */ { Ipush, Iv, NOARG, NOARG, Po32 }, -/* 69 */ { Iimul, Gv, Ev, Iv, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 6A */ { Ipush, Ib, NOARG, NOARG, Pnone }, -/* 6B */ { Iimul, Gv, Ev, Isb, Po32 | Po32 | REX(_W|_R|_X|_B) }, -/* 6C */ { Iinsb, NOARG, NOARG, NOARG, Pnone }, -/* 6D */ { Iins, NOARG, NOARG, NOARG, Po32 | Psuff }, -/* 6E */ { Ioutsb, NOARG, NOARG, NOARG, Pnone }, -/* 6F */ { Iouts, NOARG, NOARG, NOARG, Po32 | Psuff }, -/* 70 */ { Ijo, Jb, NOARG, NOARG, Pnone }, -/* 71 */ { Ijno, Jb, NOARG, NOARG, Pnone }, -/* 72 */ { Ijb, Jb, NOARG, NOARG, Pnone }, -/* 73 */ { Ijnb, Jb, NOARG, NOARG, Pnone }, -/* 74 */ { Ijz, Jb, NOARG, NOARG, Pnone }, -/* 75 */ { Ijnz, Jb, NOARG, NOARG, Pnone }, -/* 76 */ { Ijbe, Jb, NOARG, NOARG, Pnone }, -/* 77 */ { Ijnbe, Jb, NOARG, NOARG, Pnone }, -/* 78 */ { Ijs, Jb, NOARG, NOARG, Pnone }, -/* 79 */ { Ijns, Jb, NOARG, NOARG, Pnone }, -/* 7A */ { Ijp, Jb, NOARG, NOARG, Pnone }, -/* 7B */ { Ijnp, Jb, NOARG, NOARG, Pnone }, -/* 7C */ { Ijl, Jb, NOARG, NOARG, Pnone }, -/* 7D */ { Ijnl, Jb, NOARG, NOARG, Pnone }, -/* 7E */ { Ijle, Jb, NOARG, NOARG, Pnone }, -/* 7F */ { Ijnle, Jb, NOARG, NOARG, Pnone }, -/* 80 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 81 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 82 */ { Igrp, NOARG, NOARG, NOARG, Pinv64 }, -/* 83 */ { Igrp, Ev, Isb, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 84 */ { Itest, Eb, Gb, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 85 */ { Itest, Ev, Gv, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 86 */ { Ixchg, Eb, Gb, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 87 */ { Ixchg, Ev, Gv, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 88 */ { Imov, Eb, Gb, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 89 */ { Imov, Ev, Gv, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 8A */ { Imov, Gb, Eb, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 8B */ { Imov, Gv, Ev, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 8C */ { Imov, Ev, S, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 8D */ { Ilea, Gv, E, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 8E */ { Imov, S, Ev, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 8F */ { Ipop, Ev, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 90 */ { Ixchg, rAXr8, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 91 */ { Ixchg, rCXr9, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 92 */ { Ixchg, rDXr10, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 93 */ { Ixchg, rBXr11, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 94 */ { Ixchg, rSPr12, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 95 */ { Ixchg, rBPr13, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 96 */ { Ixchg, rSIr14, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 97 */ { Ixchg, rDIr15, rAX, NOARG, Po32 | REX(_W|_B) }, -/* 98 */ { Icbw, NOARG, NOARG, NOARG, Po32 }, -/* 99 */ { Icwd, NOARG, NOARG, NOARG, Po32 }, -/* 9A */ { Icall, Ap, NOARG, NOARG, Pa32 | Pinv64 }, -/* 9B */ { Iwait, NOARG, NOARG, NOARG, Pnone }, -/* 9C */ { Ipushf, NOARG, NOARG, NOARG, Po32 | Psuff }, -/* 9D */ { Ipopf, NOARG, NOARG, NOARG, Po32 | Psuff }, -/* 9E */ { Isahf, NOARG, NOARG, NOARG, Pnone }, -/* 9F */ { Ilahf, NOARG, NOARG, NOARG, Pnone }, -/* A0 */ { Imov, AL, Ob, NOARG, Pnone }, -/* A1 */ { Imov, rAX, Ov, NOARG, Po32 }, -/* A2 */ { Imov, Ob, AL, NOARG, Pnone }, -/* A3 */ { Imov, Ov, rAX, NOARG, Po32 }, -/* A4 */ { Imovsb, NOARG, NOARG, NOARG, Pnone }, -/* A5 */ { Imovs, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* A6 */ { Icmpsb, NOARG, NOARG, NOARG, Pnone }, -/* A7 */ { Icmps, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* A8 */ { Itest, AL, Ib, NOARG, Pnone }, -/* A9 */ { Itest, rAX, Iv, NOARG, Po32 | REX(_W) }, -/* AA */ { Istosb, NOARG, NOARG, NOARG, Pnone }, -/* AB */ { Istos, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* AC */ { Ilodsb, NOARG, NOARG, NOARG, Pnone }, -/* AD */ { Ilods, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* AE */ { Iscasb, NOARG, NOARG, NOARG, Pnone }, -/* AF */ { Iscas, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* B0 */ { Imov, ALr8b, Ib, NOARG, REX(_B) }, -/* B1 */ { Imov, CLr9b, Ib, NOARG, REX(_B) }, -/* B2 */ { Imov, DLr10b, Ib, NOARG, REX(_B) }, -/* B3 */ { Imov, BLr11b, Ib, NOARG, REX(_B) }, -/* B4 */ { Imov, AHr12b, Ib, NOARG, REX(_B) }, -/* B5 */ { Imov, CHr13b, Ib, NOARG, REX(_B) }, -/* B6 */ { Imov, DHr14b, Ib, NOARG, REX(_B) }, -/* B7 */ { Imov, BHr15b, Ib, NOARG, REX(_B) }, -/* B8 */ { Imov, rAXr8, Iv, NOARG, Po32 | REX(_W|_B) }, -/* B9 */ { Imov, rCXr9, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BA */ { Imov, rDXr10, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BB */ { Imov, rBXr11, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BC */ { Imov, rSPr12, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BD */ { Imov, rBPr13, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BE */ { Imov, rSIr14, Iv, NOARG, Po32 | REX(_W|_B) }, -/* BF */ { Imov, rDIr15, Iv, NOARG, Po32 | REX(_W|_B) }, -/* C0 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C1 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C2 */ { Iret, Iw, NOARG, NOARG, Pnone }, -/* C3 */ { Iret, NOARG, NOARG, NOARG, Pnone }, -/* C4 */ { Iles, Gv, E, NOARG, Po32 | Pa32 | Pinv64 }, -/* C5 */ { Ilds, Gv, E, NOARG, Po32 | Pa32 | Pinv64 }, -/* C6 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C8 */ { Ienter, Iw, Ib, NOARG, Pnone }, -/* C9 */ { Ileave, NOARG, NOARG, NOARG, Pnone }, -/* CA */ { Iretf, Iw, NOARG, NOARG, Pnone }, -/* CB */ { Iretf, NOARG, NOARG, NOARG, Pnone }, -/* CC */ { Iint, I3, NOARG, NOARG, Pnone }, -/* CD */ { Iint, Ib, NOARG, NOARG, Pnone }, -/* CE */ { Iinto, NOARG, NOARG, NOARG, Pinv64 }, -/* CF */ { Iiret, NOARG, NOARG, NOARG, Psuff | REX(_W) }, -/* D0 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* D1 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* D2 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* D3 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* D4 */ { Iaam, Ib, NOARG, NOARG, Pinv64 }, -/* D5 */ { Iaad, Ib, NOARG, NOARG, Pinv64 }, -/* D6 */ { Isalc, NOARG, NOARG, NOARG, Pinv64 }, -/* D7 */ { Ixlat, NOARG, NOARG, NOARG, Pnone }, -/* D8 */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* D9 */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DA */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DB */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DC */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DD */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DE */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* DF */ { Ix87, NOARG, NOARG, NOARG, Pnone }, -/* E0 */ { Iloopn, Jb, NOARG, NOARG, Pnone }, -/* E1 */ { Iloope, Jb, NOARG, NOARG, Pnone }, -/* E2 */ { Iloop, Jb, NOARG, NOARG, Pnone }, -/* E3 */ { Ijcxz, Jb, NOARG, NOARG, Pnone }, -/* E4 */ { Iin, AL, Ib, NOARG, Pnone }, -/* E5 */ { Iin, eAX, Ib, NOARG, Pnone }, -/* E6 */ { Iout, Ib, AL, NOARG, Pnone }, -/* E7 */ { Iout, Ib, eAX, NOARG, Pnone }, -/* E8 */ { Icall, Jv, NOARG, NOARG, Po32 }, -/* E9 */ { Ijmp, Jv, NOARG, NOARG, Po32 }, -/* EA */ { Ijmp, Ap, NOARG, NOARG, Pinv64 }, -/* EB */ { Ijmp, Jb, NOARG, NOARG, Pnone }, -/* EC */ { Iin, AL, DX, NOARG, Pnone }, -/* ED */ { Iin, eAX, DX, NOARG, Pnone }, -/* EE */ { Iout, DX, AL, NOARG, Pnone }, -/* ED */ { Iout, DX, eAX, NOARG, Pnone }, -/* F0 */ { Ilock, NOARG, NOARG, NOARG, Pnone }, -/* F1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F2 */ { Irepne, NOARG, NOARG, NOARG, Pnone }, -/* F3 */ { Irep, NOARG, NOARG, NOARG, Pnone }, -/* F4 */ { Ihlt, NOARG, NOARG, NOARG, Pnone }, -/* F5 */ { Icmc, NOARG, NOARG, NOARG, Pnone }, -/* F6 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* F7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* F8 */ { Iclc, NOARG, NOARG, NOARG, Pnone }, -/* F9 */ { Istc, NOARG, NOARG, NOARG, Pnone }, -/* FA */ { Icli, NOARG, NOARG, NOARG, Pnone }, -/* FB */ { Isti, NOARG, NOARG, NOARG, Pnone }, -/* FC */ { Icld, NOARG, NOARG, NOARG, Pnone }, -/* FD */ { Istd, NOARG, NOARG, NOARG, Pnone }, -/* FE */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* FF */ { Igrp, NOARG, NOARG, NOARG, Pnone } - -}; - - -/* prefix n/a - This is the table for 2byte no-prefix opcodes - */ -x86_TableEntry insntbl_2byte[0x100] = { - - /* Instruction, op1, op2, op3, Valid Prefixes */ - -/* 00 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 01 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 02 */ { Ilar, Gv, Ew, NOARG, Po32 }, -/* 03 */ { Ilsl, Gv, Ew, NOARG, Po32 }, -/* 04 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 05 */ { Isyscall, NOARG, NOARG, NOARG, Pnone }, -/* 06 */ { Iclts, NOARG, NOARG, NOARG, Pnone }, -/* 07 */ { Isysret, NOARG, NOARG, NOARG, Pnone }, -/* 08 */ { Iinvd, NOARG, NOARG, NOARG, Pnone }, -/* 09 */ { Iwbinvd, NOARG, NOARG, NOARG, Pnone }, -/* 0A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0B */ { Iud2, NOARG, NOARG, NOARG, Pnone }, -/* 0C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0D */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 0E */ { Ifemms, NOARG, NOARG, NOARG, Pnone }, -/* 0F */ { I3dnow, NOARG, NOARG, NOARG, Pnone }, -/* 10 */ { Imovups, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 11 */ { Imovups, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 12 */ { Imovlps, V, M, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 13 */ { Imovlps, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 14 */ { Iunpcklps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 15 */ { Iunpckhps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 16 */ { Imovhps, V, M, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 17 */ { Imovhps, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 18 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 19 */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1A */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1B */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1C */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1D */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1E */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 1F */ { Inop, NOARG, NOARG, NOARG, Pinv64 }, -/* 20 */ { Imov, R, C, NOARG, Pnone }, -/* 21 */ { Imov, R, D, NOARG, Pnone }, -/* 22 */ { Imov, C, R, NOARG, Pnone }, -/* 23 */ { Imov, D, R, NOARG, Pnone }, -/* 24 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 25 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 26 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 27 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 28 */ { Imovaps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 29 */ { Imovaps, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2A */ { Icvtpi2ps, V, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2B */ { Imovntps, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2C */ { Icvttps2pi, P, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2D */ { Icvtps2pi, P, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2E */ { Iucomiss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2F */ { Icomiss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 30 */ { Iwrmsr, NOARG, NOARG, NOARG, }, -/* 31 */ { Irdtsc, NOARG, NOARG, NOARG, }, -/* 32 */ { Irdmsr, NOARG, NOARG, NOARG, }, -/* 33 */ { Irdpmc, NOARG, NOARG, NOARG, }, -/* 34 */ { Isysenter, NOARG, NOARG, NOARG, Pinv64 }, -/* 35 */ { Isysexit, NOARG, NOARG, NOARG, Pinv64 }, -/* 36 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 37 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 38 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 39 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 40 */ { Icmovo, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 41 */ { Icmovno, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 42 */ { Icmovb, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 43 */ { Icmovnb, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 44 */ { Icmovz, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 45 */ { Icmovnz, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 46 */ { Icmovbe, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 47 */ { Icmovnbe, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 48 */ { Icmovs, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 49 */ { Icmovns, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4A */ { Icmovp, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4B */ { Icmovnp, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4C */ { Icmovl, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4D */ { Icmovnl, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4E */ { Icmovle, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 4F */ { Icmovnle, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* 50 */ { Imovmskps, Gv, VR, NOARG, Po32 | REX(_W|_R|_B) }, -/* 51 */ { Isqrtps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 52 */ { Irsqrtps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 53 */ { Ircpps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 54 */ { Iandps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 55 */ { Iandnps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 56 */ { Iorps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 57 */ { Ixorps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 58 */ { Iaddps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 59 */ { Imulps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5A */ { Icvtps2pd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5B */ { Icvtdq2ps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5C */ { Isubps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5D */ { Iminps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5E */ { Idivps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5F */ { Imaxps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 60 */ { Ipunpcklbw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 61 */ { Ipunpcklwd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 62 */ { Ipunpckldq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 63 */ { Ipackusdw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 64 */ { Ipcmpgtb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 65 */ { Ipcmpgtw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 66 */ { Ipcmpgtd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 67 */ { Ipacksswb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 68 */ { Ipunpckhbw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 69 */ { Ipunpckhwd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6A */ { Ipunpckhdq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6B */ { Ipackssdw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6E */ { Imovd, P, Ex, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6F */ { Imovq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 70 */ { Ipshufw, P, Q, Ib, Pa32 | REX(_R|_X|_B) }, -/* 71 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 72 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 73 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 74 */ { Ipcmpeqb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 75 */ { Ipcmpeqw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 76 */ { Ipcmpeqd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 77 */ { Iemms, NOARG, NOARG, NOARG, Pnone }, -/* 78 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 79 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7E */ { Imovd, Ex, P, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 7F */ { Imovq, Q, P, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 80 */ { Ijo, Jz, NOARG, NOARG, Po32 }, -/* 81 */ { Ijno, Jz, NOARG, NOARG, Po32 }, -/* 82 */ { Ijb, Jz, NOARG, NOARG, Po32 }, -/* 83 */ { Ijnb, Jz, NOARG, NOARG, Po32 }, -/* 84 */ { Ijz, Jz, NOARG, NOARG, Po32 }, -/* 85 */ { Ijnz, Jz, NOARG, NOARG, Po32 }, -/* 86 */ { Ijbe, Jz, NOARG, NOARG, Po32 }, -/* 87 */ { Ijnbe, Jz, NOARG, NOARG, Po32 }, -/* 88 */ { Ijs, Jz, NOARG, NOARG, Po32 }, -/* 89 */ { Ijns, Jz, NOARG, NOARG, Po32 }, -/* 8A */ { Ijp, Jz, NOARG, NOARG, Po32 }, -/* 8B */ { Ijnp, Jz, NOARG, NOARG, Po32 }, -/* 8C */ { Ijl, Jz, NOARG, NOARG, Po32 }, -/* 8D */ { Ijnl, Jz, NOARG, NOARG, Po32 }, -/* 8E */ { Ijle, Jz, NOARG, NOARG, Po32 }, -/* 8F */ { Ijnle, Jz, NOARG, NOARG, Po32 }, -/* 90 */ { Iseto, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 91 */ { Isetno, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 92 */ { Isetb, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 93 */ { Isetnb, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 94 */ { Isetz, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 95 */ { Isetnz, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 96 */ { Isetbe, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 97 */ { Isetnbe, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 98 */ { Isets, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 99 */ { Isetns, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9A */ { Isetp, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9B */ { Isetnp, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9C */ { Isetl, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9D */ { Isetnl, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9E */ { Isetle, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 9F */ { Isetnle, Eb, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, -/* A0 */ { Ipush, FS, NOARG, NOARG, Pnone }, -/* A1 */ { Ipop, FS, NOARG, NOARG, Pnone }, -/* A2 */ { Icpuid, NOARG, NOARG, NOARG, Pnone }, -/* A3 */ { Ibt, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* A4 */ { Ishld, Ev, Gv, Ib, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* A5 */ { Ishld, Ev, Gv, CL, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* A6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A8 */ { Ipush, GS, NOARG, NOARG, Pnone }, -/* A9 */ { Ipop, GS, NOARG, NOARG, Pnone }, -/* AA */ { Irsm, NOARG, NOARG, NOARG, Pnone }, -/* AB */ { Ibts, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* AC */ { Ishrd, Ev, Gv, Ib, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* AD */ { Ishrd, Ev, Gv, CL, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* AE */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* AF */ { Iimul, Gv, Ev, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B0 */ { Icmpxchg, Eb, Gb, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* B1 */ { Icmpxchg, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B2 */ { Ilss, Gv, E, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B3 */ { Ibtr, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B4 */ { Ilfs, Gv, E, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B5 */ { Ilgs, Gv, E, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B6 */ { Imovzx, Gv, Eb, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B7 */ { Imovzx, Gv, Ew, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* B8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B9 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* BA */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* BB */ { Ibtc, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* BC */ { Ibsf, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* BD */ { Ibsr, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* BE */ { Imovsx, Gv, Eb, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* BF */ { Imovsx, Gv, Ew, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C0 */ { Ixadd, Eb, Gb, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C1 */ { Ixadd, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C2 */ { Icmpps, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C3 */ { Imovnti, M, Gx, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* C4 */ { Ipinsrw, P, Ew, Ib, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C5 */ { Ipextrw, Gd, PR, Ib, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C6 */ { Ishufps, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C8 */ { Ibswap, rAXr8, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* C9 */ { Ibswap, rCXr9, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CA */ { Ibswap, rDXr10, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CB */ { Ibswap, rBXr11, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CC */ { Ibswap, rSPr12, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CD */ { Ibswap, rBPr13, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CE */ { Ibswap, rSIr14, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* CF */ { Ibswap, rDIr15, NOARG, NOARG, Po32 | REX(_W|_B) }, -/* D0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D1 */ { Ipsrlw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D2 */ { Ipsrld, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D3 */ { Ipsrlq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D4 */ { Ipaddq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D5 */ { Ipmullw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D7 */ { Ipmovmskb, Gd, PR, NOARG, Pnone }, -/* D8 */ { Ipsubusb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D9 */ { Ipsubusw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DA */ { Ipminub, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DB */ { Ipand, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DC */ { Ipaddusb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DD */ { Ipaddusw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DE */ { Ipmaxub, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DF */ { Ipandn, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E0 */ { Ipavgb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E1 */ { Ipsraw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E2 */ { Ipsrad, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E3 */ { Ipavgw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E4 */ { Ipmulhuw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E5 */ { Ipmulhw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E7 */ { Imovntq, M, P, NOARG, Pnone }, -/* E8 */ { Ipsubsb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E9 */ { Ipsubsw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EA */ { Ipminsw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EB */ { Ipor, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EC */ { Ipaddsb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* ED */ { Ipaddsw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EE */ { Ipmaxsw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EF */ { Ipxor, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F1 */ { Ipsllw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F2 */ { Ipslld, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F3 */ { Ipsllq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F4 */ { Ipmuludq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F5 */ { Ipmaddwd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F6 */ { Ipsadbw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F7 */ { Imaskmovq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F8 */ { Ipsubb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F9 */ { Ipsubw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FA */ { Ipsubd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FB */ { Ipsubq, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FC */ { Ipaddb, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FD */ { Ipaddw, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FE */ { Ipaddd, P, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -x86_TableEntry insntbl_2byte_prefixF3[0x100] = { -/* 00 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 01 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 02 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 03 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 04 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 05 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 06 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 07 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 08 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 09 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 10 */ { Imovss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 11 */ { Imovss, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 12 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 13 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 14 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 15 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 16 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 17 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 18 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 19 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 20 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 21 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 22 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 23 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 24 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 25 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 26 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 27 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 28 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 29 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2A */ { Icvtsi2ss, V, Evw, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2C */ { Icvttsi2ss, Gvw, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2D */ { Icvtss2si, Gvw, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 30 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 31 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 32 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 33 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 34 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 35 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 36 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 37 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 38 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 39 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 40 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 41 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 42 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 43 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 44 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 45 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 46 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 47 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 48 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 49 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 50 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 51 */ { Isqrtss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 52 */ { Irsqrtss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 53 */ { Ircpss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 54 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 55 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 56 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 57 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 58 */ { Iaddss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 59 */ { Imulss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5A */ { Icvtss2sd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5B */ { Icvttps2dq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5C */ { Isubss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5D */ { Iminss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5E */ { Idivss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5F */ { Imaxss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 60 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 61 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 62 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 63 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 64 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 65 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 66 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 67 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 68 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 69 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6F */ { Imovdqu, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 70 */ { Ipshufhw, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* 71 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 72 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 73 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 74 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 75 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 76 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 77 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 78 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 79 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7E */ { Imovq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 7F */ { Imovdqu, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 80 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 81 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 82 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 83 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 84 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 85 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 86 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 87 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 88 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 89 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 90 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 91 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 92 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 93 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 94 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 95 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 96 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 97 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 98 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 99 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C0 */ { Ixadd, Eb, Gb, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* C1 */ { Ixadd, Ev, Gv, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* C2 */ { Icmpss, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D6 */ { Imovq2dq, V, PR, NOARG, Pa32 }, -/* D7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E6 */ { Icvtdq2pd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* ED */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -x86_TableEntry insntbl_2byte_prefix66[0x100] = { -/* 00 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 01 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 02 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 03 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 04 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 05 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 06 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 07 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 08 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 09 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 10 */ { Imovupd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 11 */ { Imovupd, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 12 */ { Imovlpd, V, M, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 13 */ { Imovlpd, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 14 */ { Iunpcklps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 15 */ { Iunpckhps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 16 */ { Imovhps, V, M, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 17 */ { Imovhps, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 18 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 19 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 20 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 21 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 22 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 23 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 24 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 25 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 26 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 27 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 28 */ { Imovapd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 29 */ { Imovapd, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2A */ { Icvtpi2pd, V, Q, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2B */ { Imovntpd, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2C */ { Icvttpd2pi, P, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2D */ { Icvtpd2pi, P, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2E */ { Iucomisd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2F */ { Icomisd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 30 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 31 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 32 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 33 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 34 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 35 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 36 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 37 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 38 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 39 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 40 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 41 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 42 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 43 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 44 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 45 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 46 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 47 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 48 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 49 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 50 */ { Imovmskpd, Gv, VR, NOARG, Po32 | REX(_W|_R|_B) }, -/* 51 */ { Isqrtpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 52 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 53 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 54 */ { Iandpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 55 */ { Iandnpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 56 */ { Iorpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 57 */ { Ixorpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 58 */ { Iaddpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 59 */ { Imulpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5A */ { Icvtpd2ps, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5B */ { Icvtps2dq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5C */ { Isubpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5D */ { Iminpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5E */ { Idivpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5F */ { Imaxpd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 60 */ { Ipunpcklbw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 61 */ { Ipunpcklwd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 62 */ { Ipunpckldq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 63 */ { Ipackusdw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 64 */ { Ipcmpgtb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 65 */ { Ipcmpgtw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 66 */ { Ipcmpgtd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 67 */ { Ipacksswb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 68 */ { Ipunpckhbw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 69 */ { Ipunpckhwd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6A */ { Ipunpckhdq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6B */ { Ipackssdw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6C */ { Ipunpcklqdq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6D */ { Ipunpckhqdq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6E */ { Imovd, V, Ex, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 6F */ { Imovqa, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 70 */ { Ipshufd, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* 71 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 72 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 73 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* 74 */ { Ipcmpeqb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 75 */ { Ipcmpeqw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 76 */ { Ipcmpeqd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 77 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 78 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 79 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7E */ { Imovd, Evw, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 7F */ { Imovdqa, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 80 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 81 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 82 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 83 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 84 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 85 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 86 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 87 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 88 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 89 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 90 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 91 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 92 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 93 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 94 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 95 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 96 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 97 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 98 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 99 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C0 */ { Ixadd, Eb, Gb, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* C1 */ { Ixadd, Ev, Gv, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -/* C2 */ { Icmppd, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C4 */ { Ipinsrw, V, Ew, Ib, Pa32 | REX(_W|_R|_X|_B) }, -/* C5 */ { Ipextrw, Gd, VR, Ib, Pa32 }, -/* C6 */ { Ishufpd, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D1 */ { Ipsrlw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D2 */ { Ipsrld, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D3 */ { Ipsrlq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D4 */ { Ipaddq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D5 */ { Ipmullw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D6 */ { Iinvalid, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D7 */ { Ipmovmskb, Gd, VR, NOARG, Pnone }, -/* D8 */ { Ipsubusb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* D9 */ { Ipsubusw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DA */ { Ipminub, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DB */ { Ipand, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DC */ { Ipaddusb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DD */ { Ipaddusw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DE */ { Ipmaxub, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* DF */ { Ipandn, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E0 */ { Ipavgb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E1 */ { Ipsraw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E2 */ { Ipsrad, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E3 */ { Ipavgw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E4 */ { Ipmulhuw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E5 */ { Ipmulhw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E6 */ { Icvttpd2dq, V, W, NOARG, Pnone }, -/* E7 */ { Imovntdq, M, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E8 */ { Ipsubsb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E9 */ { Ipsubsw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EA */ { Ipminsw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EB */ { Ipor, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EC */ { Ipaddsb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* ED */ { Ipaddsw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EE */ { Ipmaxsw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* EF */ { Ipxor, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F1 */ { Ipsllw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F2 */ { Ipslld, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F3 */ { Ipsllq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F4 */ { Ipmuludq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F5 */ { Ipmaddwd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F6 */ { Ipsadbw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F7 */ { Imaskmovq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F8 */ { Ipsubb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* F9 */ { Ipsubw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FA */ { Ipsubd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FB */ { Ipsubq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FC */ { Ipaddb, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FD */ { Ipaddw, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FE */ { Ipaddd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* FF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -x86_TableEntry insntbl_2byte_prefixF2[0x100] = { -/* 00 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 01 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 02 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 03 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 04 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 05 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 06 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 07 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 08 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 09 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 0F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 10 */ { Imovsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 11 */ { Imovsd, W, V, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 12 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 13 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 14 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 15 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 16 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 17 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 18 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 19 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 1F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 20 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 21 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 22 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 23 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 24 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 25 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 26 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 27 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 28 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 29 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2A */ { Icvtsi2sd, V, Evw, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* 2B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2C */ { Icvttsi2sd, Gvw, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2D */ { Icvtsd2si, Gvw, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 2E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 2F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 30 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 31 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 32 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 33 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 34 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 35 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 36 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 37 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 38 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 39 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 3F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 40 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 41 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 42 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 43 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 44 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 45 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 46 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 47 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 48 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 49 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 4F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 50 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 51 */ { Isqrtsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 52 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 53 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 54 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 55 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 56 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 57 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 58 */ { Iaddsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 59 */ { Imulsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5A */ { Icvtsd2ss, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 5C */ { Isubsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5D */ { Iminsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5E */ { Idivsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 5F */ { Imaxsd, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* 60 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 61 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 62 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 63 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 64 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 65 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 66 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 67 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 68 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 69 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 6F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 70 */ { Ipshuflw, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* 71 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 72 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 73 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 74 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 75 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 76 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 77 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 78 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 79 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 7F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 80 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 81 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 82 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 83 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 84 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 85 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 86 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 87 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 88 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 89 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 8F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 90 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 91 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 92 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 93 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 94 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 95 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 96 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 97 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 98 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 99 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9A */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9B */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9C */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9D */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9E */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* 9F */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* A9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* AF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* B9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* BF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C0 */ { Ixadd, Eb, Gb, NOARG, Pa32 | REX(_W|_R|_X|_B) }, -/* C1 */ { Ixadd, Ev, Gv, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, -/* C2 */ { Icmpsd, V, W, Ib, Pa32 | REX(_R|_X|_B) }, -/* C3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C7 */ { Igrp, NOARG, NOARG, NOARG, Pnone }, -/* C8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* C9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* CF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D6 */ { Imovdq2q, P, VR, NOARG, Pa32 }, -/* D7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* D9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* DF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E6 */ { Icvtpd2dq, V, W, NOARG, Pa32 | REX(_R|_X|_B) }, -/* E7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* E9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* ED */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* EF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F0 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F1 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F2 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F3 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F4 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F5 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F6 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F7 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F8 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* F9 */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FA */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FB */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FC */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FD */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FE */ { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -/* FF */ { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -x86_TableEntry insntbl_group1_op80[0x8] = { - { Iadd, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ior, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iadc, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isbb, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iand, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isub, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ixor, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Icmp, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group1_op81[0x8] = { - { Iadd, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ior, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iadc, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isbb, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iand, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isub, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ixor, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Icmp, Ez, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group1_op82[0x8] = { - { Iadd, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Ior, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Iadc, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Isbb, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Iand, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Isub, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Ixor, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) }, - { Icmp, Eb, Ib, NOARG, Pinv64 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group1A_op8F[0x8] = { - { Ipop, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - - -x86_TableEntry insntbl_group1_op83[0x8] = { - { Iadd, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Ior, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Iadc, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Isbb, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Iand, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Isub, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Ixor, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Icmp, Ev, Ib, NOARG, Po32 | Pa32 | REX(_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opC0[0x8] = { - { Iror, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opC1[0x8] = { - { Iror, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opD0[0x8] = { - { Iror, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Eb, I1, NOARG, Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opD1[0x8] = { - { Iror, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Ev, I1, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opD2[0x8] = { - { Iror, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Eb, CL, NOARG, Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group2_opD3[0x8] = { - { Iror, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Irol, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircl, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ircr, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishl, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ishr, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isal, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Isar, Ev, CL, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group3_opF6[0x8] = { - { Itest, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Itest, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Inot, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ineg, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Imul, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iimul, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Idiv, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iidiv, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group3_opF7[0x8] = { - { Itest, Ev, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Itest, Ev, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Inot, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ineg, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Imul, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iimul, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Idiv, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iidiv, Ev, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) } -}; - -x86_TableEntry insntbl_group4_opFE[0x8] = { - { Iinc, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Idec, Eb, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -x86_TableEntry insntbl_group5_opFF[0x8] = { - { Iinc, Evw, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Idec, Evw, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Icall, Evw, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Icall, Ep, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ijmp, Evw, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ijmp, Ep, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ipush, Evw, NOARG, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -/* group 6 */ -x86_TableEntry insntbl_group6_op0F00[0x8] = { - { Isldt, E, NOARG, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Istr, E, NOARG, NOARG, Po32 | Pa32 | REX(_R|_X|_B) }, - { Illdt, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iltr, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iverr, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iverw, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - - -/* group 7 */ -x86_TableEntry insntbl_group7_op0F01[0x8] = { - { Isgdt, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Isidt, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ilgdt, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ilidt, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ismsw, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ilmsw, E, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvlpg, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* group 8 */ -x86_TableEntry insntbl_group8_op0FBA[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ibt, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ibts, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ibtr, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Ibtc, Ev, Ib, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, -}; - -/* group 9 */ -x86_TableEntry insntbl_group9_op0FC7[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Icmpxchg8b, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group A */ -x86_TableEntry insntbl_groupA_op0FB9[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group B */ -x86_TableEntry insntbl_groupB_opC6[0x8] = { - { Imov, Eb, Ib, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group B */ -x86_TableEntry insntbl_groupB_opC7[0x8] = { - { Imov, Ev, Iz, NOARG, Po32 | Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group C */ -x86_TableEntry insntbl_groupC_op0F71[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrlw, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsraw, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsllw, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group C */ -x86_TableEntry insntbl_groupC_op0F71_prefix66[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrlw, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsraw, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsllw, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group D */ -x86_TableEntry insntbl_groupD_op0F72[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrld, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrad, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipslld, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group D, prefixed by 0x66 */ -x86_TableEntry insntbl_groupD_op0F72_prefix66[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrld, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrad, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipslld, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group E */ -x86_TableEntry insntbl_groupE_op0F73[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrlq, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsraq, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsllq, PR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group F */ -x86_TableEntry insntbl_groupF_op0FAE[0x8] = { - { Ifxsave, M, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ifxrstor, M, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Ildmxcsr, Md, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Istmxcsr, Md, NOARG, NOARG, Pa32 | REX(_W|_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* group E, prefixed by 0x66 */ -x86_TableEntry insntbl_groupE_op0F73_prefix66[0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsrlq, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsraq, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ipsllq, VR, Ib, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, -}; - -/* D8 Opcode Map */ -x86_TableEntry insntbl_x87_opD8reg[0x8] = { - { Ifadd, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifmul, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifcom, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifcomp, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifsub, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifsubr, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifdiv, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifdivr, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* D9 Opcode Map */ -x86_TableEntry insntbl_x87_opD9reg[0x8] = { - { Ifld, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifst, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifstp, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifldenv, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifldcw, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifstenv, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifstcw, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DA Opcode Map */ -x86_TableEntry insntbl_x87_opDAreg[0x8] = { - { Ifiadd, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifimul, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ificom, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ificomp, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifisub, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifisubr, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifidiv, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifidivr, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DB Opcode Map */ -x86_TableEntry insntbl_x87_opDBreg[0x8] = { - { Ifild, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifist, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifistp, Md, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifld, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifstp, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DC Opcode Map */ -x86_TableEntry insntbl_x87_opDCreg[0x8] = { - { Ifadd, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifmul, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifcom, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifcomp, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifsub, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifsubr, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifdiv, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifdivr, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DD Opcode Map */ -x86_TableEntry insntbl_x87_opDDreg[0x8] = { - { Ifld, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifst, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifstp, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifrstor, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifsave, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifstsw, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DE Opcode Map */ -x86_TableEntry insntbl_x87_opDEreg[0x8] = { - { Ifiadd, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifimul, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ificom, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ificomp, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifisub, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifisubr, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifidiv, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifidivr, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* DF Opcode Map */ -x86_TableEntry insntbl_x87_opDFreg[0x8] = { - { Ifild, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifist, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifistp, Mw, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifbld, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifild, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifbstp, M, NOARG, NOARG, Pa32 | REX(_R|_X|_B) }, - { Ifistp, Mq, NOARG, NOARG, Pa32 | REX(_R|_X|_B) } -}; - -/* D8 Opcode Map */ -x86_TableEntry insntbl_x87_opD8[0x8*0x8] = { - { Ifadd, ST0, ST0, NOARG, Pnone }, - { Ifadd, ST0, ST1, NOARG, Pnone }, - { Ifadd, ST0, ST2, NOARG, Pnone }, - { Ifadd, ST0, ST3, NOARG, Pnone }, - { Ifadd, ST0, ST4, NOARG, Pnone }, - { Ifadd, ST0, ST5, NOARG, Pnone }, - { Ifadd, ST0, ST6, NOARG, Pnone }, - { Ifadd, ST0, ST7, NOARG, Pnone }, - { Ifmul, ST0, ST0, NOARG, Pnone }, - { Ifmul, ST0, ST1, NOARG, Pnone }, - { Ifmul, ST0, ST2, NOARG, Pnone }, - { Ifmul, ST0, ST3, NOARG, Pnone }, - { Ifmul, ST0, ST4, NOARG, Pnone }, - { Ifmul, ST0, ST5, NOARG, Pnone }, - { Ifmul, ST0, ST6, NOARG, Pnone }, - { Ifmul, ST0, ST7, NOARG, Pnone }, - { Ifcom, ST0, ST0, NOARG, Pnone }, - { Ifcom, ST0, ST1, NOARG, Pnone }, - { Ifcom, ST0, ST2, NOARG, Pnone }, - { Ifcom, ST0, ST3, NOARG, Pnone }, - { Ifcom, ST0, ST4, NOARG, Pnone }, - { Ifcom, ST0, ST5, NOARG, Pnone }, - { Ifcom, ST0, ST6, NOARG, Pnone }, - { Ifcom, ST0, ST7, NOARG, Pnone }, - { Ifcomp, ST0, ST0, NOARG, Pnone }, - { Ifcomp, ST0, ST1, NOARG, Pnone }, - { Ifcomp, ST0, ST2, NOARG, Pnone }, - { Ifcomp, ST0, ST3, NOARG, Pnone }, - { Ifcomp, ST0, ST4, NOARG, Pnone }, - { Ifcomp, ST0, ST5, NOARG, Pnone }, - { Ifcomp, ST0, ST6, NOARG, Pnone }, - { Ifcomp, ST0, ST7, NOARG, Pnone }, - { Ifsub, ST0, ST0, NOARG, Pnone }, - { Ifsub, ST0, ST1, NOARG, Pnone }, - { Ifsub, ST0, ST2, NOARG, Pnone }, - { Ifsub, ST0, ST3, NOARG, Pnone }, - { Ifsub, ST0, ST4, NOARG, Pnone }, - { Ifsub, ST0, ST5, NOARG, Pnone }, - { Ifsub, ST0, ST6, NOARG, Pnone }, - { Ifsub, ST0, ST7, NOARG, Pnone }, - { Ifsubr, ST0, ST0, NOARG, Pnone }, - { Ifsubr, ST0, ST1, NOARG, Pnone }, - { Ifsubr, ST0, ST2, NOARG, Pnone }, - { Ifsubr, ST0, ST3, NOARG, Pnone }, - { Ifsubr, ST0, ST4, NOARG, Pnone }, - { Ifsubr, ST0, ST5, NOARG, Pnone }, - { Ifsubr, ST0, ST6, NOARG, Pnone }, - { Ifsubr, ST0, ST7, NOARG, Pnone }, - { Ifdiv, ST0, ST0, NOARG, Pnone }, - { Ifdiv, ST0, ST1, NOARG, Pnone }, - { Ifdiv, ST0, ST2, NOARG, Pnone }, - { Ifdiv, ST0, ST3, NOARG, Pnone }, - { Ifdiv, ST0, ST4, NOARG, Pnone }, - { Ifdiv, ST0, ST5, NOARG, Pnone }, - { Ifdiv, ST0, ST6, NOARG, Pnone }, - { Ifdiv, ST0, ST7, NOARG, Pnone }, - { Ifdivr, ST0, ST0, NOARG, Pnone }, - { Ifdivr, ST0, ST1, NOARG, Pnone }, - { Ifdivr, ST0, ST2, NOARG, Pnone }, - { Ifdivr, ST0, ST3, NOARG, Pnone }, - { Ifdivr, ST0, ST4, NOARG, Pnone }, - { Ifdivr, ST0, ST5, NOARG, Pnone }, - { Ifdivr, ST0, ST6, NOARG, Pnone }, - { Ifdivr, ST0, ST7, NOARG, Pnone } -}; - -/* D9 Opcode Map */ -x86_TableEntry insntbl_x87_opD9[0x8*0x8] = { - { Ifld, ST0, ST0, NOARG, Pnone }, - { Ifld, ST0, ST1, NOARG, Pnone }, - { Ifld, ST0, ST2, NOARG, Pnone }, - { Ifld, ST0, ST3, NOARG, Pnone }, - { Ifld, ST0, ST4, NOARG, Pnone }, - { Ifld, ST0, ST5, NOARG, Pnone }, - { Ifld, ST0, ST6, NOARG, Pnone }, - { Ifld, ST0, ST7, NOARG, Pnone }, - { Ifxch, ST0, ST0, NOARG, Pnone }, - { Ifxch, ST0, ST1, NOARG, Pnone }, - { Ifxch, ST0, ST2, NOARG, Pnone }, - { Ifxch, ST0, ST3, NOARG, Pnone }, - { Ifxch, ST0, ST4, NOARG, Pnone }, - { Ifxch, ST0, ST5, NOARG, Pnone }, - { Ifxch, ST0, ST6, NOARG, Pnone }, - { Ifxch, ST0, ST7, NOARG, Pnone }, - { Ifnop, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Inone, NOARG, NOARG, NOARG, Pnone }, - { Ifchs, NOARG, NOARG, NOARG, Pnone }, - { Ifabs, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iftst, NOARG, NOARG, NOARG, Pnone }, - { Ifxam, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifld1, NOARG, NOARG, NOARG, Pnone }, - { Ifldl2t, NOARG, NOARG, NOARG, Pnone }, - { Ifldl2e, NOARG, NOARG, NOARG, Pnone }, - { Ifldlpi, NOARG, NOARG, NOARG, Pnone }, - { Ifldlg2, NOARG, NOARG, NOARG, Pnone }, - { Ifldln2, NOARG, NOARG, NOARG, Pnone }, - { Ifldz, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { If2xm1, NOARG, NOARG, NOARG, Pnone }, - { Ifyl2x, NOARG, NOARG, NOARG, Pnone }, - { Ifptan, NOARG, NOARG, NOARG, Pnone }, - { Ifpatan, NOARG, NOARG, NOARG, Pnone }, - { Ifpxtract, NOARG, NOARG, NOARG, Pnone }, - { Ifprem1, NOARG, NOARG, NOARG, Pnone }, - { Ifdecstp, NOARG, NOARG, NOARG, Pnone }, - { Ifncstp, NOARG, NOARG, NOARG, Pnone }, - { Ifprem, NOARG, NOARG, NOARG, Pnone }, - { Ifyl2xp1, NOARG, NOARG, NOARG, Pnone }, - { Ifsqrt, NOARG, NOARG, NOARG, Pnone }, - { Ifsincos, NOARG, NOARG, NOARG, Pnone }, - { Ifrndint, NOARG, NOARG, NOARG, Pnone }, - { Ifscale, NOARG, NOARG, NOARG, Pnone }, - { Ifsin, NOARG, NOARG, NOARG, Pnone }, - { Ifcos, NOARG, NOARG, NOARG, Pnone } -}; - -/* DA Opcode Map */ -x86_TableEntry insntbl_x87_opDA[0x8*0x8] = { - { Ifcmovb, ST0, ST0, NOARG, Pnone }, - { Ifcmovb, ST0, ST1, NOARG, Pnone }, - { Ifcmovb, ST0, ST2, NOARG, Pnone }, - { Ifcmovb, ST0, ST3, NOARG, Pnone }, - { Ifcmovb, ST0, ST4, NOARG, Pnone }, - { Ifcmovb, ST0, ST5, NOARG, Pnone }, - { Ifcmovb, ST0, ST6, NOARG, Pnone }, - { Ifcmovb, ST0, ST7, NOARG, Pnone }, - { Ifcmove, ST0, ST0, NOARG, Pnone }, - { Ifcmove, ST0, ST1, NOARG, Pnone }, - { Ifcmove, ST0, ST2, NOARG, Pnone }, - { Ifcmove, ST0, ST3, NOARG, Pnone }, - { Ifcmove, ST0, ST4, NOARG, Pnone }, - { Ifcmove, ST0, ST5, NOARG, Pnone }, - { Ifcmove, ST0, ST6, NOARG, Pnone }, - { Ifcmove, ST0, ST7, NOARG, Pnone }, - { Ifcmovbe, ST0, ST0, NOARG, Pnone }, - { Ifcmovbe, ST0, ST1, NOARG, Pnone }, - { Ifcmovbe, ST0, ST2, NOARG, Pnone }, - { Ifcmovbe, ST0, ST3, NOARG, Pnone }, - { Ifcmovbe, ST0, ST4, NOARG, Pnone }, - { Ifcmovbe, ST0, ST5, NOARG, Pnone }, - { Ifcmovbe, ST0, ST6, NOARG, Pnone }, - { Ifcmovbe, ST0, ST7, NOARG, Pnone }, - { Ifcmovu, ST0, ST0, NOARG, Pnone }, - { Ifcmovu, ST0, ST1, NOARG, Pnone }, - { Ifcmovu, ST0, ST2, NOARG, Pnone }, - { Ifcmovu, ST0, ST3, NOARG, Pnone }, - { Ifcmovu, ST0, ST4, NOARG, Pnone }, - { Ifcmovu, ST0, ST5, NOARG, Pnone }, - { Ifcmovu, ST0, ST6, NOARG, Pnone }, - { Ifcmovu, ST0, ST7, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifucompp, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -/* DB Opcode Map */ -x86_TableEntry insntbl_x87_opDB[0x8*0x8] = { - { Ifcmovnb, ST0, ST0, NOARG, Pnone }, - { Ifcmovnb, ST0, ST1, NOARG, Pnone }, - { Ifcmovnb, ST0, ST2, NOARG, Pnone }, - { Ifcmovnb, ST0, ST3, NOARG, Pnone }, - { Ifcmovnb, ST0, ST4, NOARG, Pnone }, - { Ifcmovnb, ST0, ST5, NOARG, Pnone }, - { Ifcmovnb, ST0, ST6, NOARG, Pnone }, - { Ifcmovnb, ST0, ST7, NOARG, Pnone }, - { Ifcmovne, ST0, ST0, NOARG, Pnone }, - { Ifcmovne, ST0, ST1, NOARG, Pnone }, - { Ifcmovne, ST0, ST2, NOARG, Pnone }, - { Ifcmovne, ST0, ST3, NOARG, Pnone }, - { Ifcmovne, ST0, ST4, NOARG, Pnone }, - { Ifcmovne, ST0, ST5, NOARG, Pnone }, - { Ifcmovne, ST0, ST6, NOARG, Pnone }, - { Ifcmovne, ST0, ST7, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST0, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST1, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST2, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST3, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST4, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST5, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST6, NOARG, Pnone }, - { Ifcmovnbe, ST0, ST7, NOARG, Pnone }, - { Ifcmovnu, ST0, ST0, NOARG, Pnone }, - { Ifcmovnu, ST0, ST1, NOARG, Pnone }, - { Ifcmovnu, ST0, ST2, NOARG, Pnone }, - { Ifcmovnu, ST0, ST3, NOARG, Pnone }, - { Ifcmovnu, ST0, ST4, NOARG, Pnone }, - { Ifcmovnu, ST0, ST5, NOARG, Pnone }, - { Ifcmovnu, ST0, ST6, NOARG, Pnone }, - { Ifcmovnu, ST0, ST7, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifclex, NOARG, NOARG, NOARG, Pnone }, - { Ifinit, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifucomi, ST0, ST0, NOARG, Pnone }, - { Ifucomi, ST0, ST1, NOARG, Pnone }, - { Ifucomi, ST0, ST2, NOARG, Pnone }, - { Ifucomi, ST0, ST3, NOARG, Pnone }, - { Ifucomi, ST0, ST4, NOARG, Pnone }, - { Ifucomi, ST0, ST5, NOARG, Pnone }, - { Ifucomi, ST0, ST6, NOARG, Pnone }, - { Ifucomi, ST0, ST7, NOARG, Pnone }, - { Ifcomi, ST0, ST0, NOARG, Pnone }, - { Ifcomi, ST0, ST1, NOARG, Pnone }, - { Ifcomi, ST0, ST2, NOARG, Pnone }, - { Ifcomi, ST0, ST3, NOARG, Pnone }, - { Ifcomi, ST0, ST4, NOARG, Pnone }, - { Ifcomi, ST0, ST5, NOARG, Pnone }, - { Ifcomi, ST0, ST6, NOARG, Pnone }, - { Ifcomi, ST0, ST7, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -/* DC Opcode Map */ -x86_TableEntry insntbl_x87_opDC[0x8*0x8] = { - { Ifadd, ST0, ST0, NOARG, Pnone }, - { Ifadd, ST1, ST0, NOARG, Pnone }, - { Ifadd, ST2, ST0, NOARG, Pnone }, - { Ifadd, ST3, ST0, NOARG, Pnone }, - { Ifadd, ST4, ST0, NOARG, Pnone }, - { Ifadd, ST5, ST0, NOARG, Pnone }, - { Ifadd, ST6, ST0, NOARG, Pnone }, - { Ifadd, ST7, ST0, NOARG, Pnone }, - { Ifmul, ST0, ST0, NOARG, Pnone }, - { Ifmul, ST1, ST0, NOARG, Pnone }, - { Ifmul, ST2, ST0, NOARG, Pnone }, - { Ifmul, ST3, ST0, NOARG, Pnone }, - { Ifmul, ST4, ST0, NOARG, Pnone }, - { Ifmul, ST5, ST0, NOARG, Pnone }, - { Ifmul, ST6, ST0, NOARG, Pnone }, - { Ifmul, ST7, ST0, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifsubr, ST0, ST0, NOARG, Pnone }, - { Ifsubr, ST1, ST0, NOARG, Pnone }, - { Ifsubr, ST2, ST0, NOARG, Pnone }, - { Ifsubr, ST3, ST0, NOARG, Pnone }, - { Ifsubr, ST4, ST0, NOARG, Pnone }, - { Ifsubr, ST5, ST0, NOARG, Pnone }, - { Ifsubr, ST6, ST0, NOARG, Pnone }, - { Ifsubr, ST7, ST0, NOARG, Pnone }, - { Ifsub, ST0, ST0, NOARG, Pnone }, - { Ifsub, ST1, ST0, NOARG, Pnone }, - { Ifsub, ST2, ST0, NOARG, Pnone }, - { Ifsub, ST3, ST0, NOARG, Pnone }, - { Ifsub, ST4, ST0, NOARG, Pnone }, - { Ifsub, ST5, ST0, NOARG, Pnone }, - { Ifsub, ST6, ST0, NOARG, Pnone }, - { Ifsub, ST7, ST0, NOARG, Pnone }, - { Ifdivr, ST0, ST0, NOARG, Pnone }, - { Ifdivr, ST1, ST0, NOARG, Pnone }, - { Ifdivr, ST2, ST0, NOARG, Pnone }, - { Ifdivr, ST3, ST0, NOARG, Pnone }, - { Ifdivr, ST4, ST0, NOARG, Pnone }, - { Ifdivr, ST5, ST0, NOARG, Pnone }, - { Ifdivr, ST6, ST0, NOARG, Pnone }, - { Ifdivr, ST7, ST0, NOARG, Pnone }, - { Ifdiv, ST0, ST0, NOARG, Pnone }, - { Ifdiv, ST1, ST0, NOARG, Pnone }, - { Ifdiv, ST2, ST0, NOARG, Pnone }, - { Ifdiv, ST3, ST0, NOARG, Pnone }, - { Ifdiv, ST4, ST0, NOARG, Pnone }, - { Ifdiv, ST5, ST0, NOARG, Pnone }, - { Ifdiv, ST6, ST0, NOARG, Pnone }, - { Ifdiv, ST7, ST0, NOARG, Pnone } -}; - -/* DD Opcode Map */ -x86_TableEntry insntbl_x87_opDD[0x8*0x8] = { - { Iffree, ST0, NOARG, NOARG, Pnone }, - { Iffree, ST1, NOARG, NOARG, Pnone }, - { Iffree, ST2, NOARG, NOARG, Pnone }, - { Iffree, ST3, NOARG, NOARG, Pnone }, - { Iffree, ST4, NOARG, NOARG, Pnone }, - { Iffree, ST5, NOARG, NOARG, Pnone }, - { Iffree, ST6, NOARG, NOARG, Pnone }, - { Iffree, ST7, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifst, ST0, NOARG, NOARG, Pnone }, - { Ifst, ST1, NOARG, NOARG, Pnone }, - { Ifst, ST2, NOARG, NOARG, Pnone }, - { Ifst, ST3, NOARG, NOARG, Pnone }, - { Ifst, ST4, NOARG, NOARG, Pnone }, - { Ifst, ST5, NOARG, NOARG, Pnone }, - { Ifst, ST6, NOARG, NOARG, Pnone }, - { Ifst, ST7, NOARG, NOARG, Pnone }, - { Ifstp, ST0, NOARG, NOARG, Pnone }, - { Ifstp, ST1, NOARG, NOARG, Pnone }, - { Ifstp, ST2, NOARG, NOARG, Pnone }, - { Ifstp, ST3, NOARG, NOARG, Pnone }, - { Ifstp, ST4, NOARG, NOARG, Pnone }, - { Ifstp, ST5, NOARG, NOARG, Pnone }, - { Ifstp, ST6, NOARG, NOARG, Pnone }, - { Ifstp, ST7, NOARG, NOARG, Pnone }, - { Ifucom, ST0, NOARG, NOARG, Pnone }, - { Ifucom, ST1, NOARG, NOARG, Pnone }, - { Ifucom, ST2, NOARG, NOARG, Pnone }, - { Ifucom, ST3, NOARG, NOARG, Pnone }, - { Ifucom, ST4, NOARG, NOARG, Pnone }, - { Ifucom, ST5, NOARG, NOARG, Pnone }, - { Ifucom, ST6, NOARG, NOARG, Pnone }, - { Ifucom, ST7, NOARG, NOARG, Pnone }, - { Ifucomp, ST0, NOARG, NOARG, Pnone }, - { Ifucomp, ST1, NOARG, NOARG, Pnone }, - { Ifucomp, ST2, NOARG, NOARG, Pnone }, - { Ifucomp, ST3, NOARG, NOARG, Pnone }, - { Ifucomp, ST4, NOARG, NOARG, Pnone }, - { Ifucomp, ST5, NOARG, NOARG, Pnone }, - { Ifucomp, ST6, NOARG, NOARG, Pnone }, - { Ifucomp, ST7, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -/* DE Opcode Map */ -x86_TableEntry insntbl_x87_opDE[0x8*0x8] = { - { Ifaddp, ST0, ST0, NOARG, Pnone }, - { Ifaddp, ST1, ST0, NOARG, Pnone }, - { Ifaddp, ST2, ST0, NOARG, Pnone }, - { Ifaddp, ST3, ST0, NOARG, Pnone }, - { Ifaddp, ST4, ST0, NOARG, Pnone }, - { Ifaddp, ST5, ST0, NOARG, Pnone }, - { Ifaddp, ST6, ST0, NOARG, Pnone }, - { Ifaddp, ST7, ST0, NOARG, Pnone }, - { Ifmulp, ST0, ST0, NOARG, Pnone }, - { Ifmulp, ST1, ST0, NOARG, Pnone }, - { Ifmulp, ST2, ST0, NOARG, Pnone }, - { Ifmulp, ST3, ST0, NOARG, Pnone }, - { Ifmulp, ST4, ST0, NOARG, Pnone }, - { Ifmulp, ST5, ST0, NOARG, Pnone }, - { Ifmulp, ST6, ST0, NOARG, Pnone }, - { Ifmulp, ST7, ST0, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifcompp, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifsubrp, ST0, ST0, NOARG, Pnone }, - { Ifsubrp, ST1, ST0, NOARG, Pnone }, - { Ifsubrp, ST2, ST0, NOARG, Pnone }, - { Ifsubrp, ST3, ST0, NOARG, Pnone }, - { Ifsubrp, ST4, ST0, NOARG, Pnone }, - { Ifsubrp, ST5, ST0, NOARG, Pnone }, - { Ifsubrp, ST6, ST0, NOARG, Pnone }, - { Ifsubrp, ST7, ST0, NOARG, Pnone }, - { Ifsubp, ST0, ST0, NOARG, Pnone }, - { Ifsubp, ST1, ST0, NOARG, Pnone }, - { Ifsubp, ST2, ST0, NOARG, Pnone }, - { Ifsubp, ST3, ST0, NOARG, Pnone }, - { Ifsubp, ST4, ST0, NOARG, Pnone }, - { Ifsubp, ST5, ST0, NOARG, Pnone }, - { Ifsubp, ST6, ST0, NOARG, Pnone }, - { Ifsubp, ST7, ST0, NOARG, Pnone }, - { Ifdivrp, ST0, ST0, NOARG, Pnone }, - { Ifdivrp, ST1, ST0, NOARG, Pnone }, - { Ifdivrp, ST2, ST0, NOARG, Pnone }, - { Ifdivrp, ST3, ST0, NOARG, Pnone }, - { Ifdivrp, ST4, ST0, NOARG, Pnone }, - { Ifdivrp, ST5, ST0, NOARG, Pnone }, - { Ifdivrp, ST6, ST0, NOARG, Pnone }, - { Ifdivrp, ST7, ST0, NOARG, Pnone }, - { Ifdivp, ST0, ST0, NOARG, Pnone }, - { Ifdivp, ST1, ST0, NOARG, Pnone }, - { Ifdivp, ST2, ST0, NOARG, Pnone }, - { Ifdivp, ST3, ST0, NOARG, Pnone }, - { Ifdivp, ST4, ST0, NOARG, Pnone }, - { Ifdivp, ST5, ST0, NOARG, Pnone }, - { Ifdivp, ST6, ST0, NOARG, Pnone }, - { Ifdivp, ST7, ST0, NOARG, Pnone } -}; - -/* DF Opcode Map */ -x86_TableEntry insntbl_x87_opDF[0x8*0x8] = { - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifstsw, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Ifucomip, ST0, ST0, NOARG, Pnone }, - { Ifucomip, ST0, ST1, NOARG, Pnone }, - { Ifucomip, ST0, ST2, NOARG, Pnone }, - { Ifucomip, ST0, ST3, NOARG, Pnone }, - { Ifucomip, ST0, ST4, NOARG, Pnone }, - { Ifucomip, ST0, ST5, NOARG, Pnone }, - { Ifucomip, ST0, ST6, NOARG, Pnone }, - { Ifucomip, ST0, ST7, NOARG, Pnone }, - { Ifcomip, ST0, ST0, NOARG, Pnone }, - { Ifcomip, ST0, ST1, NOARG, Pnone }, - { Ifcomip, ST0, ST2, NOARG, Pnone }, - { Ifcomip, ST0, ST3, NOARG, Pnone }, - { Ifcomip, ST0, ST4, NOARG, Pnone }, - { Ifcomip, ST0, ST5, NOARG, Pnone }, - { Ifcomip, ST0, ST6, NOARG, Pnone }, - { Ifcomip, ST0, ST7, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone }, - { Iinvalid, NOARG, NOARG, NOARG, Pnone } -}; - -/* AMD 3DNow! Instructions */ -x86_TableEntry insntbl_3DNow = - { I3dnow, P, Q, NOARG }; - -/* 3D Now instructions with suffix */ -unsigned X86Disas::Get3DNowInsnMnemonic(unsigned char suffix) -{ - switch(suffix) { - case 0x0C: return Ipi2fw; - case 0x0D: return Ipi2fd; - case 0x1C: return Ipf2iw; - case 0x1D: return Ipf2id; - case 0x8A: return Ipfnacc; - case 0x90: return Ipfcmpge; - case 0x94: return Ipfmin; - case 0x96: return Ipfrcp; - case 0x97: return Ipfrsqrt; - case 0x9A: return Ipfsub; - case 0x9E: return Ipfadd; - case 0xA0: return Ipfcmpgt; - case 0xA4: return Ipfmax; - case 0xA6: return Ipfrcpit1; - case 0xA7: return Ipfrsqit1; - case 0xAA: return Ipfsubr; - case 0xAE: return Ipfacc; - case 0xB0: return Ipfcmpeq; - case 0xB4: return Ipfmul; - case 0xB6: return Ipfrcpit2; - case 0xB7: return Ipmulhrw; - case 0xBB: return Ipswapd; - case 0xBF: return Ipavgusb; - } - return NULL; -} - -x86_TableEntry *insntbl_x87_reg[] = { - insntbl_x87_opD8reg, - insntbl_x87_opD9reg, - insntbl_x87_opDAreg, - insntbl_x87_opDBreg, - insntbl_x87_opDCreg, - insntbl_x87_opDDreg, - insntbl_x87_opDEreg, - insntbl_x87_opDFreg -}; - -x86_TableEntry *insntbl_x87[] = { - insntbl_x87_opD8, - insntbl_x87_opD9, - insntbl_x87_opDA, - insntbl_x87_opDB, - insntbl_x87_opDC, - insntbl_x87_opDD, - insntbl_x87_opDE, - insntbl_x87_opDF -}; - -#define MODRM_REG(b) (((b)>>3) & 7) -#define MODRM_NNN(b) (((b)>>3) & 7) -#define MODRM_MOD(b) (((b)>>6) & 3) -#define MODRM_RM(b) ((b) &7) - -/* udis86_GetInsnEntry(...) - Searches the x86 opcode table for the instruction corresponding - to the opcode given by `*src'. The `*te' is pointed to the table - entry and the src pointer is returned. - */ -unsigned char *X86Disas::GetInsnEntry(unsigned char *src, x86_TableEntry **te) { - *te = NULL; - /* check for two byte opcodes (0x0F) */ - if (0x0F == *src) { - /* move to next byte */ - src++; - /* check instruct for prefix 0x66 */ - if (G_opr_prfx) { - /* get table entry */ - *te = &insntbl_2byte_prefix66[*src]; - if ((*te)->mnm != Iinvalid) - G_opr_prfx = 0; - else *te = NULL; - } - /* check for prefixe 0xF3 */ - if ((*te) == NULL && G_rep_prfx) { - /* get table entry */ - *te = &insntbl_2byte_prefixF3[*src]; - if ((*te)->mnm != Iinvalid) - G_rep_prfx = 0; - else *te = NULL; - } - /* check for prefixe 0xF2 */ - if ((*te) == NULL && G_repne_prfx) { - /* get table entry */ - *te = &insntbl_2byte_prefixF2[*src]; - if ((*te)->mnm != Iinvalid) - G_repne_prfx = 0; - else *te = NULL; - } - /* no prefix */ - if ((*te) == NULL) /* get table entry */ - *te = &insntbl_2byte[*src]; - - /* check if the opcode points to a group */ - if ((*te)->mnm == Igrp) { - switch (*src) { - /* group 6 */ - case 0x00: - *te = &insntbl_group6_op0F00[MODRM_REG(*(src+1))]; - break; - /* group 7 */ - case 0x01: - *te = &insntbl_group7_op0F01[MODRM_REG(*(src+1))]; - break; - /* group 8 */ - case 0xBA: - *te = &insntbl_group8_op0FBA[MODRM_REG(*(src+1))]; - break; - /* group 9 */ - case 0xC7: - *te = &insntbl_group9_op0FC7[MODRM_REG(*(src+1))]; - break; - /* group A */ - case 0xB9: - *te = &insntbl_groupA_op0FB9[MODRM_REG(*(src+1))]; - break; - /* group C */ - case 0x71: - if (G_opr_prfx) { - *te = &insntbl_groupC_op0F71_prefix66[MODRM_REG(*(src+1))]; - G_opr_prfx = 0; - } - else *te = &insntbl_groupC_op0F71[MODRM_REG(*(src+1))]; - break; - /* group D */ - case 0x72: - if (G_opr_prfx) { - *te = &insntbl_groupD_op0F72_prefix66[MODRM_REG(*(src+1))]; - G_opr_prfx = 0; - } - else *te = &insntbl_groupD_op0F72[MODRM_REG(*(src+1))]; - break; - /* group E */ - case 0x73: - if (G_opr_prfx) { - *te = &insntbl_groupE_op0F73_prefix66[MODRM_REG(*(src+1))]; - G_opr_prfx = 0; - } - else *te = &insntbl_groupE_op0F73[MODRM_REG(*(src+1))]; - break; - /* group F */ - case 0xAE: - *te = &insntbl_groupF_op0FAE[MODRM_REG(*(src+1))]; - break; - } - } - else - /* check if the opcode points to a group */ - if ((*te)->mnm == I3dnow) - *te = &insntbl_3DNow; - } - /* else its a 1byte opcode */ - else { - *te = &insntbl_1byte[*src]; - /* check if the opcode points to a group */ - if ((*te)->mnm == Igrp) { - switch(*src) { - /* group 1 */ - case 0x80: - *te = &insntbl_group1_op80[MODRM_REG(*(src+1))]; - break; - case 0x81: - *te = &insntbl_group1_op81[MODRM_REG(*(src+1))]; - break; - case 0x82: - *te = &insntbl_group1_op82[MODRM_REG(*(src+1))]; - break; - case 0x83: - *te = &insntbl_group1_op83[MODRM_REG(*(src+1))]; - break; - case 0x8F: - *te = &insntbl_group1A_op8F[MODRM_REG(*(src+1))]; - break; - /* group 2 */ - case 0xC0: - *te = &insntbl_group2_opC0[MODRM_REG(*(src+1))]; - break; - case 0xC1: - *te = &insntbl_group2_opC1[MODRM_REG(*(src+1))]; - break; - /* group 11 */ - case 0xC6: - *te = &insntbl_groupB_opC6[MODRM_REG(*(src+1))]; - break; - case 0xC7: - *te = &insntbl_groupB_opC7[MODRM_REG(*(src+1))]; - break; - case 0xD0: - *te = &insntbl_group2_opD0[MODRM_REG(*(src+1))]; - break; - case 0xD1: - *te = &insntbl_group2_opD1[MODRM_REG(*(src+1))]; - break; - case 0xD2: - *te = &insntbl_group2_opD2[MODRM_REG(*(src+1))]; - break; - case 0xD3: - *te = &insntbl_group2_opD3[MODRM_REG(*(src+1))]; - break; - /* group 3 */ - case 0xF6: - *te = &insntbl_group3_opF6[MODRM_REG(*(src+1))]; - break; - case 0xF7: - *te = &insntbl_group3_opF7[MODRM_REG(*(src+1))]; - break; - /* group 4 */ - case 0xFE: - *te = &insntbl_group4_opFE[MODRM_REG(*(src+1))]; - break; - /* group 5 */ - case 0xFF: - *te = &insntbl_group5_opFF[MODRM_REG(*(src+1))]; - break; - } - } - else - /* check if the opcode points to an x87 instruction */ - if ((*te)->mnm == Ix87) { - /* When the ModRM byte value falls within the range of - 0x00 - 0xBF, then the reg field selects the inst. - */ - if (*(src+1) <= 0xBF) - *te = &insntbl_x87_reg[(*src)-0xD8][MODRM_REG(*(src+1))]; - else { - *te = &insntbl_x87[(*src)-0xD8][(*(src+1)) - 0xC0]; - ++src; - } - } - } - - return src; -} diff --git a/uppsrc/x86disas/syntax.cpp b/uppsrc/x86disas/syntax.cpp deleted file mode 100644 index 04bebd2ae..000000000 --- a/uppsrc/x86disas/syntax.cpp +++ /dev/null @@ -1,566 +0,0 @@ -/* - * syntax.c - Ouput/syntax - * - * Copyright (c) 2002,2003 Vivek Mohan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -#include "X86Disas.h" - -#define DO(x) #x, - -char *mnemonics[] = { - #include "mnemonics.i" -}; - -#undef DO - -typedef signed char s8b ; -typedef unsigned char u8b ; -typedef signed short s16b; -typedef unsigned short u16b; -typedef signed long s32b; -typedef unsigned long u32b; - -struct OperandDecoderMap { - unsigned code; /* operand code */ - char *scr; /* script */ -}; - -static unsigned char n_scal[] = { 1, 2, 4, 8 }; - -/* this structure defines the decoder script for a particular - ouput syntax. - */ - -/* Decoder Script Directives (In Octal Number System) - - \1 - verbatim print delimiter - \2 - print 8 bit sign extended offset - \3 - print 16 bit offset - \4 - print 32 bit offset - \5 - print rel offset - \6 - print seg override - \7 - print rel cast - \10 - print 64 bit offset - \12 - print 8bit imm - \13 - print 16bit imm - \14 - print 32bit imm - - \20 - print SIB - \21 - print SID - \22 - print RSIB - \23 - print RSID - - \26 - print ptr cast - - \30 - print 16 bit segment of ptr32 - \31 - print 16 bit offset of ptr32 - \32 - print 16 bit segment of ptr48 - \33 - print 32 bit offset of ptr48 - - \40 - print 16b offset - \41 - print 32b offset - \42 - print 64b offset - - \50 - print lval - - \60 - print operand cast - \61 - print jmp cast - -*/ - -/* ---- INTEL Syntax ---- */ - -/* The Intel Syntax Operand Decoder Map - WARNING -- Make sure the order of declaration is the same as - that of the enumeration of operand codes in x86.h - */ -static OperandDecoderMap odm[] = { - { M_BX_SI, "\60\1[\1\6\1bx+si]\1" }, - { M_BX_DI, "\60\1[\1\6\1bx+di]\1" }, - { M_BP_SI, "\60\1[\1\6\1bp+si]\1" }, - { M_BP_DI, "\60\1[\1\6\1bp+di]\1" }, - { M_SI, "\60\1[\1\6\1si]\1" }, - { M_DI, "\60\1[\1\6\1di]\1" }, - { M_OFF16, "\60\1[\1\6\1\1\3\1]\1" }, - { M_BX, "\60\1[\1\6\1bx]\1" }, - { M_BX_SI_OFF8, "\60\1[\1\6\1bx+si\1\2\1]\1" }, - { M_BX_DI_OFF8, "\60\1[\1\6\1bx+di\1\2\1]\1" }, - { M_BP_SI_OFF8, "\60\1[\1\6\1bp+si\1\2\1]\1" }, - { M_BP_DI_OFF8, "\60\1[\1\6\1bp+di\1\2\1]\1" }, - { M_SI_OFF8, "\60\1[\1\6\1si\1\2\1]\1" }, - { M_DI_OFF8, "\60\1[\1\6\1di\1\2\1]\1" }, - { M_BP_OFF8, "\60\1[\1\6\1bp\1\2\1]\1" }, - { M_BX_OFF8, "\60\1[\1\6\1bx\1\2\1]\1" }, - { M_BX_SI_OFF16, "\60\1[\1\6\1bx+si+\1\3\1]\1" }, - { M_BX_DI_OFF16, "\60\1[\1\6\1bx+di+\1\3\1]\1" }, - { M_BP_SI_OFF16, "\60\1[\1\6\1bp+si+\1\3\1]\1" }, - { M_BP_DI_OFF16, "\60\1[\1\6\1bp+di+\1\3\1]\1" }, - { M_SI_OFF16, "\60\1[\1\6\1si+\1\3\1]\1" }, - { M_DI_OFF16, "\60\1[\1\6\1di+\1\3\1]\1" }, - { M_BP_OFF16, "\60\1[\1\6\1bp+\1\3\1]\1" }, - { M_BX_OFF16, "\60\1[\1\6\1bx+\1\3\1]\1" }, - { M_EAX, "\60\1[\1\6\1eax]\1" }, - { M_ECX, "\60\1[\1\6\1ecx]\1" }, - { M_EDX, "\60\1[\1\6\1edx]\1" }, - { M_EBX, "\60\1[\1\6\1ebx]\1" }, - { M_SIB, "\60\1[\1\6\020\1]\1" }, - { M_OFF32, "\60\1[\1\6\4\1]\1" }, - { M_ESI, "\60\1[\1\6\1esi]\1" }, - { M_EDI, "\60\1[\1\6\1edi]\1" }, - { M_EAX_OFF8, "\60\1[\1\6\1eax\1\2\1]\1" }, - { M_ECX_OFF8, "\60\1[\1\6\1ecx\1\2\1]\1" }, - { M_EDX_OFF8, "\60\1[\1\6\1edx\1\2\1]\1" }, - { M_EBX_OFF8, "\60\1[\1\6\1ebx\1\2\1]\1" }, - { M_SIB_OFF8, "\60\1[\1\6\020\2\1]\1" }, - { M_EBP_OFF8, "\60\1[\1\6\1ebp\1\2\1]\1" }, - { M_ESI_OFF8, "\60\1[\1\6\1esi\1\2\1]\1" }, - { M_EDI_OFF8, "\60\1[\1\6\1edi\1\2\1]\1" }, - { M_EAX_OFF32, "\60\1[\1\6\1eax+\1\4\1]\1" }, - { M_ECX_OFF32, "\60\1[\1\6\1ecx+\1\4\1]\1" }, - { M_EDX_OFF32, "\60\1[\1\6\1edx+\1\4\1]\1" }, - { M_EBX_OFF32, "\60\1[\1\6\1ebx+\1\4\1]\1" }, - { M_SIB_OFF32, "\60\1[\1\6\020\1+\1\4\1]\1" }, - { M_EBP_OFF32, "\60\1[\1\6\1ebp+\1\4\1]\1" }, - { M_ESI_OFF32, "\60\1[\1\6\1esi+\1\4\1]\1" }, - { M_EDI_OFF32, "\60\1[\1\6\1edi+\1\4\1]\1" }, - { M_SID, "\60\1[\1\6\021\1+\1\4\1]\1" }, - { M_RAX, "\60\1[\1\6\1rax]\1" }, - { M_RCX, "\60\1[\1\6\1rcx]\1" }, - { M_RDX, "\60\1[\1\6\1rdx]\1" }, - { M_RBX, "\60\1[\1\6\1rbx]\1" }, - { M_RSIB, "\60\1[\1\6\022\1]\1" }, - { M_ROFF32, "\60\1[\1\6\4\1]\1" }, - { M_RSI, "\60\1[\1\6\1rsi]\1" }, - { M_RDI, "\60\1[\1\6\1rdi]\1" }, - { M_R8, "\60\1[\1\6\1r8]\1" }, - { M_R9, "\60\1[\1\6\1r9]\1" }, - { M_R10, "\60\1[\1\6\1r10]\1" }, - { M_R11, "\60\1[\1\6\1r11]\1" }, - { M_R12, "\60\1[\1\6\1r12]\1" }, - { M_R13, "\60\1[\1\6\1r13]\1" }, - { M_R14, "\60\1[\1\6\1r14]\1" }, - { M_R15, "\60\1[\1\6\1r15]\1" }, - { M_RAX_OFF8, "\60\1[\1\6\1rax\1\2\1]\1" }, - { M_RCX_OFF8, "\60\1[\1\6\1rcx\1\2\1]\1" }, - { M_RDX_OFF8, "\60\1[\1\6\1rdx\1\2\1]\1" }, - { M_RBX_OFF8, "\60\1[\1\6\1rbx\1\2\1]\1" }, - { M_RSIB_OFF8, "\60\1[\1\6\022\2\1]\1" }, - { M_RBP_OFF8, "\60\1[\1\6\1rbp\1\2\1]\1" }, - { M_RSI_OFF8, "\60\1[\1\6\1rsi\1\2\1]\1" }, - { M_RDI_OFF8, "\60\1[\1\6\1rdi\1\2\1]\1" }, - { M_R8_OFF8, "\60\1[\1\6\1r8\1\2\1]\1" }, - { M_R9_OFF8, "\60\1[\1\6\1r9\1\2\1]\1" }, - { M_R10_OFF8, "\60\1[\1\6\1r10\1\2\1]\1" }, - { M_R11_OFF8, "\60\1[\1\6\1r11\1\2\1]\1" }, - { M_R12_OFF8, "\60\1[\1\6\1r12\1\2\1]\1" }, - { M_R13_OFF8, "\60\1[\1\6\1r13\1\2\1]\1" }, - { M_R14_OFF8, "\60\1[\1\6\1r14\1\2\1]\1" }, - { M_R15_OFF8, "\60\1[\1\6\1r15\1\2\1]\1" }, - { M_RAX_OFF32, "\60\1[\1\6\1rax+\1\4\1]\1" }, - { M_RCX_OFF32, "\60\1[\1\6\1rcx+\1\4\1]\1" }, - { M_RDX_OFF32, "\60\1[\1\6\1rdx+\1\4\1]\1" }, - { M_RBX_OFF32, "\60\1[\1\6\1rbx+\1\4\1]\1" }, - { M_SIB_OFF32, "\60\1[\1\6\022\1+\1\4\1]\1" }, - { M_RBP_OFF32, "\60\1[\1\6\1rbp+\1\4\1]\1" }, - { M_RSI_OFF32, "\60\1[\1\6\1rsi+\1\4\1]\1" }, - { M_RDI_OFF32, "\60\1[\1\6\1rdi+\1\4\1]\1" }, - { M_R8_OFF32, "\60\1[\1\6\1r8+\1\4\1]\1" }, - { M_R9_OFF32, "\60\1[\1\6\1r9+\1\4\1]\1" }, - { M_R10_OFF32, "\60\1[\1\6\1r10+\1\4\1]\1" }, - { M_R11_OFF32, "\60\1[\1\6\1r11+\1\4\1]\1" }, - { M_R12_OFF32, "\60\1[\1\6\1r12+\1\4\1]\1" }, - { M_R13_OFF32, "\60\1[\1\6\1r13+\1\4\1]\1" }, - { M_R14_OFF32, "\60\1[\1\6\1r14+\1\4\1]\1" }, - { M_R15_OFF32, "\60\1[\1\6\1r15+\1\4\1]\1" }, - { M_RSID, "\60\1[\1\6\023\1+\1\4\1]\1" }, - { OFFSET16, "\1[\1\40\1]\1" }, - { OFFSET32, "\1[\1\41\1]\1" }, - { OFFSET64, "\1[\1\42\1]\1" }, - { R_AL, "\1al\1" }, - { R_CL, "\1cl\1" }, - { R_DL, "\1dl\1" }, - { R_BL, "\1bl\1" }, - { R_AH, "\1ah\1" }, - { R_CH, "\1ch\1" }, - { R_DH, "\1dh\1" }, - { R_BH, "\1bh\1" }, - { R_SPL, "\1spl\1"}, - { R_BPL, "\1bpl\1"}, - { R_SIL, "\1sil\1"}, - { R_DIL, "\1dil\1"}, - { R_R8B, "\1r8b\1"}, - { R_R9B, "\1r9b\1"}, - { R_R10B, "\1r10b\1"}, - { R_R11B, "\1r11b\1"}, - { R_R12B, "\1r12b\1"}, - { R_R13B, "\1r13b\1"}, - { R_R14B, "\1r14b\1"}, - { R_R15B, "\1r15b\1"}, - { R_AX, "\1ax\1" }, - { R_CX, "\1cx\1" }, - { R_DX, "\1dx\1" }, - { R_BX, "\1bx\1" }, - { R_SP, "\1sp\1" }, - { R_BP, "\1bp\1" }, - { R_SI, "\1si\1" }, - { R_DI, "\1di\1" }, - { R_R8W, "\1r8w\1"}, - { R_R9W, "\1r9w\1"}, - { R_R10W, "\1r10w\1"}, - { R_R11W, "\1r11w\1"}, - { R_R12W, "\1r12w\1"}, - { R_R13W, "\1r13w\1"}, - { R_R14W, "\1r14w\1"}, - { R_R15W, "\1r15w\1"}, - { R_EAX, "\1eax\1"}, - { R_ECX, "\1ecx\1"}, - { R_EDX, "\1edx\1"}, - { R_EBX, "\1ebx\1"}, - { R_ESP, "\1esp\1"}, - { R_EBP, "\1ebp\1"}, - { R_ESI, "\1esi\1"}, - { R_EDI, "\1edi\1"}, - { R_R8D, "\1r8d\1"}, - { R_R9D, "\1r9d\1"}, - { R_R10D, "\1r10d\1"}, - { R_R11D, "\1r11d\1"}, - { R_R12D, "\1r12d\1"}, - { R_R13D, "\1r13d\1"}, - { R_R14D, "\1r14d\1"}, - { R_R15D, "\1r15d\1"}, - { R_RAX, "\1rax\1"}, - { R_RCX, "\1rcx\1"}, - { R_RDX, "\1rdx\1"}, - { R_RBX, "\1rbx\1"}, - { R_RSP, "\1rsp\1"}, - { R_RBP, "\1rbp\1"}, - { R_RSI, "\1rsi\1"}, - { R_RDI, "\1rdi\1"}, - { R_R8, "\1r8\1"}, - { R_R9, "\1r9\1"}, - { R_R10, "\1r10\1"}, - { R_R11, "\1r11\1"}, - { R_R12, "\1r12\1"}, - { R_R13, "\1r13\1"}, - { R_R14, "\1r14\1"}, - { R_R15, "\1r15\1"}, - { R_ES, "\1es\1" }, - { R_CS, "\1cs\1" }, - { R_SS, "\1ss\1" }, - { R_DS, "\1ds\1" }, - { R_FS, "\1fs\1" }, - { R_GS, "\1gs\1" }, - { R_CR0, "\1cr0\1" }, - { R_CR1, "\1cr1\1" }, - { R_CR2, "\1cr2\1" }, - { R_CR3, "\1cr3\1" }, - { R_CR4, "\1cr4\1" }, - { R_CR5_INV, "\0" }, - { R_CR6_INV, "\0" }, - { R_CR7_INV, "\0" }, - { R_DR0, "\1dr0\1" }, - { R_DR1, "\1dr1\1" }, - { R_DR2, "\1dr2\1" }, - { R_DR3, "\1dr3\1" }, - { R_DR4_INV, "\0" }, - { R_DR5_INV, "\0" }, - { R_DR6, "\1dr6\1" }, - { R_DR7, "\1dr7\1" }, - { R_MM0, "\1mm0\1" }, - { R_MM1, "\1mm1\1" }, - { R_MM2, "\1mm2\1" }, - { R_MM3, "\1mm3\1" }, - { R_MM4, "\1mm4\1" }, - { R_MM5, "\1mm5\1" }, - { R_MM6, "\1mm6\1" }, - { R_MM7, "\1mm7\1" }, - { R_ST0, "\1st0\1" }, - { R_ST1, "\1st1\1" }, - { R_ST2, "\1st2\1" }, - { R_ST3, "\1st3\1" }, - { R_ST4, "\1st4\1" }, - { R_ST5, "\1st5\1" }, - { R_ST6, "\1st6\1" }, - { R_ST7, "\1st7\1" }, - { R_XMM0, "\1xmm0\1" }, - { R_XMM1, "\1xmm1\1" }, - { R_XMM2, "\1xmm2\1" }, - { R_XMM3, "\1xmm3\1" }, - { R_XMM4, "\1xmm4\1" }, - { R_XMM5, "\1xmm5\1" }, - { R_XMM6, "\1xmm6\1" }, - { R_XMM7, "\1xmm7\1" }, - { R_XMM8, "\1xmm8\1" }, - { R_XMM9, "\1xmm9\1" }, - { R_XMM10, "\1xmm10\1" }, - { R_XMM11, "\1xmm11\1" }, - { R_XMM12, "\1xmm12\1" }, - { R_XMM13, "\1xmm13\1" }, - { R_XMM14, "\1xmm14\1" }, - { R_XMM15, "\1xmm15\1" }, - { I_BYTE, "\60\12" }, - { I_WORD, "\60\13" }, - { I_DWRD, "\60\14" }, - { J_IMM, "\60\5" }, - { P_32, "\60\30\1:\1\31" }, - { P_48, "\60\32\1:\1\33" }, - { PRINT_I, "\50"}, -}; - -/* 64bit regs */ -static char *q_regs[] = { - "rax", "rcx", "rdx", "rbx", "rsp", "rbp", "rsi", "rdi", - "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15" -}; - -/* 32bit regs */ -static char *d_regs[] = { - "eax", "ecx", "edx", "ebx", "esp", "ebp", "esi", "edi", - "r8d", "r9d", "r10d", "r11d", "r12d", "r13d", "r14d", "r15d" -}; - -/* segment registers */ -static char *s_regs[] = { - "es", "cs", "ss", "ds", "fs", "gs" -}; - -/* Operand Cast */ -void X86Disas::print_opr_cast(unsigned char sz) -{ - if(cast) { - switch(sz) { - case SZ_sb: - case SZ_b : operands << Sprintf("byte " ); break; - case SZ_w : operands << Sprintf("word " ); break; - case SZ_d : operands << Sprintf("dword "); break; - case SZ_wp: operands << Sprintf("word far "); break; - case SZ_dp: operands << Sprintf("dword far "); break; - case SZ_q : operands << Sprintf("qword "); break; - } - cast--; - } -} - -/* Relative offset cast */ -void X86Disas::print_rel_cast(unsigned char sz) -{ - switch(sz) { - case SZ_b: operands << Sprintf( "short "); break; - case SZ_w: operands << Sprintf( "near " ); break; - case SZ_d: operands << Sprintf( "dword "); break; - } -} - -/* SIB */ -void X86Disas::print_sib(x86_Insn *ip, unsigned n) -{ - operands << Sprintf("%s+%s", d_regs[(ip->op[n].sib.base)], d_regs[(ip->op[n].sib.indx)]); - if (n_scal[ip->op[n].sib.scal] > 1) - operands << Sprintf( "*%d", n_scal[ip->op[n].sib.scal]); -} - -/* SIB(64) */ -void X86Disas::print_rsib(x86_Insn *ip, unsigned n) -{ - operands << Sprintf("%s+%s", q_regs[(ip->op[n].sib.base)], q_regs[(ip->op[n].sib.indx)]); - if (n_scal[ip->op[n].sib.scal] > 1) - operands << Sprintf( "*%d", n_scal[ip->op[n].sib.scal]); -} - -/* SI */ -void X86Disas::print_si(x86_Insn *ip, unsigned n) -{ - operands << Sprintf("%s*%d", d_regs[(ip->op[n].sib.indx)], n_scal[ip->op[n].sib.scal]); -} - -/* SIB(64) */ -void X86Disas::print_rsi(x86_Insn *ip, unsigned n) -{ - operands << Sprintf("%s*%d", q_regs[(ip->op[n].sib.indx)], n_scal[ip->op[n].sib.scal]); -} - -#define LVAL(c, lp) ( *( (c*)(lp) ) ) -#define PBW(sz, lp) \ - do { \ - unsigned _sz = sz; \ - for(; _sz >= 0; _sz -= 8); \ - operands << Sprintf("%x", *(u8b*)(lp+sz)); \ - } while(0) - -/* operand script interpreter */ -void X86Disas::opscript(x86_Insn *ip, unsigned n, char *script) -{ - for (;*(script); ++script) { - switch (*script) { - case 01: /* verbatim print delimiter */ - for (++script;*(script) != 01; ++script) - operands << Sprintf("%c", *script); - break; - case 02: /* print 8 bit offet (sign extended) */ - if ( LVAL(s8b,ip->op[n].lvalp) < 0 ) - operands << Sprintf("-0x%x", -1 * LVAL(s8b,ip->op[n].lvalp) ); - else - operands << Sprintf("+0x%x", LVAL(s8b,ip->op[n].lvalp) ); - break; - case 03: /* print 16 bit offset */ - operands << Sprintf("0x%x", LVAL(u16b,ip->op[n].lvalp) ); - break; - case 04: /* print 32 bit offset */ - operands << Sprintf("0x%lx", LVAL(u32b,ip->op[n].lvalp) ); - break; - case 010:/* print 64 bit offset */ - PBW(64, ip->op[n].lvalp); - break; - case 05:/* relative offset */ - switch(ip->op[n].size) { - case SZ_jb: - operands << Sprintf("0x%lx",G_prg_ctr+LVAL(s8b,ip->op[n].lvalp)); - break; - case SZ_jw: - operands << Sprintf("0x%lx",G_prg_ctr+LVAL(s16b,ip->op[n].lvalp)); - break; - case SZ_jd: - operands << Sprintf("0x%lx",G_prg_ctr+LVAL(s32b,ip->op[n].lvalp)); - break; - default : - operands << Sprintf(":%d", ip->op[n].size); - } - break; - case 06: /* print segment override */ - if (ip->seg) - operands << Sprintf( "%s:", s_regs[(ip->seg)-R_ES]); - break; - case 07: /* relative cast */ - print_rel_cast(ip->op[n].size); - break; - case 012: /* print 8bit imm */ - if (ip->op[n].size == SZ_sb) { - if ( LVAL(s8b,ip->op[n].lvalp) < 0 ) - operands << Sprintf("-0x%x", -1 * LVAL(s8b,ip->op[n].lvalp) ); - else - operands << Sprintf("+0x%x", LVAL(s8b,ip->op[n].lvalp) ); - } - else operands << Sprintf("0x%x", LVAL(u8b,ip->op[n].lvalp)); - break; - case 013: /* print 16bit imm */ - operands << Sprintf("0x%x",LVAL(u16b,ip->op[n].lvalp)); - break; - case 014: /* print 32bit imm */ - operands << Sprintf("0x%lx",LVAL(u32b,ip->op[n].lvalp)); - break; - case 020: /* print sib */ - print_sib(ip, n); - break; - case 021: /* print si */ - print_si(ip, n); - break; - case 022: /* print rsib */ - print_rsib(ip, n); - break; - case 023: /* print rsi */ - print_rsi(ip, n); - break; - case 030: /* print 16 bit segment of ptr32 */ - operands << Sprintf("0x%x", (u16b)(LVAL(u32b,ip->op[n].lvalp)>>16)); - break; - case 031: /* print 16 bit offset of ptr32 */ - operands << Sprintf("0x%x", (u16b)(LVAL(u32b,ip->op[n].lvalp)&0xFFFF)); - break; - case 032: /* print 16 bit segment of ptr48 */ - operands << Sprintf("0x%x", (u16b)(LVAL(u32b,ip->op[n].lvalp+4))); - break; - case 033: /* print 32 bit offset of ptr48 */ - operands << Sprintf("0x%lx", LVAL(u32b,ip->op[n].lvalp)); - break; - case 040: /* print offset 16b */ - operands << Sprintf("0x%x",LVAL(u16b,ip->op[n].lvalp)); - break; - case 041: /* print offset 32b */ - operands << Sprintf("0x%lx",LVAL(u32b,ip->op[n].lvalp)); - break; - case 042: /* print offset 64b */ - PBW(64, ip->op[n].lvalp); - break; - case 050: /* print lval */ - operands << Sprintf("0x%lx",ip->op[n].lval[0]); - break; - case 060: /* print operand cast */ - print_opr_cast(ip->op[n].size); - break; - } - } -} - -/* disasms the passed instruction pointer to intel syntax */ -void X86Disas::Disasm(x86_Insn *ip) -{ - cast = 1; - if (ip->op[0].size != ip->op[1].size && ip->op[2].type == -1) - cast = 2; - else - if ( ip->op[2].type != -1 && ((ip->op[0].size != ip->op[1].size) || - (ip->op[1].size != ip->op[2].size) || (ip->op[0].size != ip->op[2].size)) ) - cast = 2; - - /* address mode override */ - if (G_opr_prfx) - mnemonic << Sprintf( "o32 "); - /* operand mode override */ - if (G_adr_prfx) - mnemonic << Sprintf( "a32 "); - /* lock prefix */ - if (G_lock_prfx) - mnemonic << Sprintf( "lock "); - /* rep prefix */ - if (G_rep_prfx) - mnemonic << Sprintf( "rep "); - /* repne prefix */ - if (G_repne_prfx) - mnemonic << Sprintf( "repne "); - - /* print the instruction mnemonic */ - mnemonic << Sprintf("%s",mnemonics[ip->mnm]); - - /* string operation suffix */ - if (G_suff) { - switch(ip->op[0].size) { - case SZ_w : mnemonic << Sprintf("w"); break; - case SZ_d : mnemonic << Sprintf("d"); break; - case SZ_q : mnemonic << Sprintf("q"); break; - } - } - - /* space between insn menmonic and operands */ - mnemonic << Sprintf(" "); - - /* operand 1 */ - if (ip->op[0].type != -1) { - opscript(ip,0, odm[ip->op[0].type].scr); - /* operand 2 */ - if (ip->op[1].type != -1) { - operands << Sprintf(", "); - opscript(ip, 1, odm[ip->op[1].type].scr); - /* operand 3 */ - if (ip->op[2].type != -1) { - operands << Sprintf(", "); - opscript(ip, 2, odm[ip->op[2].type].scr); - } - } - } -} diff --git a/uppsrc/x86disas/x86.cpp b/uppsrc/x86disas/x86.cpp deleted file mode 100644 index 9164c828a..000000000 --- a/uppsrc/x86disas/x86.cpp +++ /dev/null @@ -1,852 +0,0 @@ -/* - * x86.c - x86 Decoder Functions - * - * Copyright (c) 2002,2003 Vivek Mohan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -#include "x86disas.h" - -/* the max nr of prefixes */ -#define MAX_PREFIXES 15 - -/* register types */ -#define T_NONE 0 -#define T_GPR 1 -#define T_MMX 2 -#define T_CRG 3 -#define T_DBG 4 -#define T_SEG 5 -#define T_XMM 6 - -/* REX, bit manip */ -#define REX_W(r) ((0xF & (r)) >> 3) -#define REX_R(r) ((0x7 & (r)) >> 2) -#define REX_X(r) ((0x3 & (r)) >> 1) -#define REX_B(r) ((0x1 & (r)) >> 0) -#define REX_MASK(n) (0xF & (n >> 16)) - -/* SIB, bit manip */ -#define SIB_S(b) ((b) >> 6) -#define SIB_I(b) (((b) >> 3) & 7) -#define SIB_B(b) ((b) & 7) - -/* MODRM, bit manip */ -#define MODRM_REG(b) (((b)>>3) & 7) -#define MODRM_NNN(b) (((b)>>3) & 7) -#define MODRM_MOD(b) (((b)>>6) & 3) -#define MODRM_RM(b) ((b) &7) - -#define DEF64(n) (((n) >> 3) & 1) -#define INV64(n) (((n) >> 4) & 1) -#define SUFF(n) (((n) >> 5) & 1) -#define O32(n) (((n) >> 1) & 1) -#define A32(n) ((n) & 1) - -/* literal values */ -#define LVAL8(lvalp, src) do { lvalp = src; src++; } while(0) -#define LVAL16(lvalp, src) do { lvalp = src; src += 2; } while(0) -#define LVAL32(lvalp, src) do { lvalp = src; src += 4; } while(0) -#define LVAL64(lvalp, src) do { lvalp = src; src += 8; } while(0) - -/* ResolveOpSize(..) - resolves the size of operand depending on the current - disassembly mode and the prefixes. - */ -unsigned char X86Disas::ResolveOpSize(unsigned char sz) -{ - if (sz == SZ_vw && G_dis_mode == 64) - return (G_opr_prfx) ? SZ_w : SZ_q; - else - if (sz == SZ_v && G_dis_mode == 64) { - if (REX_W(G_rex)) - return SZ_q; - else return (G_opr_prfx) ? SZ_w : SZ_d; - } - else if (sz == SZ_v || sz == SZ_vw || sz == SZ_z) - return (G_opr_mode == 16) ? SZ_w : SZ_d; - else if (sz == SZ_p) - return (G_opr_mode == 16) ? SZ_wp : SZ_dp; - else return sz; -} - -/* DecodeA(..) - Decodes operands of the type seg:offset - */ -unsigned char* X86Disas::DecodeA( unsigned char sz, unsigned char *src, x86_InsnOperand *op) -{ - /* seg16:off16 */ - if (G_opr_mode == 16) { - op->type = P_32; - op->size = SZ_w; - op->lvalp= src; - src += 4; /* 32 bits */ - } - /* seg16:off32 */ - else { - op->type = P_48; - op->size = SZ_d; - op->lvalp= src; - src += 6; /* 16 : 32 = 48 bits */ - } - return src; -} - -/* returns decoded GPR */ -unsigned int X86Disas::DecodeGPR(unsigned char sz, unsigned char rm) -{ - /* Mode dependent, operand prefix independent, size - specifier: SZ_m. In 64 bits mode, the GPR is 64bits - in all other cases its 32 bits. - */ - if (sz == SZ_m) - return (G_dis_mode == 64) ? R_RAX + rm : R_EAX + rm; - - /* byte sized operand, in 64 bit mode. In this mode, 16 different - 8 bit registers can be chosen. - */ - if (sz == SZ_b && G_dis_mode == 64) { - /* is it > bl ? if so, then the next register will - be sil instead of ah (in 64 bits) - */ - if (rm >= 4) - return R_SPL + (rm-4); - else return R_AL + rm; - } - else if (sz == SZ_b) - return R_AL + rm; - - /* word/dword/qword sized operands, in 64 bit mode. In this mode, - 16 different 16 bit registers can be chosen. - */ - else if ((sz == SZ_x || sz == SZ_v) && G_dis_mode == 64) { - /* if REX.W is specified then select a quad register */ - if (REX_W(G_rex)) - return R_RAX + rm; - /* in 64 bit mode, 0x66 means a 16 bit register */ - else if (G_opr_prfx) - return R_AX + rm; - /* default, 32 bit register */ - else return R_EAX + rm; - } - else if ((sz == SZ_d || sz == SZ_x) || (sz == SZ_v && G_opr_mode == 32)) - /* if mode is 32its then select 32bit registers */ - return R_EAX + rm; - else if ((sz == SZ_w) || (sz == SZ_v && G_opr_mode == 16)) - /* if mode is 16bits then select 16bit registers */ - return R_AX + rm; - else return 0; -} - -/* ResolveGPR64 (...) - Resolves any ambiguity in register(including 64bit) selection. - */ -unsigned int X86Disas::ResolveGPR64 (unsigned int gpr_op) -{ - /* in 64, the defualt register is 32bits, but if a REX - prefix is specified, then it its a 64 bits register - */ - if (G_dis_mode == 64) { - - /* extensible 64 bit gprs */ - if (gpr_op >= OP_rAXr8 && gpr_op <= OP_rDIr15) - gpr_op = gpr_op | (REX_B(G_rex) << 3); - - /* is it a default 64 bit instruction ? */ - if (G_def_64) - return (gpr_op-OP_rAX) + R_RAX; - else - /* is W bit of REX = 1 ? */ - if (REX_W(G_rex)) - /* its a 64 bits reg */ - return (gpr_op-OP_rAX) + R_RAX; - else - if (G_opr_prfx) - /* if prefixed by 0x66 */ - return (gpr_op-OP_rAX) + R_AX; - /* else, its a 32 bits reg */ - else return (gpr_op-OP_rAX) + R_EAX; - } - else { - /* is operand mode 16 ? */ - if (G_opr_mode == 16) { - /* extensible 64 bit gprs */ - if (gpr_op >= OP_rAXr8 && gpr_op <= OP_rDIr15) - return (gpr_op-OP_rAXr8) + R_AX; - /* if so, return a 16 bit reg */ - return (gpr_op-OP_rAX) + R_AX; - } - /* else, return a 32 bit reg */ - else { - /* extensible 64 bit gprs */ - if (gpr_op >= OP_rAXr8 && gpr_op <= OP_rDIr15) - return (gpr_op-OP_rAXr8) + R_EAX; - return (gpr_op-OP_rAX) + R_EAX; - } - } -} - -/* ResolveGPR32 (...) - Resolves any ambiguity in register(excluding 64bit) selection. - */ -unsigned int X86Disas::ResolveGPR32 (unsigned int gpr_op) -{ - /* in 64, the defualt register is 32bits, but if a REX - prefix is specified, then it its a 64 bits register - */ - if (G_dis_mode == 64) { - if (G_opr_prfx) - /* if prefixed by 0x66 */ - return (gpr_op-OP_eAX) + R_AX; - /* else, its a 32 bits reg */ - else return (gpr_op-OP_eAX) + R_EAX; - } - else { - /* is operand mode 16 ? */ - if (G_opr_mode == 16) - /* if so, return a 16 bit reg */ - return (gpr_op-OP_eAX) + R_AX; - /* else, return a 32 bit reg */ - else return (gpr_op-OP_eAX) + R_EAX; - } -} - -/* ResolveReg(...) - Auxiliary function for Resolving the register type - and returning the corresponding reg vaue. - */ -unsigned int X86Disas::ResolveReg(unsigned type, unsigned rm) { - switch (type) { - case T_MMX : /* mmx register */ - return R_MM0 + rm; - case T_XMM : /*xmm register */ - return R_XMM0 + rm; - case T_CRG : /* control register */ - return R_CR0 + rm; - case T_DBG : /* debug register */ - return R_DR0 + rm; - case T_NONE: - default: - return 0; - } -} - - -/* DecodeImm(...) - Decodes Immediate values - */ -unsigned char* X86Disas::DecodeImm(unsigned char sz, unsigned char *src, x86_InsnOperand *op) -{ - /* byte sized immediate */ - if (sz == SZ_b || sz == SZ_sb) { - op->type = I_BYTE; - LVAL8(op->lvalp, src); - } - - /* if disassembler mode is 64 bits, then a 0x66 prefix means - a 16 bit immediate value for SZ_v */ - if(sz == SZ_z && G_dis_mode == 64) { - /* if prefixed by 0x66, then a 16bit immediate */ - if (G_opr_prfx) { - op->type = I_WORD; - LVAL16(op->lvalp, src); - } - /* else its dword */ - else { - op->type = I_DWRD; - LVAL32(op->lvalp, src); - } - } - else /* if SZ_w or in 16bits operand mode */ - if (sz == SZ_w || (sz == SZ_z && G_opr_mode == 16)) { - op->type = I_WORD; - LVAL16(op->lvalp, src); - } - else /* if SZ_d or in 32bits operand mode */ - /*if (sz == SZ_d || (sz == SZ_z && G_opr_mode == 32))*/ { - op->type = I_DWRD; - LVAL32(op->lvalp, src); - } - - /* get size of operand */ - op->size = ResolveOpSize(sz); - return src; -} - -/* DecodeModRM(...) - Decodes ModRM - */ -unsigned char* X86Disas::DecodeModRM( - unsigned char *src, /* source */ - x86_InsnOperand *op, /* ptr to instruction operand struct */ - unsigned char sz, /* operand sz */ - unsigned char rm_type, /* the type of operand specified by rm, if mod = 11b */ - x86_InsnOperand *opreg, /* ptr to instruction operand struct for reg operand */ - unsigned char reg_sz, /* the size of operand specified by reg */ - unsigned char reg_type /* the type of operand specified by reg */ - ) -{ - /* get mod, r/m and reg fields */ - unsigned char mod = MODRM_MOD(*src); - unsigned char rm = (REX_B(G_rex) << 3) | MODRM_RM(*src); - unsigned char reg = (REX_R(G_rex) << 3) | MODRM_REG(*src); - - /* move to next byte in source */ - ++src; - - /* if mod is 11b, then the r_m field specifies a general - purpose register or mmx/sse/control/debug register - */ - if (mod == 3) { - if (rm_type == T_GPR) /* general purpose register */ - op->type = DecodeGPR(sz, rm); - else op->type = ResolveReg(rm_type, rm); - } - else { - /* if in 64 bit mode, only 32/64 bit reg addressing is allowed. */ - if (G_dis_mode == 64) { - /* if the lower 3 bits of rm = 4 then the next byte is an - SIB byte */ - if ((rm & 7) == 4) { - op->type = (mod * 8) + M_RAX + rm; - op->sib.scal = SIB_S(*src); - op->sib.indx = SIB_I(*src) + REX_X(G_rex); - op->sib.base = SIB_B(*src) + REX_B(G_rex); - /* if lower 3 bits of base = 5, then its scale * index */ - if ((op->sib.base & 7) == 5 && op->type == M_RSIB) - op->type = M_RSID; - ++src; - } - else - /* An address size prefix denotes the use of 32 bit registers */ - if (G_adr_prfx) - op->type = (mod * 8) + M_EAX + rm; - /* By default its 64 bit registers */ - else op->type = (mod * 16) + M_RAX + rm; - } else { - /* 16 bit addressing */ - if (G_adr_mode == 16) { - op->type = (mod * 8) + M_BX_SI + rm; - } - /* 32 bit addressing */ - else { - op->type = (mod * 8) + M_EAX + rm; - /* if the lower 3 bits of rm = 4 then the next byte is an - SIB byte */ - if (rm == 4) { - op->sib.scal = SIB_S(*src); - op->sib.indx = SIB_I(*src); - op->sib.base = SIB_B(*src); - /* if lower 3 bits of base = 5, then its scale * index */ - if (op->sib.base == 5 && op->type == M_SIB) - op->type = M_SID; - ++src; - } - } - } - } - - /* 8 bit displacements */ - if ((M_BX_SI_OFF8 <= op->type && op->type <= M_BX_OFF8) || - (M_EAX_OFF8 <= op->type && op->type <= M_EDI_OFF8) || - (M_RAX_OFF8 <= op->type && op->type <= M_R15_OFF8) ) - LVAL8(op->lvalp, src); - else - /* 16 bit displacements */ - if ((M_BX_SI_OFF16 <= op->type && op->type <= M_BX_OFF16) || - (M_OFF16 == op->type) ) - LVAL16(op->lvalp, src); - else - /* 32 bit displacements */ - if ((M_EAX_OFF32 <= op->type && op->type <= M_EDI_OFF32) || - (M_RAX_OFF32 <= op->type && op->type <= M_R15_OFF32) || - (M_OFF32 == op->type) || - (M_SID == op->type) || - (M_RSID == op->type) ) - LVAL32(op->lvalp, src); - - if (opreg) { - /* resolve register encoded in reg field */ - if (reg_type == T_GPR) /* general purpose register */ - opreg->type = DecodeGPR(reg_sz, reg); - else opreg->type = ResolveReg(reg_type, reg); - } - - /* determine the operand sizes */ - op->size = ResolveOpSize(sz); - if (opreg) opreg->size = ResolveOpSize(reg_sz); - - return src; -} - -/* DecodeO(..) - Decodes offset - */ -unsigned char* X86Disas::DecodeO( unsigned char sz, unsigned char *src, x86_InsnOperand *op) -{ - /* In 64bits mode */ - if (G_dis_mode == 64) { - /* if 0x67, the offest is 32bits long */ - if (G_adr_prfx) { - LVAL32(op->lvalp, src); - op->type = OFFSET32; - - } - /* else its 64bits long */ - else { - LVAL64(op->lvalp, src); - op->type = OFFSET64; - } - } - else - /* if the addressing mode is 16bits, so is offset */ - if (G_adr_mode == 16) { - LVAL16(op->lvalp, src); - op->type = OFFSET16; - } - /* if the addressing mode is 32bits, so is offset */ - else { - LVAL32(op->lvalp, src); - op->type = OFFSET32; - } - - op->size = ResolveOpSize(sz); - return src; -} - - -/* - DisasmOperands(...) - Arguments - src -> source buffer ptr - ip -> instruction pointer - insn -> instruction table entry pointer - -*/ -unsigned char* X86Disas::DisasmOperands( unsigned char *src, x86_Insn *ip, x86_TableEntry *insn) -{ - -/* Some macros for clarity of code */ -/* TE_OP - Table Entry, Operand Types*/ -#define TE_OP1T insn->op1[0] -#define TE_OP2T insn->op2[0] -#define TE_OP3T insn->op3[0] -#define TE_OP1S insn->op1[1] -#define TE_OP2S insn->op2[1] -#define TE_OP3S insn->op3[1] -/* DI_OP - Disassembled Instruction Pointer, Operand */ -#define DI_OP1 ip->op[0] -#define DI_OP2 ip->op[1] -#define DI_OP3 ip->op[2] -#define DI_OP1T ip->op[0].type -#define DI_OP2T ip->op[1].type -#define DI_OP3T ip->op[2].type -#define DI_OP1S ip->op[0].size -#define DI_OP2S ip->op[1].size -#define DI_OP3S ip->op[2].size - - switch(TE_OP1T) { - case OP_A : - src = DecodeA(TE_OP1S, src, &(DI_OP1)); - break; - /* M[b] */ - case OP_M : - if (MODRM_RM(*src) == 3) - G_err = 1; - /* E, G/P/V/I/CL/1 */ - case OP_E : - if (TE_OP2T == OP_G) /* E, G */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, &(DI_OP2), TE_OP2S, T_GPR); - else - if (TE_OP2T == OP_P) /* E, P */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, &(DI_OP2), TE_OP2S, T_MMX); - else - if (TE_OP2T == OP_V) /* E, V */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, &(DI_OP2), TE_OP2S, T_XMM); - else { /* E */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, NULL, 0, T_NONE); - if (TE_OP2T == OP_CL) { /* E, CL */ - DI_OP2T = R_CL; - DI_OP2S = SZ_b; - } - else - if (TE_OP2T == OP_I1) { /* E, 1 */ - DI_OP2T = PRINT_I; - G_temp = 1; - DI_OP2.lvalp = (unsigned char*) (&G_temp); - } - else - if (TE_OP2T == OP_I) /* E, I */ - src = DecodeImm(TE_OP2S, src, &(DI_OP2)); - } - break; - - /* G, E/PR[,I]/VR */ - case OP_G : - if (TE_OP2T == OP_E) /* G, E */ - src = DecodeModRM(src, &(DI_OP2), TE_OP2S, T_GPR, &(DI_OP1), TE_OP1S, T_GPR); - else - if (TE_OP2T == OP_PR) { /* G, PR */ - /* the mod field ought to be zero */ - if (MODRM_RM(*src) != 3) - G_err = 1; - src = DecodeModRM(src, &(DI_OP2), TE_OP2S, T_MMX, &(DI_OP1), TE_OP1S, T_GPR); - if (TE_OP3T == OP_I) /* G, PR, I */ - src = DecodeImm(TE_OP3S, src, &(DI_OP3)); - } - else - if (TE_OP2T == OP_VR) { /* G, VR */ - /* the mod field ought to be zero */ - if (MODRM_RM(*src) != 3) - G_err = 1; - src = DecodeModRM(src, &(DI_OP2), TE_OP2S, T_XMM, &(DI_OP1), TE_OP1S, T_GPR); - } - break; - - /* AL..BH, I/O/DX] */ - case OP_AL : case OP_CL : case OP_DL : case OP_BL : - case OP_AH : case OP_CH : case OP_DH : case OP_BH : - DI_OP1T = R_AL + (TE_OP1T - OP_AL); - DI_OP1S = SZ_b; - if (TE_OP2T == OP_I) /* AL..BH, Ib */ - src = DecodeImm(TE_OP2S, src, &(DI_OP2)); - else - if (TE_OP2T == OP_DX) /* AL..BH, DX */ - DI_OP2T = R_DX; - else - if (TE_OP2T == OP_O) /* AL..BH, O */ - src = DecodeO(TE_OP2S, src, &(DI_OP2)); - break; - - /* rAX[r8]..rDI[r15], I/rAX..rDI/O */ - case OP_rAXr8 : case OP_rCXr9 : case OP_rDXr10 : case OP_rBXr11 : - case OP_rSPr12: case OP_rBPr13: case OP_rSIr14 : case OP_rDIr15 : - case OP_rAX : case OP_rCX : case OP_rDX : case OP_rBX : - case OP_rSP : case OP_rBP : case OP_rSI : case OP_rDI : - DI_OP1T = ResolveGPR64(TE_OP1T); - if (TE_OP2T == OP_I) /* rAX[r8]..rDI[r15], I */ - src = DecodeImm(TE_OP2S, src, &(DI_OP2)); - else /* rAX[r8]..rDI[r15], rAX..rDI */ - if (TE_OP2T >= OP_rAX && TE_OP2T <= OP_rDI) - DI_OP2T = ResolveGPR64(TE_OP2T); - else - if (TE_OP2T == OP_O) /* rAX[r8]..rDI[r15], O */ - src = DecodeO( insn->op2[1], src, &(DI_OP2)); - break; - - /* AL[r8b]..BH[r15b], I */ - case OP_ALr8b : case OP_CLr9b : case OP_DLr10b : case OP_BLr11b : - case OP_AHr12b: case OP_CHr13b: case OP_DHr14b : case OP_BHr15b : - { - unsigned long gpr = TE_OP1T; - /* extensible 8 bit gprs */ - if (TE_OP1T >= OP_ALr8b && TE_OP1T <= OP_BHr15b) - gpr = gpr | (REX_B(G_rex) << 3); - DI_OP1T = (gpr - OP_AL) + R_AL; - if (TE_OP2T == OP_I) /* AL[r8b]..BH[r15b], I */ - src = DecodeImm(TE_OP2S, src, &(DI_OP2)); - break; - } - - /* eAX..eDX, DX/I */ - case OP_eAX : case OP_eCX : case OP_eDX : case OP_eBX : - case OP_eSP : case OP_eBP : case OP_eSI : case OP_eDI : - DI_OP1T = ResolveGPR32(TE_OP1T); - if (TE_OP2T == OP_DX) /* eAX..eDX, DX */ - DI_OP2T = R_DX; - else - if (TE_OP2T == OP_I) /* eAX..eDX, I */ - src = DecodeImm(TE_OP2S, src, &(DI_OP2)); - break; - - /* ES..GS */ - case OP_ES : case OP_CS : case OP_DS : - case OP_SS : case OP_FS : case OP_GS : - /* in 64bits mode, only fs and gs are allowed */ - if (G_dis_mode == 64) - if (TE_OP1T != OP_FS && TE_OP1T != OP_GS) - G_err = 1; - DI_OP1T = (TE_OP1T - OP_ES) + R_ES; - break; - - /* J */ - case OP_J : - src = DecodeImm( TE_OP1S, src, &(DI_OP1)); - DI_OP1T = J_IMM; - switch(DI_OP1S) { - case SZ_b : DI_OP1S = SZ_jb; break; - case SZ_w : DI_OP1S = SZ_jw; break; - case SZ_d : DI_OP1S = SZ_jd; break; - } - break ; - - /* P, Q/W/E[,I] */ - case OP_P : - if (TE_OP2T == OP_Q) /* P, Q */ - src = DecodeModRM (src, &(DI_OP2), TE_OP2S, T_MMX, &(DI_OP1), TE_OP1S, T_MMX); - else - if (TE_OP2T == OP_W) /* P, W */ - src = DecodeModRM(src, &(DI_OP2), TE_OP2S, T_XMM, &(DI_OP1), TE_OP1S, T_MMX); - else - if (TE_OP2T == OP_E) { /* P, E */ - src = DecodeModRM(src, &(DI_OP2), TE_OP2S, T_GPR, &(DI_OP1), TE_OP1S, T_MMX); - if (TE_OP3T == OP_I) /* P, E, I */ - src = DecodeImm(TE_OP3S, src, &(DI_OP3)); - } - break; - - /* R, C/D */ - case OP_R : - if (TE_OP2T == OP_C) /* R, C */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, &(DI_OP2), TE_OP2S, T_CRG); - else - if (TE_OP2T == OP_D) /* R, D */ - src = DecodeModRM(src, &(DI_OP1), TE_OP1S, T_GPR, &(DI_OP2), TE_OP2S, T_DBG); - break; - - /* C, R */ - case OP_C : - src = DecodeModRM (src, &(DI_OP2), TE_OP2S, T_GPR, &(DI_OP1), TE_OP1S, T_CRG); - break; - - /* D, R */ - case OP_D : - src = DecodeModRM (src, &(DI_OP2), TE_OP2S, T_GPR, &(DI_OP1), TE_OP1S, T_DBG); - break; - - /* Q, P */ - case OP_Q : - src = DecodeModRM (src, &(DI_OP1), TE_OP1S, T_MMX, &(DI_OP2), TE_OP2S, T_MMX); - break; - - /* W, V */ - case OP_W : - src = DecodeModRM (src, &(DI_OP1), TE_OP1S, T_XMM, &(DI_OP2), TE_OP2S, T_XMM); - break; - - /* V, W[,I]/Q */ - case OP_V : - if (TE_OP2T == OP_W) { /* V, W */ - src = DecodeModRM (src, &(DI_OP2), TE_OP2S, T_XMM, &(DI_OP1), TE_OP1S, T_XMM); - if (TE_OP3T == OP_I) /* V, W, I */ - src = DecodeImm(TE_OP3S, src, &(DI_OP3)); - } - else - if (TE_OP2T == OP_Q) /* V, Q */ - src = DecodeModRM (src, &(DI_OP2), TE_OP2S, T_MMX, &(DI_OP1), TE_OP1S, T_XMM); - break; - - /* DX, eAX/AL */ - case OP_DX : - DI_OP1T = R_DX; - if (TE_OP2T == OP_eAX) /* DX, eAX */ - DI_OP2T = ResolveGPR32(TE_OP2T); - else - if (TE_OP2T == OP_AL) /* DX, AL */ - DI_OP2T = R_AL; - break; - - /* I, I/AL/eAX */ - case OP_I : - src = DecodeImm( TE_OP1S, src, &(DI_OP1)); - if (TE_OP2T == OP_I) /* I, I */ - src = DecodeImm( TE_OP2S, src, &(DI_OP2)); - else - if (TE_OP2T == OP_AL) /* I, AL */ - DI_OP2T = R_AL; - else - if (TE_OP2T == OP_eAX) /* I, eAX */ - DI_OP2T = ResolveGPR32(TE_OP2T); - break; - - /* O, AL/eAX */ - case OP_O : - src = DecodeO(TE_OP1S, src, &(DI_OP1)); - if (TE_OP2T == OP_AL) /* O, AL */ - DI_OP2T = R_AL; - else - if (TE_OP2T == OP_eAX) /* O, eAX */ - DI_OP2T = ResolveGPR32(TE_OP2T); - break; - - /* 3 */ - case OP_I3 : - DI_OP2T = PRINT_I; - G_temp = 3; - DI_OP2.lvalp = (unsigned char*)(&G_temp); - break; - case OP_ST0 : case OP_ST1 : case OP_ST2 : case OP_ST3 : - case OP_ST4 : case OP_ST5 : case OP_ST6 : case OP_ST7 : - DI_OP1T = (TE_OP1T-OP_ST0) + R_ST0; - if (TE_OP2T >= OP_ST0 && TE_OP2T <= OP_ST7) - DI_OP2T = (TE_OP2T-OP_ST0) + R_ST0; - break; - - /* none */ - default : - DI_OP1T = DI_OP2T = - DI_OP3T = -1; - } - return src; - -/* undefine macros, their services are no - longer required - */ -#undef TE_OP1T -#undef TE_OP2T -#undef TE_OP3T -#undef TE_OP1S -#undef TE_OP2S -#undef TE_OP3S -#undef DI_OP1 -#undef DI_OP2 -#undef DI_OP3 -#undef DI_OP1T -#undef DI_OP2T -#undef DI_OP3T -#undef DI_OP1S -#undef DI_OP2S -#undef DI_OP3S - -} - -/* clear instruction pointer */ -void X86Disas::Clear(x86_Insn *ip) -{ - ip->mnm = 0; - ip->seg = 0; - ip->a32 = 0; - ip->o32 = 0; - ip->op[0].size = 0; - ip->op[1].size = 0; - ip->op[2].size = 0; - ip->op[0].type = (-1); - ip->op[1].type = (-1); - ip->op[2].type = (-1); - G_rex = 0; - G_rep_prfx = 0; - G_repne_prfx = 0; - G_lock_prfx = 0; - G_opr_prfx = 0; - G_adr_prfx = 0; - G_err = 0; - G_suff = 0; -} - -/* x86_DisasmInsn(...) */ -unsigned char* X86Disas::DisasmInsn (unsigned char *src, x86_Insn *ip) -{ - /* save the value of the ptr.. so tat we can calculate the number of - bytes diassembled in the end. - */ - unsigned char *srcref = src; - unsigned char prfxflag = 0; - unsigned i; - /* ptr to instruction in table */ - x86_TableEntry *insn = NULL; - /* initialize instruction pointer (ip) */ - Clear(ip); - /* search for prefixes */ - for (i =0; prfxflag == 0; ++i) { - if (0x40 <= *src && *src <= 0x4F) { - if (G_dis_mode == 64) { - G_rex = *src; - ++src; - } - else prfxflag = 1; - } - else switch(*src) { - case 0x2E : ip->seg = R_CS; src++; break; - case 0x36 : ip->seg = R_SS; src++; break; - case 0x3E : ip->seg = R_DS; src++; break; - case 0x26 : ip->seg = R_ES; src++; break; - case 0x64 : ip->seg = R_FS; src++; break; - case 0x65 : ip->seg = R_GS; src++; break; - case 0x66 : G_opr_prfx = 0x66; src++ ; break ; - case 0x67 : G_adr_prfx = 0x67; src++ ; break ; - case 0xF0 : G_lock_prfx = 0xF0; src++ ; break; - case 0xF2 : G_repne_prfx= 0xF2; src++ ; break; - case 0xF3 : G_rep_prfx = 0xF3; src++ ; break; - default : prfxflag = 1; - } - /* if > MAX_PREFIXES, disintegrate */ - if (i >= MAX_PREFIXES) { - G_err = 1; - break; /* break from loop */ - } - } - /* search map for instruction */ - src = GetInsnEntry(src, &insn); - /* assign instruction mnemonic code */ - ip->mnm = insn->mnm; - /* if invalid set error */ - if (ip->mnm == Iinvalid) G_err = 1; - - /* PREFIXES */ - G_rex = G_rex & REX_MASK(insn->prfx); /* rex */ - G_def_64 = DEF64(insn->prfx); /* set the default 64 flag */ - G_suff = SUFF(insn->prfx); /* set the suffix flag */ - /* check if the instruction is invalid in 64 bits mode */ - if (G_dis_mode == 64 && INV64(insn->prfx)) - G_err = 1; - /* set operand mode */ - if (G_opr_prfx) { - if (G_dis_mode == 64) - G_opr_mode = 16; - else G_opr_mode = (G_opr_mode == 32) ? 16 : 32 ; - } - /* set address mode */ - if (G_adr_prfx) { - if (G_dis_mode == 64) - G_adr_mode = 16; - else G_adr_mode = (G_adr_mode == 32) ? 16 : 32 ; - } - /* increment source value */ - ++src; - /* disassemble operands */ - src = DisasmOperands(src, ip, insn); - - /* get suffix size */ - if (G_suff) - ip->op[0].size = ResolveOpSize(SZ_v); - /* check if o32 prefix was used */ - if (O32(insn->prfx) && G_opr_prfx) - G_opr_prfx = 0; - /* check if a32 prefix was used */ - if (A32(insn->prfx) && G_adr_prfx) - G_adr_prfx = 0; - /* if its a 3dnow! instruction, get mnemonic code based - on the suffix */ - if (ip->mnm == I3dnow) { - ip->mnm = Get3DNowInsnMnemonic(*src); - ++src; - } - /* check for G_err */ - if (G_err) { - Clear(ip); - /* init as define byte */ - ip->mnm = Idb; - ip->op[0].type = I_BYTE; - ip->op[0].size = 0; - /* the first byte as operand */ - ip->op[0].lvalp = srcref; - src = srcref + 1; - } - /* increase program counter */ - G_prg_ctr += (unsigned long)((src)-(srcref)); - return src; -} diff --git a/uppsrc/x86disas/x86disas.cpp b/uppsrc/x86disas/x86disas.cpp deleted file mode 100644 index 0cecc7b55..000000000 --- a/uppsrc/x86disas/x86disas.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#include "x86disas.h" - -X86Disas::X86Disas(dword ip, byte *data) -{ - G_dis_mode = 32; /* disassembly mode, (16/32/64) */ - G_opr_mode = 32; /* operand mode, (16/32) */ - G_adr_mode = 32; /* address mode, (16/32) */ - G_opr_prfx = 0; /* 0x66 prefix flag */ - G_adr_prfx = 0; /* 0x67 prefix flag */ - G_lock_prfx= 0; /* 0xF0 (lock) prefix flag */ - G_rep_prfx = 0; /* 0xF3 (rep) prefix flag */ - G_repe_prfx= 0; /* 0xF3 (repe) prefix flag */ - G_repne_prfx= 0; /* 0xF2 (repne) prefix flag */ - G_prg_ctr = 0; /* program counter */ - G_err = 0; /* disassembly abort flag */ - G_rex = 0; /* REX prefix for 64bit mode */ - G_suff = 0; /* instruction suffix flag */ - G_def_64 = 0; /* default mode 64 flag */ - G_temp = 0; /* a temp global var */ - - G_prg_ctr = ip; - - x86_Insn ins; - DisasmInsn(data, &ins); - size = G_prg_ctr - ip; - Disasm(&ins); - iscall = ins.mnm == Icall; -} diff --git a/uppsrc/x86disas/x86disas.h b/uppsrc/x86disas/x86disas.h deleted file mode 100644 index f3b640f5d..000000000 --- a/uppsrc/x86disas/x86disas.h +++ /dev/null @@ -1,239 +0,0 @@ -#ifndef _x86disas_x86disas_h -#define _x86disas_x86disas_h - -#include - -/* - * x86.c - x86 Decoder Functions - * - * Copyright (c) 2002,2003 Vivek Mohan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -struct x86_TableEntry { - unsigned int mnm; /* instruction mnemonic code */ - unsigned char op1[2]; /* operand 1, code/sz */ - unsigned char op2[2]; /* operand 2, code/sz */ - unsigned char op3[2]; /* operand 3, code/sz */ - unsigned int prfx; /* allowed prefixes */ -}; - -enum { - OP_NONE, - OP_A, - OP_E, - OP_M, - OP_G, - OP_I, - OP_AL, OP_CL, OP_DL, OP_BL, OP_AH, OP_CH, OP_DH, OP_BH, - OP_ALr8b, OP_CLr9b, OP_DLr10b, OP_BLr11b, OP_AHr12b, OP_CHr13b, OP_DHr14b, OP_BHr15b, - OP_AX, OP_CX, OP_DX, OP_BX, OP_SI, OP_DI, OP_SP, OP_BP, - OP_rAX, OP_rCX, OP_rDX, OP_rBX, OP_rSP, OP_rBP, OP_rSI, OP_rDI, - OP_rAXr8, OP_rCXr9, OP_rDXr10, OP_rBXr11, OP_rSPr12, OP_rBPr13, OP_rSIr14, OP_rDIr15, - OP_eAX, OP_eCX, OP_eDX, OP_eBX, OP_eSI, OP_eDI, OP_eSP, OP_eBP, - OP_ES, OP_CS, OP_DS, OP_SS, OP_FS, OP_GS, - OP_ST0, OP_ST1, OP_ST2, OP_ST3, OP_ST4, OP_ST5, OP_ST6, OP_ST7, - OP_J, - OP_S, - OP_O, - OP_I1, OP_I3, - OP_V, - OP_W, - OP_Q, - OP_P, - OP_R, - OP_C, - OP_D, - OP_VR, - OP_PR -}; - -/* operand sizes enumerated */ - -enum { - SZ_b = 1, SZ_w, SZ_z, SZ_v, SZ_vw, SZ_d, SZ_q, SZ_p, SZ_wp, SZ_dp, SZ_sb, - SZ_jb, SZ_jw, SZ_jd, SZ_x, SZ_m -}; - -/* WARNING - Make sure the order of enumeration is same as order - of operand script declarations in syntax.c - */ - -enum { - - /* 16 bit addressing modes */ - M_BX_SI = 0, M_BX_DI, M_BP_SI, M_BP_DI, M_SI, M_DI, M_OFF16, M_BX, - M_BX_SI_OFF8, M_BX_DI_OFF8, M_BP_SI_OFF8, M_BP_DI_OFF8, - M_SI_OFF8, M_DI_OFF8, M_BP_OFF8, M_BX_OFF8, - M_BX_SI_OFF16, M_BX_DI_OFF16, M_BP_SI_OFF16, M_BP_DI_OFF16, - M_SI_OFF16, M_DI_OFF16, M_BP_OFF16, M_BX_OFF16, - - /* 32 bit addressing modes */ - M_EAX, M_ECX, M_EDX, M_EBX, M_SIB, M_OFF32, M_ESI, M_EDI, - M_EAX_OFF8, M_ECX_OFF8, M_EDX_OFF8, M_EBX_OFF8, M_SIB_OFF8, - M_EBP_OFF8, M_ESI_OFF8, M_EDI_OFF8, - M_EAX_OFF32, M_ECX_OFF32, M_EDX_OFF32, M_EBX_OFF32, M_SIB_OFF32, - M_EBP_OFF32, M_ESI_OFF32, M_EDI_OFF32, - M_SID, - - /* (amd)64 bit addressing modes */ - M_RAX, M_RCX, M_RDX, M_RBX, M_RSIB, M_ROFF32, M_RSI, M_RDI, - M_R8, M_R9, M_R10, M_R11, M_R12, M_R13, M_R14, M_R15, - M_RAX_OFF8, M_RCX_OFF8, M_RDX_OFF8, M_RBX_OFF8, M_RSIB_OFF8, - M_RBP_OFF8, M_RSI_OFF8, M_RDI_OFF8, - M_R8_OFF8, M_R9_OFF8, M_R10_OFF8, M_R11_OFF8, M_R12_OFF8, - M_R13_OFF8, M_R14_OFF8, M_R15_OFF8, - M_RAX_OFF32, M_RCX_OFF32, M_RDX_OFF32, M_RBX_OFF32, M_RSIB_OFF32, - M_RBP_OFF32, M_RSI_OFF32, M_RDI_OFF32, - M_R8_OFF32, M_R9_OFF32, M_R10_OFF32, M_R11_OFF32, M_R12_OFF32, - M_R13_OFF32, M_R14_OFF32, M_R15_OFF32, - M_RSID, - - /* mem offset */ - OFFSET16, OFFSET32, OFFSET64, - - /* 8 bit GPRs */ - R_AL, R_CL, R_DL, R_BL, R_AH, R_CH, R_DH, R_BH, R_SPL, R_BPL, R_SIL, R_DIL, - R_R8B, R_R9B, R_R10B, R_R11B, R_R12B, R_R13B, R_R14B, R_R15B, - /* 16 bit GPRs */ - R_AX, R_CX, R_DX, R_BX, R_SP, R_BP, R_SI, R_DI, - R_R8W, R_R9W, R_R10W, R_R11W, R_R12W, R_R13W, R_R14W, R_R15W, - /* 32 bit GPRs */ - R_EAX, R_ECX, R_EDX, R_EBX, R_ESP, R_EBP, R_ESI, R_EDI, - R_R8D, R_R9D, R_R10D, R_R11D, R_R12D, R_R13D, R_R14D, R_R15D, - /* 64 bit GPRs */ - R_RAX, R_RCX, R_RDX, R_RBX, R_RSP, R_RBP, R_RSI, R_RDI, - R_R8, R_R9, R_R10, R_R11, R_R12, R_R13, R_R14, R_R15, - - /* segment registers */ - R_ES, R_CS, R_SS, R_DS, R_FS, R_GS, - /* control registers*/ - R_CR0, R_CR1, R_CR2, R_CR3, R_CR4, R_CR5_INV, R_CR6_INV, R_CR7_INV, - /* debug registers */ - R_DR0, R_DR1, R_DR2, R_DR3, R_DR4_INV, R_DR5_INV, R_DR6, R_DR7, - /* mmx registers */ - R_MM0, R_MM1, R_MM2, R_MM3, R_MM4, R_MM5, R_MM6, R_MM7, - /* x87 registers */ - R_ST0, R_ST1, R_ST2, R_ST3, R_ST4, R_ST5, R_ST6, R_ST7, - /* extended multimedia registers */ - R_XMM0, R_XMM1, R_XMM2, R_XMM3, R_XMM4, R_XMM5, R_XMM6, R_XMM7, - R_XMM8, R_XMM9, R_XMM10, R_XMM11, R_XMM12, R_XMM13, R_XMM14, R_XMM15, - - I_BYTE, I_WORD, I_DWRD, - J_IMM, - P_32, P_48, - PRINT_I, - STRING -}; - -extern char *mnemonics[]; - -#define DO(x) I##x, - -enum { -#include "mnemonics.i" -}; - -#undef DO - -class X86Disas { - struct x86_InsnOperand { - unsigned char size; /* operand size */ - signed type; /* operand type */ - unsigned char *lvalp; - unsigned long lval[2]; /* literal values */ - struct { /* SIB decoded */ - unsigned char base; /* - Base */ - unsigned char indx; /* - Index */ - unsigned char scal; /* - Scale */ - } sib; - }; - - typedef struct x86_Insn { - unsigned mnm; /* the mnemonic code */ - unsigned char seg; /* segment override */ - unsigned char a32; /* address 32 prefix */ - unsigned char o32; /* operand 32 prefix */ - x86_InsnOperand op[3]; /* 3 operands for instruction */ - }; - - /* operand types enumerated */ - - unsigned char G_dis_mode; /* disassembly mode, (16/32/64) */ - unsigned char G_opr_mode; /* operand mode, (16/32) */ - unsigned char G_adr_mode; /* address mode, (16/32) */ - unsigned char G_opr_prfx; /* 0x66 prefix flag */ - unsigned char G_adr_prfx; /* 0x67 prefix flag */ - unsigned char G_lock_prfx; /* 0xF0 (lock) prefix flag */ - unsigned char G_rep_prfx; /* 0xF3 (rep) prefix flag */ - unsigned char G_repe_prfx; /* 0xF3 (repe) prefix flag */ - unsigned char G_repne_prfx; /* 0xF2 (repne) prefix flag */ - unsigned long G_prg_ctr; /* program counter */ - unsigned char G_err; /* disassembly abort flag */ - unsigned char G_rex; /* REX prefix for 64bit mode */ - unsigned char G_suff; /* instruction suffix flag */ - unsigned char G_def_64; /* default mode 64 flag */ - unsigned long G_temp; /* a temp global var */ - - // from opcmap.cpp - unsigned Get3DNowInsnMnemonic(unsigned char suffix); - unsigned char *GetInsnEntry(unsigned char *src, x86_TableEntry **te); - - // from x86.cpp - unsigned char ResolveOpSize(unsigned char sz); - unsigned char* DecodeA( unsigned char sz, unsigned char *src, x86_InsnOperand *op); - unsigned int DecodeGPR(unsigned char sz, unsigned char rm); - unsigned int ResolveGPR64 (unsigned int gpr_op); - unsigned int ResolveGPR32 (unsigned int gpr_op); - unsigned int ResolveReg(unsigned type, unsigned rm); - unsigned char* DecodeO( unsigned char sz, unsigned char *src, x86_InsnOperand *op); - unsigned char* DecodeImm(unsigned char sz, unsigned char *src, x86_InsnOperand *op); - unsigned char* DecodeModRM( - unsigned char *src, /* source */ - x86_InsnOperand *op, /* ptr to instruction operand struct */ - unsigned char sz, /* operand sz */ - unsigned char rm_type, /* the type of operand specified by rm, if mod = 11b */ - x86_InsnOperand *opreg, /* ptr to instruction operand struct for reg operand */ - unsigned char reg_sz, /* the size of operand specified by reg */ - unsigned char reg_type /* the type of operand specified by reg */ - ); - unsigned char* DisasmOperands( unsigned char *src, x86_Insn *ip, x86_TableEntry *insn); - void Clear(x86_Insn *ip); - unsigned char* DisasmInsn (unsigned char *src, x86_Insn *ip); - - // from syntax.cpp - unsigned long cast; - - void print_opr_cast(unsigned char sz); - void print_rel_cast(unsigned char sz); - void print_si(x86_Insn *ip, unsigned n); - void print_sib(x86_Insn *ip, unsigned n); - void print_rsib(x86_Insn *ip, unsigned n); - void print_rsi(x86_Insn *ip, unsigned n); - void opscript(x86_Insn *ip, unsigned n, char *script); - void Disasm(x86_Insn *ip); - -public: - String mnemonic; - String operands; - bool iscall; - int size; - - X86Disas(dword ip, byte *data); -}; - -#endif diff --git a/uppsrc/x86disas/x86disas.upp b/uppsrc/x86disas/x86disas.upp deleted file mode 100644 index e2fe8a652..000000000 --- a/uppsrc/x86disas/x86disas.upp +++ /dev/null @@ -1,19 +0,0 @@ -uses - Core, - plugin\ndisasm; - -file - x86disas.h, - mnemonics.i, - opcmap.cpp, - x86.cpp, - syntax.cpp, - x86disas.cpp, - main.cpp, - Info readonly separator, - Copying, - Copying-plain, - Authors; - -mainconfig - "" = "";