mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	Try harder to stay within the 79-column limit. There's still two places that go (way) over, but those are harder to fix without suffering in readability.
This commit is contained in:
		
							parent
							
								
									efa7d51ee6
								
							
						
					
					
						commit
						e2176020f9
					
				
					 1 changed files with 55 additions and 44 deletions
				
			
		|  | @ -28,8 +28,9 @@ | ||||||
| typedef unsigned long long uint64; | typedef unsigned long long uint64; | ||||||
| 
 | 
 | ||||||
| #if defined(__ppc__) /* <- Don't know if this is the correct symbol; this | #if defined(__ppc__) /* <- Don't know if this is the correct symbol; this | ||||||
| 			   section should work for GCC on any PowerPC platform, | 			   section should work for GCC on any PowerPC | ||||||
| 			   irrespective of OS.  POWER?  Who knows :-) */ | 			   platform, irrespective of OS. | ||||||
|  | 			   POWER?  Who knows :-) */ | ||||||
| 
 | 
 | ||||||
| #define READ_TIMESTAMP(var) ppc_getcounter(&var) | #define READ_TIMESTAMP(var) ppc_getcounter(&var) | ||||||
| 
 | 
 | ||||||
|  | @ -93,7 +94,8 @@ static PyObject * call_function(PyObject ***, int); | ||||||
| static PyObject * fast_function(PyObject *, PyObject ***, int, int, int); | static PyObject * fast_function(PyObject *, PyObject ***, int, int, int); | ||||||
| static PyObject * do_call(PyObject *, PyObject ***, int, int); | static PyObject * do_call(PyObject *, PyObject ***, int, int); | ||||||
| static PyObject * ext_do_call(PyObject *, PyObject ***, int, int, int); | static PyObject * ext_do_call(PyObject *, PyObject ***, int, int, int); | ||||||
| static PyObject * update_keyword_args(PyObject *, int, PyObject ***,PyObject *); | static PyObject * update_keyword_args(PyObject *, int, PyObject ***, | ||||||
|  | 				      PyObject *); | ||||||
| static PyObject * update_star_args(int, int, PyObject *, PyObject ***); | static PyObject * update_star_args(int, int, PyObject *, PyObject ***); | ||||||
| static PyObject * load_args(PyObject ***, int); | static PyObject * load_args(PyObject ***, int); | ||||||
| #define CALL_FLAG_VAR 1 | #define CALL_FLAG_VAR 1 | ||||||
|  | @ -504,7 +506,8 @@ PyEval_EvalCode(PyCodeObject *co, PyObject *globals, PyObject *locals) | ||||||
| PyObject * | PyObject * | ||||||
| PyEval_EvalFrame(PyFrameObject *f) { | PyEval_EvalFrame(PyFrameObject *f) { | ||||||
| 	/* This is for backward compatibility with extension modules that
 | 	/* This is for backward compatibility with extension modules that
 | ||||||
|            used this API; core interpreter code should call PyEval_EvalFrameEx() */ |            used this API; core interpreter code should call | ||||||
|  |            PyEval_EvalFrameEx() */ | ||||||
| 	return PyEval_EvalFrameEx(f, 0); | 	return PyEval_EvalFrameEx(f, 0); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @ -514,7 +517,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| #ifdef DXPAIRS | #ifdef DXPAIRS | ||||||
| 	int lastopcode = 0; | 	int lastopcode = 0; | ||||||
| #endif | #endif | ||||||
| 	register PyObject **stack_pointer;   /* Next free slot in value stack */ | 	register PyObject **stack_pointer;  /* Next free slot in value stack */ | ||||||
| 	register unsigned char *next_instr; | 	register unsigned char *next_instr; | ||||||
| 	register int opcode;	/* Current opcode */ | 	register int opcode;	/* Current opcode */ | ||||||
| 	register int oparg;	/* Current opcode argument, if any */ | 	register int oparg;	/* Current opcode argument, if any */ | ||||||
|  | @ -607,10 +610,10 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| #define JUMPBY(x)	(next_instr += (x)) | #define JUMPBY(x)	(next_instr += (x)) | ||||||
| 
 | 
 | ||||||
| /* OpCode prediction macros
 | /* OpCode prediction macros
 | ||||||
| 	Some opcodes tend to come in pairs thus making it possible to predict | 	Some opcodes tend to come in pairs thus making it possible to | ||||||
| 	the second code when the first is run.  For example, COMPARE_OP is often | 	predict the second code when the first is run.  For example, | ||||||
| 	followed by JUMP_IF_FALSE or JUMP_IF_TRUE.  And, those opcodes are often | 	COMPARE_OP is often followed by JUMP_IF_FALSE or JUMP_IF_TRUE.  And, | ||||||
| 	followed by a POP_TOP. | 	those opcodes are often followed by a POP_TOP. | ||||||
| 
 | 
 | ||||||
| 	Verifying the prediction costs a single high-speed test of register | 	Verifying the prediction costs a single high-speed test of register | ||||||
| 	variable against a constant.  If the pairing was good, then the | 	variable against a constant.  If the pairing was good, then the | ||||||
|  | @ -657,11 +660,13 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| #define PUSH(v)		{ (void)(BASIC_PUSH(v), \ | #define PUSH(v)		{ (void)(BASIC_PUSH(v), \ | ||||||
|                                lltrace && prtrace(TOP(), "push")); \ |                                lltrace && prtrace(TOP(), "push")); \ | ||||||
|                                assert(STACK_LEVEL() <= co->co_stacksize); } |                                assert(STACK_LEVEL() <= co->co_stacksize); } | ||||||
| #define POP()		((void)(lltrace && prtrace(TOP(), "pop")), BASIC_POP()) | #define POP()		((void)(lltrace && prtrace(TOP(), "pop")), \ | ||||||
|  | 			 BASIC_POP()) | ||||||
| #define STACKADJ(n)	{ (void)(BASIC_STACKADJ(n), \ | #define STACKADJ(n)	{ (void)(BASIC_STACKADJ(n), \ | ||||||
|                                lltrace && prtrace(TOP(), "stackadj")); \ |                                lltrace && prtrace(TOP(), "stackadj")); \ | ||||||
|                                assert(STACK_LEVEL() <= co->co_stacksize); } |                                assert(STACK_LEVEL() <= co->co_stacksize); } | ||||||
| #define EXT_POP(STACK_POINTER) (lltrace && prtrace((STACK_POINTER)[-1], "ext_pop"), *--(STACK_POINTER)) | #define EXT_POP(STACK_POINTER) (lltrace && prtrace((STACK_POINTER)[-1], \ | ||||||
|  | 				"ext_pop"), *--(STACK_POINTER)) | ||||||
| #else | #else | ||||||
| #define PUSH(v)		BASIC_PUSH(v) | #define PUSH(v)		BASIC_PUSH(v) | ||||||
| #define POP()		BASIC_POP() | #define POP()		BASIC_POP() | ||||||
|  | @ -1696,7 +1701,8 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 				    why == WHY_CONTINUE) | 				    why == WHY_CONTINUE) | ||||||
| 					retval = POP(); | 					retval = POP(); | ||||||
| 			} | 			} | ||||||
| 			else if (PyExceptionClass_Check(v) || PyString_Check(v)) { | 			else if (PyExceptionClass_Check(v) || | ||||||
|  | 			         PyString_Check(v)) { | ||||||
| 				w = POP(); | 				w = POP(); | ||||||
| 				u = POP(); | 				u = POP(); | ||||||
| 				PyErr_Restore(v, w, u); | 				PyErr_Restore(v, w, u); | ||||||
|  | @ -1745,7 +1751,8 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 			if ((x = f->f_locals) != NULL) { | 			if ((x = f->f_locals) != NULL) { | ||||||
| 				if ((err = PyObject_DelItem(x, w)) != 0) | 				if ((err = PyObject_DelItem(x, w)) != 0) | ||||||
| 					format_exc_check_arg(PyExc_NameError, | 					format_exc_check_arg(PyExc_NameError, | ||||||
| 								NAME_ERROR_MSG ,w); | 							     NAME_ERROR_MSG, | ||||||
|  | 							     w); | ||||||
| 				break; | 				break; | ||||||
| 			} | 			} | ||||||
| 			PyErr_Format(PyExc_SystemError, | 			PyErr_Format(PyExc_SystemError, | ||||||
|  | @ -1756,8 +1763,10 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 		PREDICTED_WITH_ARG(UNPACK_SEQUENCE); | 		PREDICTED_WITH_ARG(UNPACK_SEQUENCE); | ||||||
| 		case UNPACK_SEQUENCE: | 		case UNPACK_SEQUENCE: | ||||||
| 			v = POP(); | 			v = POP(); | ||||||
| 			if (PyTuple_CheckExact(v) && PyTuple_GET_SIZE(v) == oparg) { | 			if (PyTuple_CheckExact(v) && | ||||||
| 				PyObject **items = ((PyTupleObject *)v)->ob_item; | 			    PyTuple_GET_SIZE(v) == oparg) { | ||||||
|  | 				PyObject **items = \ | ||||||
|  | 					((PyTupleObject *)v)->ob_item; | ||||||
| 				while (oparg--) { | 				while (oparg--) { | ||||||
| 					w = items[oparg]; | 					w = items[oparg]; | ||||||
| 					Py_INCREF(w); | 					Py_INCREF(w); | ||||||
|  | @ -1765,15 +1774,17 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 				} | 				} | ||||||
| 				Py_DECREF(v); | 				Py_DECREF(v); | ||||||
| 				continue; | 				continue; | ||||||
| 			} else if (PyList_CheckExact(v) && PyList_GET_SIZE(v) == oparg) { | 			} else if (PyList_CheckExact(v) && | ||||||
| 				PyObject **items = ((PyListObject *)v)->ob_item; | 				   PyList_GET_SIZE(v) == oparg) { | ||||||
|  | 				PyObject **items = \ | ||||||
|  | 					((PyListObject *)v)->ob_item; | ||||||
| 				while (oparg--) { | 				while (oparg--) { | ||||||
| 					w = items[oparg]; | 					w = items[oparg]; | ||||||
| 					Py_INCREF(w); | 					Py_INCREF(w); | ||||||
| 					PUSH(w); | 					PUSH(w); | ||||||
| 				} | 				} | ||||||
| 			} else if (unpack_iterable(v, oparg, | 			} else if (unpack_iterable(v, oparg, | ||||||
| 						 stack_pointer + oparg)) { | 						   stack_pointer + oparg)) { | ||||||
| 				stack_pointer += oparg; | 				stack_pointer += oparg; | ||||||
| 			} else { | 			} else { | ||||||
| 				/* unpack_iterable() raised an exception */ | 				/* unpack_iterable() raised an exception */ | ||||||
|  | @ -1831,7 +1842,8 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 			else { | 			else { | ||||||
| 				x = PyObject_GetItem(v, w); | 				x = PyObject_GetItem(v, w); | ||||||
| 				if (x == NULL && PyErr_Occurred()) { | 				if (x == NULL && PyErr_Occurred()) { | ||||||
| 					if (!PyErr_ExceptionMatches(PyExc_KeyError)) | 					if (!PyErr_ExceptionMatches( | ||||||
|  | 							PyExc_KeyError)) | ||||||
| 						break; | 						break; | ||||||
| 					PyErr_Clear(); | 					PyErr_Clear(); | ||||||
| 				} | 				} | ||||||
|  | @ -1843,7 +1855,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 					if (x == NULL) { | 					if (x == NULL) { | ||||||
| 						format_exc_check_arg( | 						format_exc_check_arg( | ||||||
| 							    PyExc_NameError, | 							    PyExc_NameError, | ||||||
| 							    NAME_ERROR_MSG ,w); | 							    NAME_ERROR_MSG, w); | ||||||
| 						break; | 						break; | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
|  | @ -1944,13 +1956,10 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 				       UNBOUNDLOCAL_ERROR_MSG, | 				       UNBOUNDLOCAL_ERROR_MSG, | ||||||
| 				       v); | 				       v); | ||||||
| 			} else { | 			} else { | ||||||
| 			       v = PyTuple_GET_ITEM( | 				v = PyTuple_GET_ITEM(co->co_freevars, oparg - | ||||||
| 					      co->co_freevars, | 					PyTuple_GET_SIZE(co->co_cellvars)); | ||||||
| 					      oparg - PyTuple_GET_SIZE(co->co_cellvars)); | 				format_exc_check_arg(PyExc_NameError, | ||||||
| 			       format_exc_check_arg( | 						     UNBOUNDFREE_ERROR_MSG, v); | ||||||
| 				       PyExc_NameError, |  | ||||||
| 				       UNBOUNDFREE_ERROR_MSG, |  | ||||||
| 				       v); |  | ||||||
| 			} | 			} | ||||||
| 			break; | 			break; | ||||||
| 
 | 
 | ||||||
|  | @ -2177,7 +2186,8 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 				continue; | 				continue; | ||||||
| 			} | 			} | ||||||
| 			if (PyErr_Occurred()) { | 			if (PyErr_Occurred()) { | ||||||
| 				if (!PyErr_ExceptionMatches(PyExc_StopIteration)) | 				if (!PyErr_ExceptionMatches( | ||||||
|  | 						PyExc_StopIteration)) | ||||||
| 					break; | 					break; | ||||||
| 				PyErr_Clear(); | 				PyErr_Clear(); | ||||||
| 			} | 			} | ||||||
|  | @ -2203,9 +2213,10 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) | ||||||
| 		case SETUP_LOOP: | 		case SETUP_LOOP: | ||||||
| 		case SETUP_EXCEPT: | 		case SETUP_EXCEPT: | ||||||
| 		case SETUP_FINALLY: | 		case SETUP_FINALLY: | ||||||
| 			/* NOTE: If you add any new block-setup opcodes that are
 | 			/* NOTE: If you add any new block-setup opcodes that
 | ||||||
| 		           not try/except/finally handlers, you may need to | 		           are not try/except/finally handlers, you may need | ||||||
| 			   update the PyGen_NeedsFinalizing() function. */ | 		           to update the PyGen_NeedsFinalizing() function. | ||||||
|  | 		           */ | ||||||
| 
 | 
 | ||||||
