Nuitka-winsvc 2.1.5__cp311-cp311-win_amd64.whl → 2.2.1__cp311-cp311-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of Nuitka-winsvc might be problematic. Click here for more details.
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/METADATA +1 -1
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/RECORD +234 -225
- nuitka/Errors.py +4 -0
- nuitka/HardImportRegistry.py +18 -1
- nuitka/MainControl.py +27 -30
- nuitka/OptionParsing.py +32 -30
- nuitka/Options.py +26 -13
- nuitka/OutputDirectories.py +7 -4
- nuitka/PostProcessing.py +9 -7
- nuitka/Progress.py +3 -3
- nuitka/PythonVersions.py +2 -2
- nuitka/TreeXML.py +1 -1
- nuitka/Version.py +1 -1
- nuitka/build/Backend.scons +2 -1
- nuitka/build/DataComposerInterface.py +1 -0
- nuitka/build/Onefile.scons +2 -1
- nuitka/build/SconsCaching.py +64 -46
- nuitka/build/SconsCompilerSettings.py +19 -6
- nuitka/build/SconsHacks.py +0 -1
- nuitka/build/SconsInterface.py +84 -5
- nuitka/build/SconsProgress.py +0 -1
- nuitka/build/SconsUtils.py +9 -5
- nuitka/build/include/nuitka/allocator.h +8 -3
- nuitka/build/include/nuitka/compiled_cell.h +8 -0
- nuitka/build/include/nuitka/constants.h +2 -0
- nuitka/build/include/nuitka/exceptions.h +554 -179
- nuitka/build/include/nuitka/helper/dictionaries.h +1 -1
- nuitka/build/include/nuitka/helper/import_hard.h +3 -0
- nuitka/build/include/nuitka/helper/ints.h +15 -2
- nuitka/build/include/nuitka/helper/lists.h +4 -1
- nuitka/build/include/nuitka/helper/raising.h +12 -0
- nuitka/build/include/nuitka/helper/tuples.h +5 -1
- nuitka/build/include/nuitka/helpers.h +5 -0
- nuitka/build/include/nuitka/importing.h +3 -4
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +38 -11
- nuitka/build/include/nuitka/printing.h +3 -0
- nuitka/build/include/nuitka/threading.h +2 -6
- nuitka/build/include/nuitka/type_aliases.h +27 -0
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +0 -3
- nuitka/build/inline_copy/tqdm/tqdm/version.py +1 -4
- nuitka/build/static_src/CompiledAsyncgenType.c +99 -114
- nuitka/build/static_src/CompiledCodeHelpers.c +24 -14
- nuitka/build/static_src/CompiledCoroutineType.c +96 -114
- nuitka/build/static_src/CompiledFrameType.c +14 -11
- nuitka/build/static_src/CompiledFunctionType.c +34 -7
- nuitka/build/static_src/CompiledGeneratorType.c +248 -142
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +60 -70
- nuitka/build/static_src/CompiledMethodType.c +8 -7
- nuitka/build/static_src/HelpersAttributes.c +2 -19
- nuitka/build/static_src/HelpersBuiltin.c +2 -1
- nuitka/build/static_src/HelpersComparisonEq.c +32 -18
- nuitka/build/static_src/HelpersComparisonGe.c +50 -36
- nuitka/build/static_src/HelpersComparisonGt.c +50 -36
- nuitka/build/static_src/HelpersComparisonLe.c +50 -36
- nuitka/build/static_src/HelpersComparisonLt.c +50 -36
- nuitka/build/static_src/HelpersComparisonNe.c +32 -18
- nuitka/build/static_src/HelpersDeepcopy.c +6 -8
- nuitka/build/static_src/HelpersDictionaries.c +8 -3
- nuitka/build/static_src/HelpersExceptions.c +36 -22
- nuitka/build/static_src/HelpersFiles.c +9 -0
- nuitka/build/static_src/HelpersFilesystemPaths.c +7 -7
- nuitka/build/static_src/HelpersImportHard.c +15 -0
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +40 -0
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +66 -66
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +80 -33
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +16 -13
- nuitka/build/static_src/HelpersOperationBinarySub.c +39 -39
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +54 -54
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceSub.c +50 -50
- nuitka/build/static_src/HelpersProfiling.c +3 -4
- nuitka/build/static_src/HelpersRaising.c +62 -1
- nuitka/build/static_src/HelpersStrings.c +203 -8
- nuitka/build/static_src/HelpersTypes.c +42 -0
- nuitka/build/static_src/MainProgram.c +1 -1
- nuitka/build/static_src/MetaPathBasedLoader.c +2 -1
- nuitka/build/static_src/OnefileBootstrap.c +3 -3
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +5 -3
- nuitka/code_generation/BuiltinCodes.py +1 -0
- nuitka/code_generation/CodeGeneration.py +11 -0
- nuitka/code_generation/CodeHelpers.py +5 -3
- nuitka/code_generation/CodeObjectCodes.py +10 -6
- nuitka/code_generation/ComparisonCodes.py +19 -3
- nuitka/code_generation/ConstantCodes.py +5 -0
- nuitka/code_generation/Contexts.py +22 -6
- nuitka/code_generation/Emission.py +1 -0
- nuitka/code_generation/ErrorCodes.py +8 -16
- nuitka/code_generation/EvalCodes.py +5 -3
- nuitka/code_generation/ExceptionCodes.py +8 -1
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +1 -0
- nuitka/code_generation/FrameCodes.py +5 -3
- nuitka/code_generation/FunctionCodes.py +0 -1
- nuitka/code_generation/GeneratorCodes.py +3 -3
- nuitka/code_generation/GlobalConstants.py +1 -2
- nuitka/code_generation/ImportCodes.py +2 -0
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/ListCodes.py +11 -17
- nuitka/code_generation/MatchCodes.py +0 -1
- nuitka/code_generation/ModuleCodes.py +2 -1
- nuitka/code_generation/Namify.py +0 -1
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +8 -6
- nuitka/code_generation/PackageResourceCodes.py +7 -5
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TypeAliasCodes.py +71 -0
- nuitka/code_generation/VariableCodes.py +7 -5
- nuitka/code_generation/VariableDeclarations.py +1 -0
- nuitka/code_generation/c_types/CTypeCLongs.py +0 -1
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +0 -1
- nuitka/code_generation/c_types/CTypeVoids.py +1 -0
- nuitka/code_generation/templates/CodeTemplatesConstants.py +15 -0
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesIterators.py +0 -1
- nuitka/code_generation/templates/CodeTemplatesLoader.py +0 -1
- nuitka/code_generation/templates/CodeTemplatesModules.py +4 -1
- nuitka/code_generation/templates/CodeTemplatesVariables.py +8 -8
- nuitka/code_generation/templates/TemplateDebugWrapper.py +0 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +4 -0
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +9 -7
- nuitka/containers/Namedtuples.py +0 -1
- nuitka/finalizations/Finalization.py +1 -0
- nuitka/finalizations/FinalizeMarkups.py +0 -1
- nuitka/freezer/DllDependenciesMacOS.py +60 -13
- nuitka/freezer/DllDependenciesPosix.py +0 -1
- nuitka/freezer/IncludedDataFiles.py +46 -15
- nuitka/freezer/IncludedEntryPoints.py +5 -3
- nuitka/freezer/Standalone.py +6 -1
- nuitka/importing/ImportCache.py +2 -2
- nuitka/importing/ImportResolving.py +80 -78
- nuitka/importing/Importing.py +34 -1
- nuitka/nodes/AttributeNodesGenerated.py +21 -6
- nuitka/nodes/BuiltinComplexNodes.py +1 -0
- nuitka/nodes/BuiltinFormatNodes.py +1 -0
- nuitka/nodes/BuiltinIteratorNodes.py +5 -3
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +21 -6
- nuitka/nodes/BuiltinRefNodes.py +8 -1
- nuitka/nodes/BuiltinVarsNodes.py +0 -1
- nuitka/nodes/ChildrenHavingMixins.py +906 -186
- nuitka/nodes/CodeObjectSpecs.py +1 -1
- nuitka/nodes/ConstantRefNodes.py +38 -0
- nuitka/nodes/CtypesNodes.py +0 -1
- nuitka/nodes/DictionaryNodes.py +0 -1
- nuitka/nodes/ExceptionNodes.py +10 -0
- nuitka/nodes/ExpressionBases.py +15 -9
- nuitka/nodes/ExpressionBasesGenerated.py +32 -15
- nuitka/nodes/FunctionNodes.py +50 -5
- nuitka/nodes/HardImportNodesGenerated.py +245 -60
- nuitka/nodes/ImportHardNodes.py +27 -13
- nuitka/nodes/ImportNodes.py +90 -70
- nuitka/nodes/InjectCNodes.py +0 -1
- nuitka/nodes/ModuleNodes.py +10 -5
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/OperatorNodesUnary.py +1 -0
- nuitka/nodes/OsSysNodes.py +0 -1
- nuitka/nodes/PackageMetadataNodes.py +0 -1
- nuitka/nodes/PackageResourceNodes.py +10 -6
- nuitka/nodes/StatementBasesGenerated.py +107 -60
- nuitka/nodes/StringConcatenationNodes.py +1 -0
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TypeNodes.py +21 -0
- nuitka/nodes/VariableRefNodes.py +1 -0
- nuitka/nodes/shapes/BuiltinTypeShapes.py +25 -15
- nuitka/optimizations/Optimization.py +7 -6
- nuitka/optimizations/OptimizeBuiltinCalls.py +11 -9
- nuitka/optimizations/Tags.py +0 -1
- nuitka/optimizations/TraceCollections.py +6 -55
- nuitka/optimizations/ValueTraces.py +49 -1
- nuitka/plugins/PluginBase.py +26 -4
- nuitka/plugins/Plugins.py +49 -12
- nuitka/plugins/standard/AntiBloatPlugin.py +12 -2
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +0 -1
- nuitka/plugins/standard/DataFilesPlugin.py +2 -6
- nuitka/plugins/standard/DillPlugin.py +3 -3
- nuitka/plugins/standard/DllFilesPlugin.py +29 -23
- nuitka/plugins/standard/GiPlugin.py +1 -0
- nuitka/plugins/standard/ImplicitImports.py +9 -7
- nuitka/plugins/standard/MatplotlibPlugin.py +1 -0
- nuitka/plugins/standard/OptionsNannyPlugin.py +3 -7
- nuitka/plugins/standard/PkgResourcesPlugin.py +0 -1
- nuitka/plugins/standard/PmwPlugin.py +10 -9
- nuitka/plugins/standard/PySidePyQtPlugin.py +0 -28
- nuitka/plugins/standard/TensorflowPlugin.py +1 -0
- nuitka/plugins/standard/TorchPlugin.py +1 -0
- nuitka/plugins/standard/TrioPlugin.py +1 -0
- nuitka/plugins/standard/standard.nuitka-package.config.yml +242 -54
- nuitka/reports/CompilationReportReader.py +0 -1
- nuitka/reports/Reports.py +49 -5
- nuitka/specs/BuiltinParameterSpecs.py +10 -2
- nuitka/specs/BuiltinStrOperationSpecs.py +1 -1
- nuitka/specs/BuiltinTypeOperationSpecs.py +0 -1
- nuitka/specs/HardImportSpecs.py +34 -1
- nuitka/specs/ParameterSpecs.py +11 -9
- nuitka/tools/environments/Virtualenv.py +0 -1
- nuitka/tools/specialize/CTypeDescriptions.py +15 -11
- nuitka/tools/specialize/SpecializeC.py +11 -9
- nuitka/tools/specialize/SpecializePython.py +57 -30
- nuitka/tools/testing/Common.py +24 -7
- nuitka/tools/testing/OutputComparison.py +4 -0
- nuitka/tools/testing/Pythons.py +0 -1
- nuitka/tools/testing/compare_with_cpython/__main__.py +0 -4
- nuitka/tools/watch/GitHub.py +4 -1
- nuitka/tools/watch/__main__.py +22 -1
- nuitka/tree/Building.py +3 -0
- nuitka/tree/InternalModule.py +0 -1
- nuitka/tree/ReformulationAssertStatements.py +1 -0
- nuitka/tree/ReformulationAssignmentStatements.py +26 -3
- nuitka/tree/ReformulationClasses3.py +23 -26
- nuitka/tree/ReformulationContractionExpressions.py +5 -3
- nuitka/tree/ReformulationDictionaryCreation.py +6 -5
- nuitka/tree/ReformulationExecStatements.py +8 -6
- nuitka/tree/ReformulationFunctionStatements.py +10 -6
- nuitka/tree/SourceHandling.py +8 -0
- nuitka/tree/TreeHelpers.py +6 -3
- nuitka/utils/AppDirs.py +6 -2
- nuitka/utils/CStrings.py +1 -1
- nuitka/utils/CommandLineOptions.py +0 -1
- nuitka/utils/Distributions.py +3 -3
- nuitka/utils/Download.py +5 -1
- nuitka/utils/Execution.py +6 -3
- nuitka/utils/FileOperations.py +62 -35
- nuitka/utils/Importing.py +4 -4
- nuitka/utils/InstanceCounters.py +1 -0
- nuitka/utils/MacOSApp.py +1 -0
- nuitka/utils/Shebang.py +1 -0
- nuitka/utils/Utils.py +39 -1
- nuitka/utils/WindowsFileUsage.py +4 -3
- {Nuitka_winsvc-2.1.5.data → Nuitka_winsvc-2.2.1.data}/scripts/nuitka-run.bat +0 -0
- {Nuitka_winsvc-2.1.5.data → Nuitka_winsvc-2.2.1.data}/scripts/nuitka.bat +0 -0
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/WHEEL +0 -0
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.1.5.dist-info → Nuitka_winsvc-2.2.1.dist-info}/top_level.txt +0 -0
|
@@ -6111,15 +6111,19 @@ static PyObject *COMPARE_GE_OBJECT_LONG_LONG(PyObject *operand1, PyObject *opera
|
|
|
6111
6111
|
|
|
6112
6112
|
if (operand1_long_object == operand2_long_object) {
|
|
6113
6113
|
r = true;
|
|
6114
|
-
} else if (
|
|
6115
|
-
|
|
6114
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6115
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6116
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) >
|
|
6117
|
+
0;
|
|
6116
6118
|
} else {
|
|
6117
|
-
Py_ssize_t i =
|
|
6119
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6118
6120
|
r = true;
|
|
6119
6121
|
while (--i >= 0) {
|
|
6120
|
-
if (operand1_long_object
|
|
6121
|
-
|
|
6122
|
-
|
|
6122
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6123
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6124
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] >
|
|
6125
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6126
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6123
6127
|
r = !r;
|
|
6124
6128
|
}
|
|
6125
6129
|
break;
|
|
@@ -6734,15 +6738,19 @@ static bool COMPARE_GE_CBOOL_LONG_LONG(PyObject *operand1, PyObject *operand2) {
|
|
|
6734
6738
|
|
|
6735
6739
|
if (operand1_long_object == operand2_long_object) {
|
|
6736
6740
|
r = true;
|
|
6737
|
-
} else if (
|
|
6738
|
-
|
|
6741
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6742
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6743
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) >
|
|
6744
|
+
0;
|
|
6739
6745
|
} else {
|
|
6740
|
-
Py_ssize_t i =
|
|
6746
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6741
6747
|
r = true;
|
|
6742
6748
|
while (--i >= 0) {
|
|
6743
|
-
if (operand1_long_object
|
|
6744
|
-
|
|
6745
|
-
|
|
6749
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6750
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6751
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] >
|
|
6752
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6753
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6746
6754
|
r = !r;
|
|
6747
6755
|
}
|
|
6748
6756
|
break;
|
|
@@ -11577,15 +11585,15 @@ static PyObject *COMPARE_GE_OBJECT_LONG_CLONG(PyObject *operand1, long operand2)
|
|
|
11577
11585
|
|
|
11578
11586
|
bool r;
|
|
11579
11587
|
|
|
11580
|
-
if (
|
|
11581
|
-
r =
|
|
11588
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11589
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size > 0;
|
|
11582
11590
|
} else {
|
|
11583
|
-
Py_ssize_t i =
|
|
11591
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11584
11592
|
r = true;
|
|
11585
11593
|
while (--i >= 0) {
|
|
11586
|
-
if (operand1_long_object
|
|
11587
|
-
r = operand1_long_object
|
|
11588
|
-
if (
|
|
11594
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11595
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > operand2_digits[i];
|
|
11596
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11589
11597
|
r = !r;
|
|
11590
11598
|
}
|
|
11591
11599
|
break;
|
|
@@ -11641,15 +11649,15 @@ static bool COMPARE_GE_CBOOL_LONG_CLONG(PyObject *operand1, long operand2) {
|
|
|
11641
11649
|
|
|
11642
11650
|
bool r;
|
|
11643
11651
|
|
|
11644
|
-
if (
|
|
11645
|
-
r =
|
|
11652
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11653
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size > 0;
|
|
11646
11654
|
} else {
|
|
11647
|
-
Py_ssize_t i =
|
|
11655
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11648
11656
|
r = true;
|
|
11649
11657
|
while (--i >= 0) {
|
|
11650
|
-
if (operand1_long_object
|
|
11651
|
-
r = operand1_long_object
|
|
11652
|
-
if (
|
|
11658
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11659
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > operand2_digits[i];
|
|
11660
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11653
11661
|
r = !r;
|
|
11654
11662
|
}
|
|
11655
11663
|
break;
|
|
@@ -11722,15 +11730,18 @@ static PyObject *COMPARE_GE_OBJECT_LONG_DIGIT(PyObject *operand1, long operand2)
|
|
|
11722
11730
|
|
|
11723
11731
|
bool r;
|
|
11724
11732
|
|
|
11725
|
-
if (
|
|
11726
|
-
|
|
11733
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11734
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11735
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11736
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) >
|
|
11737
|
+
0;
|
|
11727
11738
|
} else {
|
|
11728
|
-
Py_ssize_t i =
|
|
11739
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11729
11740
|
r = true;
|
|
11730
11741
|
while (--i >= 0) {
|
|
11731
|
-
if (operand1_long_object
|
|
11732
|
-
r = operand1_long_object
|
|
11733
|
-
if (
|
|
11742
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11743
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > (digit)Py_ABS(operand2);
|
|
11744
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11734
11745
|
r = !r;
|
|
11735
11746
|
}
|
|
11736
11747
|
break;
|
|
@@ -11759,15 +11770,18 @@ static bool COMPARE_GE_CBOOL_LONG_DIGIT(PyObject *operand1, long operand2) {
|
|
|
11759
11770
|
|
|
11760
11771
|
bool r;
|
|
11761
11772
|
|
|
11762
|
-
if (
|
|
11763
|
-
|
|
11773
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11774
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11775
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11776
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) >
|
|
11777
|
+
0;
|
|
11764
11778
|
} else {
|
|
11765
|
-
Py_ssize_t i =
|
|
11779
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11766
11780
|
r = true;
|
|
11767
11781
|
while (--i >= 0) {
|
|
11768
|
-
if (operand1_long_object
|
|
11769
|
-
r = operand1_long_object
|
|
11770
|
-
if (
|
|
11782
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11783
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > (digit)Py_ABS(operand2);
|
|
11784
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11771
11785
|
r = !r;
|
|
11772
11786
|
}
|
|
11773
11787
|
break;
|
|
@@ -6095,15 +6095,19 @@ static PyObject *COMPARE_GT_OBJECT_LONG_LONG(PyObject *operand1, PyObject *opera
|
|
|
6095
6095
|
|
|
6096
6096
|
if (operand1_long_object == operand2_long_object) {
|
|
6097
6097
|
r = false;
|
|
6098
|
-
} else if (
|
|
6099
|
-
|
|
6098
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6099
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6100
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) >
|
|
6101
|
+
0;
|
|
6100
6102
|
} else {
|
|
6101
|
-
Py_ssize_t i =
|
|
6103
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6102
6104
|
r = false;
|
|
6103
6105
|
while (--i >= 0) {
|
|
6104
|
-
if (operand1_long_object
|
|
6105
|
-
|
|
6106
|
-
|
|
6106
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6107
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6108
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] >
|
|
6109
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6110
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6107
6111
|
r = !r;
|
|
6108
6112
|
}
|
|
6109
6113
|
break;
|
|
@@ -6718,15 +6722,19 @@ static bool COMPARE_GT_CBOOL_LONG_LONG(PyObject *operand1, PyObject *operand2) {
|
|
|
6718
6722
|
|
|
6719
6723
|
if (operand1_long_object == operand2_long_object) {
|
|
6720
6724
|
r = false;
|
|
6721
|
-
} else if (
|
|
6722
|
-
|
|
6725
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6726
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6727
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) >
|
|
6728
|
+
0;
|
|
6723
6729
|
} else {
|
|
6724
|
-
Py_ssize_t i =
|
|
6730
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6725
6731
|
r = false;
|
|
6726
6732
|
while (--i >= 0) {
|
|
6727
|
-
if (operand1_long_object
|
|
6728
|
-
|
|
6729
|
-
|
|
6733
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6734
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6735
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] >
|
|
6736
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6737
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6730
6738
|
r = !r;
|
|
6731
6739
|
}
|
|
6732
6740
|
break;
|
|
@@ -11561,15 +11569,15 @@ static PyObject *COMPARE_GT_OBJECT_LONG_CLONG(PyObject *operand1, long operand2)
|
|
|
11561
11569
|
|
|
11562
11570
|
bool r;
|
|
11563
11571
|
|
|
11564
|
-
if (
|
|
11565
|
-
r =
|
|
11572
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11573
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size > 0;
|
|
11566
11574
|
} else {
|
|
11567
|
-
Py_ssize_t i =
|
|
11575
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11568
11576
|
r = false;
|
|
11569
11577
|
while (--i >= 0) {
|
|
11570
|
-
if (operand1_long_object
|
|
11571
|
-
r = operand1_long_object
|
|
11572
|
-
if (
|
|
11578
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11579
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > operand2_digits[i];
|
|
11580
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11573
11581
|
r = !r;
|
|
11574
11582
|
}
|
|
11575
11583
|
break;
|
|
@@ -11625,15 +11633,15 @@ static bool COMPARE_GT_CBOOL_LONG_CLONG(PyObject *operand1, long operand2) {
|
|
|
11625
11633
|
|
|
11626
11634
|
bool r;
|
|
11627
11635
|
|
|
11628
|
-
if (
|
|
11629
|
-
r =
|
|
11636
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11637
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size > 0;
|
|
11630
11638
|
} else {
|
|
11631
|
-
Py_ssize_t i =
|
|
11639
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11632
11640
|
r = false;
|
|
11633
11641
|
while (--i >= 0) {
|
|
11634
|
-
if (operand1_long_object
|
|
11635
|
-
r = operand1_long_object
|
|
11636
|
-
if (
|
|
11642
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11643
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > operand2_digits[i];
|
|
11644
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11637
11645
|
r = !r;
|
|
11638
11646
|
}
|
|
11639
11647
|
break;
|
|
@@ -11706,15 +11714,18 @@ static PyObject *COMPARE_GT_OBJECT_LONG_DIGIT(PyObject *operand1, long operand2)
|
|
|
11706
11714
|
|
|
11707
11715
|
bool r;
|
|
11708
11716
|
|
|
11709
|
-
if (
|
|
11710
|
-
|
|
11717
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11718
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11719
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11720
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) >
|
|
11721
|
+
0;
|
|
11711
11722
|
} else {
|
|
11712
|
-
Py_ssize_t i =
|
|
11723
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11713
11724
|
r = false;
|
|
11714
11725
|
while (--i >= 0) {
|
|
11715
|
-
if (operand1_long_object
|
|
11716
|
-
r = operand1_long_object
|
|
11717
|
-
if (
|
|
11726
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11727
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > (digit)Py_ABS(operand2);
|
|
11728
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11718
11729
|
r = !r;
|
|
11719
11730
|
}
|
|
11720
11731
|
break;
|
|
@@ -11743,15 +11754,18 @@ static bool COMPARE_GT_CBOOL_LONG_DIGIT(PyObject *operand1, long operand2) {
|
|
|
11743
11754
|
|
|
11744
11755
|
bool r;
|
|
11745
11756
|
|
|
11746
|
-
if (
|
|
11747
|
-
|
|
11757
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11758
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11759
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11760
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) >
|
|
11761
|
+
0;
|
|
11748
11762
|
} else {
|
|
11749
|
-
Py_ssize_t i =
|
|
11763
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11750
11764
|
r = false;
|
|
11751
11765
|
while (--i >= 0) {
|
|
11752
|
-
if (operand1_long_object
|
|
11753
|
-
r = operand1_long_object
|
|
11754
|
-
if (
|
|
11766
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11767
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] > (digit)Py_ABS(operand2);
|
|
11768
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11755
11769
|
r = !r;
|
|
11756
11770
|
}
|
|
11757
11771
|
break;
|
|
@@ -6173,15 +6173,19 @@ static PyObject *COMPARE_LE_OBJECT_LONG_LONG(PyObject *operand1, PyObject *opera
|
|
|
6173
6173
|
|
|
6174
6174
|
if (operand1_long_object == operand2_long_object) {
|
|
6175
6175
|
r = true;
|
|
6176
|
-
} else if (
|
|
6177
|
-
|
|
6176
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6177
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6178
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) <
|
|
6179
|
+
0;
|
|
6178
6180
|
} else {
|
|
6179
|
-
Py_ssize_t i =
|
|
6181
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6180
6182
|
r = true;
|
|
6181
6183
|
while (--i >= 0) {
|
|
6182
|
-
if (operand1_long_object
|
|
6183
|
-
|
|
6184
|
-
|
|
6184
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6185
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6186
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] <
|
|
6187
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6188
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6185
6189
|
r = !r;
|
|
6186
6190
|
}
|
|
6187
6191
|
break;
|
|
@@ -6802,15 +6806,19 @@ static bool COMPARE_LE_CBOOL_LONG_LONG(PyObject *operand1, PyObject *operand2) {
|
|
|
6802
6806
|
|
|
6803
6807
|
if (operand1_long_object == operand2_long_object) {
|
|
6804
6808
|
r = true;
|
|
6805
|
-
} else if (
|
|
6806
|
-
|
|
6809
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6810
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6811
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) <
|
|
6812
|
+
0;
|
|
6807
6813
|
} else {
|
|
6808
|
-
Py_ssize_t i =
|
|
6814
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6809
6815
|
r = true;
|
|
6810
6816
|
while (--i >= 0) {
|
|
6811
|
-
if (operand1_long_object
|
|
6812
|
-
|
|
6813
|
-
|
|
6817
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6818
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6819
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] <
|
|
6820
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6821
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6814
6822
|
r = !r;
|
|
6815
6823
|
}
|
|
6816
6824
|
break;
|
|
@@ -11663,15 +11671,15 @@ static PyObject *COMPARE_LE_OBJECT_LONG_CLONG(PyObject *operand1, long operand2)
|
|
|
11663
11671
|
|
|
11664
11672
|
bool r;
|
|
11665
11673
|
|
|
11666
|
-
if (
|
|
11667
|
-
r =
|
|
11674
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11675
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size < 0;
|
|
11668
11676
|
} else {
|
|
11669
|
-
Py_ssize_t i =
|
|
11677
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11670
11678
|
r = true;
|
|
11671
11679
|
while (--i >= 0) {
|
|
11672
|
-
if (operand1_long_object
|
|
11673
|
-
r = operand1_long_object
|
|
11674
|
-
if (
|
|
11680
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11681
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < operand2_digits[i];
|
|
11682
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11675
11683
|
r = !r;
|
|
11676
11684
|
}
|
|
11677
11685
|
break;
|
|
@@ -11727,15 +11735,15 @@ static bool COMPARE_LE_CBOOL_LONG_CLONG(PyObject *operand1, long operand2) {
|
|
|
11727
11735
|
|
|
11728
11736
|
bool r;
|
|
11729
11737
|
|
|
11730
|
-
if (
|
|
11731
|
-
r =
|
|
11738
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11739
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size < 0;
|
|
11732
11740
|
} else {
|
|
11733
|
-
Py_ssize_t i =
|
|
11741
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11734
11742
|
r = true;
|
|
11735
11743
|
while (--i >= 0) {
|
|
11736
|
-
if (operand1_long_object
|
|
11737
|
-
r = operand1_long_object
|
|
11738
|
-
if (
|
|
11744
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11745
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < operand2_digits[i];
|
|
11746
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11739
11747
|
r = !r;
|
|
11740
11748
|
}
|
|
11741
11749
|
break;
|
|
@@ -11808,15 +11816,18 @@ static PyObject *COMPARE_LE_OBJECT_LONG_DIGIT(PyObject *operand1, long operand2)
|
|
|
11808
11816
|
|
|
11809
11817
|
bool r;
|
|
11810
11818
|
|
|
11811
|
-
if (
|
|
11812
|
-
|
|
11819
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11820
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11821
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11822
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) <
|
|
11823
|
+
0;
|
|
11813
11824
|
} else {
|
|
11814
|
-
Py_ssize_t i =
|
|
11825
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11815
11826
|
r = true;
|
|
11816
11827
|
while (--i >= 0) {
|
|
11817
|
-
if (operand1_long_object
|
|
11818
|
-
r = operand1_long_object
|
|
11819
|
-
if (
|
|
11828
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11829
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < (digit)Py_ABS(operand2);
|
|
11830
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11820
11831
|
r = !r;
|
|
11821
11832
|
}
|
|
11822
11833
|
break;
|
|
@@ -11845,15 +11856,18 @@ static bool COMPARE_LE_CBOOL_LONG_DIGIT(PyObject *operand1, long operand2) {
|
|
|
11845
11856
|
|
|
11846
11857
|
bool r;
|
|
11847
11858
|
|
|
11848
|
-
if (
|
|
11849
|
-
|
|
11859
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11860
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11861
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11862
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) <
|
|
11863
|
+
0;
|
|
11850
11864
|
} else {
|
|
11851
|
-
Py_ssize_t i =
|
|
11865
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11852
11866
|
r = true;
|
|
11853
11867
|
while (--i >= 0) {
|
|
11854
|
-
if (operand1_long_object
|
|
11855
|
-
r = operand1_long_object
|
|
11856
|
-
if (
|
|
11868
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11869
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < (digit)Py_ABS(operand2);
|
|
11870
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11857
11871
|
r = !r;
|
|
11858
11872
|
}
|
|
11859
11873
|
break;
|
|
@@ -6157,15 +6157,19 @@ static PyObject *COMPARE_LT_OBJECT_LONG_LONG(PyObject *operand1, PyObject *opera
|
|
|
6157
6157
|
|
|
6158
6158
|
if (operand1_long_object == operand2_long_object) {
|
|
6159
6159
|
r = false;
|
|
6160
|
-
} else if (
|
|
6161
|
-
|
|
6160
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6161
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6162
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) <
|
|
6163
|
+
0;
|
|
6162
6164
|
} else {
|
|
6163
|
-
Py_ssize_t i =
|
|
6165
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6164
6166
|
r = false;
|
|
6165
6167
|
while (--i >= 0) {
|
|
6166
|
-
if (operand1_long_object
|
|
6167
|
-
|
|
6168
|
-
|
|
6168
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6169
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6170
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] <
|
|
6171
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6172
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6169
6173
|
r = !r;
|
|
6170
6174
|
}
|
|
6171
6175
|
break;
|
|
@@ -6786,15 +6790,19 @@ static bool COMPARE_LT_CBOOL_LONG_LONG(PyObject *operand1, PyObject *operand2) {
|
|
|
6786
6790
|
|
|
6787
6791
|
if (operand1_long_object == operand2_long_object) {
|
|
6788
6792
|
r = false;
|
|
6789
|
-
} else if (
|
|
6790
|
-
|
|
6793
|
+
} else if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
6794
|
+
Nuitka_LongGetSignedDigitSize(operand2_long_object)) {
|
|
6795
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - Nuitka_LongGetSignedDigitSize(operand2_long_object) <
|
|
6796
|
+
0;
|
|
6791
6797
|
} else {
|
|
6792
|
-
Py_ssize_t i =
|
|
6798
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
6793
6799
|
r = false;
|
|
6794
6800
|
while (--i >= 0) {
|
|
6795
|
-
if (operand1_long_object
|
|
6796
|
-
|
|
6797
|
-
|
|
6801
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] !=
|
|
6802
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i]) {
|
|
6803
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] <
|
|
6804
|
+
Nuitka_LongGetDigitPointer(operand2_long_object)[i];
|
|
6805
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
6798
6806
|
r = !r;
|
|
6799
6807
|
}
|
|
6800
6808
|
break;
|
|
@@ -11647,15 +11655,15 @@ static PyObject *COMPARE_LT_OBJECT_LONG_CLONG(PyObject *operand1, long operand2)
|
|
|
11647
11655
|
|
|
11648
11656
|
bool r;
|
|
11649
11657
|
|
|
11650
|
-
if (
|
|
11651
|
-
r =
|
|
11658
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11659
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size < 0;
|
|
11652
11660
|
} else {
|
|
11653
|
-
Py_ssize_t i =
|
|
11661
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11654
11662
|
r = false;
|
|
11655
11663
|
while (--i >= 0) {
|
|
11656
|
-
if (operand1_long_object
|
|
11657
|
-
r = operand1_long_object
|
|
11658
|
-
if (
|
|
11664
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11665
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < operand2_digits[i];
|
|
11666
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11659
11667
|
r = !r;
|
|
11660
11668
|
}
|
|
11661
11669
|
break;
|
|
@@ -11711,15 +11719,15 @@ static bool COMPARE_LT_CBOOL_LONG_CLONG(PyObject *operand1, long operand2) {
|
|
|
11711
11719
|
|
|
11712
11720
|
bool r;
|
|
11713
11721
|
|
|
11714
|
-
if (
|
|
11715
|
-
r =
|
|
11722
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) != operand2_size) {
|
|
11723
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) - operand2_size < 0;
|
|
11716
11724
|
} else {
|
|
11717
|
-
Py_ssize_t i =
|
|
11725
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11718
11726
|
r = false;
|
|
11719
11727
|
while (--i >= 0) {
|
|
11720
|
-
if (operand1_long_object
|
|
11721
|
-
r = operand1_long_object
|
|
11722
|
-
if (
|
|
11728
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != operand2_digits[i]) {
|
|
11729
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < operand2_digits[i];
|
|
11730
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11723
11731
|
r = !r;
|
|
11724
11732
|
}
|
|
11725
11733
|
break;
|
|
@@ -11792,15 +11800,18 @@ static PyObject *COMPARE_LT_OBJECT_LONG_DIGIT(PyObject *operand1, long operand2)
|
|
|
11792
11800
|
|
|
11793
11801
|
bool r;
|
|
11794
11802
|
|
|
11795
|
-
if (
|
|
11796
|
-
|
|
11803
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11804
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11805
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11806
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) <
|
|
11807
|
+
0;
|
|
11797
11808
|
} else {
|
|
11798
|
-
Py_ssize_t i =
|
|
11809
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11799
11810
|
r = false;
|
|
11800
11811
|
while (--i >= 0) {
|
|
11801
|
-
if (operand1_long_object
|
|
11802
|
-
r = operand1_long_object
|
|
11803
|
-
if (
|
|
11812
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11813
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < (digit)Py_ABS(operand2);
|
|
11814
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11804
11815
|
r = !r;
|
|
11805
11816
|
}
|
|
11806
11817
|
break;
|
|
@@ -11829,15 +11840,18 @@ static bool COMPARE_LT_CBOOL_LONG_DIGIT(PyObject *operand1, long operand2) {
|
|
|
11829
11840
|
|
|
11830
11841
|
bool r;
|
|
11831
11842
|
|
|
11832
|
-
if (
|
|
11833
|
-
|
|
11843
|
+
if (Nuitka_LongGetSignedDigitSize(operand1_long_object) !=
|
|
11844
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1))) {
|
|
11845
|
+
r = Nuitka_LongGetSignedDigitSize(operand1_long_object) -
|
|
11846
|
+
(Py_ssize_t)((operand2 == 0) ? 0 : ((operand2 < 0) ? -1 : 1)) <
|
|
11847
|
+
0;
|
|
11834
11848
|
} else {
|
|
11835
|
-
Py_ssize_t i =
|
|
11849
|
+
Py_ssize_t i = Nuitka_LongGetDigitSize(operand1_long_object);
|
|
11836
11850
|
r = false;
|
|
11837
11851
|
while (--i >= 0) {
|
|
11838
|
-
if (operand1_long_object
|
|
11839
|
-
r = operand1_long_object
|
|
11840
|
-
if (
|
|
11852
|
+
if (Nuitka_LongGetDigitPointer(operand1_long_object)[i] != (digit)Py_ABS(operand2)) {
|
|
11853
|
+
r = Nuitka_LongGetDigitPointer(operand1_long_object)[i] < (digit)Py_ABS(operand2);
|
|
11854
|
+
if (Nuitka_LongIsNegative(operand1_long_object)) {
|
|
11841
11855
|
r = !r;
|
|
11842
11856
|
}
|
|
11843
11857
|
break;
|