From b3e94a06172113991f28a1eff096255c65702a0c Mon Sep 17 00:00:00 2001 From: Zhijux Fan Date: Fri, 7 Dec 2018 12:34:44 +0800 Subject: BaseTools: change the Division Operator PEP 238 -- Changing the Division Operator x/y to return a reasonable approximation of the mathematical result of the division ("true division") x//y to return the floor ("floor division") Cc: Bob Feng Cc: Liming Gao Cc: Yonghong Zhu Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Zhiju.Fan Tested-by: Laszlo Ersek Tested-by: Ard Biesheuvel Reviewed-by: Liming Gao Reviewed-by: Bob Feng --- BaseTools/Source/Python/Common/Expression.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'BaseTools/Source/Python/Common/Expression.py') diff --git a/BaseTools/Source/Python/Common/Expression.py b/BaseTools/Source/Python/Common/Expression.py index 19ea13b7fb..0c7e25b445 100644 --- a/BaseTools/Source/Python/Common/Expression.py +++ b/BaseTools/Source/Python/Common/Expression.py @@ -439,6 +439,13 @@ class ValueExpression(BaseExpression): else: Val = Val3 continue + # + # PEP 238 -- Changing the Division Operator + # x/y to return a reasonable approximation of the mathematical result of the division ("true division") + # x//y to return the floor ("floor division") + # + if Op == '/': + Op = '//' try: Val = self.Eval(Op, Val, EvalFunc()) except WrnExpression as Warn: @@ -912,7 +919,7 @@ class ValueExpressionEx(ValueExpression): if TmpValue.bit_length() == 0: PcdValue = '{0x00}' else: - for I in range((TmpValue.bit_length() + 7) / 8): + for I in range((TmpValue.bit_length() + 7) // 8): TmpList.append('0x%02x' % ((TmpValue >> I * 8) & 0xff)) PcdValue = '{' + ', '.join(TmpList) + '}' except: -- cgit v1.2.3