| 			PyFrame_BlockSetup(f, opcode, INSTR_OFFSET() + oparg, | 			PyFrame_BlockSetup(f, opcode, INSTR_OFFSET() + oparg, | ||||||
| 					   STACK_LEVEL()); | 					   STACK_LEVEL()); | ||||||
|  | @ -4001,10 +4012,9 @@ cmp_outcome(int op, register PyObject *v, register PyObject *w) | ||||||
| 				if (PyString_Check(exc)) { | 				if (PyString_Check(exc)) { | ||||||
| 					int ret_val; | 					int ret_val; | ||||||
| 					ret_val = PyErr_WarnEx( | 					ret_val = PyErr_WarnEx( | ||||||
| 							PyExc_DeprecationWarning, | 						PyExc_DeprecationWarning, | ||||||
| 							"catching of string " | 						"catching of string " | ||||||
| 							"exceptions is " | 						"exceptions is deprecated", 1); | ||||||
| 							"deprecated", 1); |  | ||||||
| 					if (ret_val == -1) | 					if (ret_val == -1) | ||||||
| 						return NULL; | 						return NULL; | ||||||
| 				} | 				} | ||||||
|  | @ -4016,8 +4026,7 @@ cmp_outcome(int op, register PyObject *v, register PyObject *w) | ||||||
| 				ret_val = PyErr_WarnEx( | 				ret_val = PyErr_WarnEx( | ||||||
| 						PyExc_DeprecationWarning, | 						PyExc_DeprecationWarning, | ||||||
| 						"catching of string " | 						"catching of string " | ||||||
| 						"exceptions is deprecated", | 						"exceptions is deprecated", 1); | ||||||
| 						1); |  | ||||||
| 				if (ret_val == -1) | 				if (ret_val == -1) | ||||||
| 					return NULL; | 					return NULL; | ||||||
| 			} | 			} | ||||||
|  | @ -4295,8 +4304,9 @@ string_concatenate(PyObject *v, PyObject *w, | ||||||
| 	if (v->ob_refcnt == 2) { | 	if (v->ob_refcnt == 2) { | ||||||
| 		/* In the common case, there are 2 references to the value
 | 		/* In the common case, there are 2 references to the value
 | ||||||
| 		 * stored in 'variable' when the += is performed: one on the | 		 * stored in 'variable' when the += is performed: one on the | ||||||
| 		 * value stack (in 'v') and one still stored in the 'variable'. | 		 * value stack (in 'v') and one still stored in the | ||||||
| 		 * We try to delete the variable now to reduce the refcnt to 1. | 		 * 'variable'.  We try to delete the variable now to reduce | ||||||
|  | 		 * the refcnt to 1. | ||||||
| 		 */ | 		 */ | ||||||
| 		switch (*next_instr) { | 		switch (*next_instr) { | ||||||
| 		case STORE_FAST: | 		case STORE_FAST: | ||||||
|  | @ -4309,7 +4319,8 @@ string_concatenate(PyObject *v, PyObject *w, | ||||||
| 		} | 		} | ||||||
| 		case STORE_DEREF: | 		case STORE_DEREF: | ||||||
| 		{ | 		{ | ||||||
| 			PyObject **freevars = f->f_localsplus + f->f_code->co_nlocals; | 			PyObject **freevars = (f->f_localsplus + | ||||||
|  | 					       f->f_code->co_nlocals); | ||||||
| 			PyObject *c = freevars[PEEKARG()]; | 			PyObject *c = freevars[PEEKARG()]; | ||||||
| 			if (PyCell_GET(c) == v) | 			if (PyCell_GET(c) == v) | ||||||
| 				PyCell_Set(c, NULL); | 				PyCell_Set(c, NULL); | ||||||
|  | @ -4337,10 +4348,10 @@ string_concatenate(PyObject *v, PyObject *w, | ||||||
| 		 */ | 		 */ | ||||||
| 		if (_PyString_Resize(&v, new_len) != 0) { | 		if (_PyString_Resize(&v, new_len) != 0) { | ||||||
| 			/* XXX if _PyString_Resize() fails, 'v' has been
 | 			/* XXX if _PyString_Resize() fails, 'v' has been
 | ||||||
| 			 * deallocated so it cannot be put back into 'variable'. | 			 * deallocated so it cannot be put back into | ||||||
| 			 * The MemoryError is raised when there is no value in | 			 * 'variable'.  The MemoryError is raised when there | ||||||
| 			 * 'variable', which might (very remotely) be a cause | 			 * is no value in 'variable', which might (very | ||||||
| 			 * of incompatibilities. | 			 * remotely) be a cause of incompatibilities. | ||||||
| 			 */ | 			 */ | ||||||
| 			return NULL; | 			return NULL; | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Thomas Wouters
						Thomas Wouters