Nuitka-winsvc 2.1.6__cp311-cp311-win_amd64.whl → 2.2.2__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.6.dist-info → Nuitka_winsvc-2.2.2.dist-info}/METADATA +1 -1
- {Nuitka_winsvc-2.1.6.dist-info → Nuitka_winsvc-2.2.2.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 +8 -4
- nuitka/build/include/nuitka/allocator.h +8 -3
- nuitka/build/include/nuitka/compiled_cell.h +8 -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 +4 -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 +23 -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 +42 -28
- 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 +0 -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 +14 -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 +9 -4
- 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/DllDependenciesWin32.py +2 -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/ConditionalNodes.py +2 -6
- 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 +92 -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 +8 -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 +249 -34
- 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 +61 -34
- 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.6.data → Nuitka_winsvc-2.2.2.data}/scripts/nuitka-run.bat +0 -0
- {Nuitka_winsvc-2.1.6.data → Nuitka_winsvc-2.2.2.data}/scripts/nuitka.bat +0 -0
- {Nuitka_winsvc-2.1.6.dist-info → Nuitka_winsvc-2.2.2.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.1.6.dist-info → Nuitka_winsvc-2.2.2.dist-info}/WHEEL +0 -0
- {Nuitka_winsvc-2.1.6.dist-info → Nuitka_winsvc-2.2.2.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.1.6.dist-info → Nuitka_winsvc-2.2.2.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;
|