mirror of
				https://github.com/Z3Prover/z3
				synced 2025-10-31 11:42:28 +00:00 
			
		
		
		
	Merge branch 'Z3Prover:master' into param-tuning
This commit is contained in:
		
						commit
						61f48ab156
					
				
					 5 changed files with 19 additions and 3 deletions
				
			
		
							
								
								
									
										2
									
								
								.github/workflows/wasm-release.yml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/wasm-release.yml
									
										
									
									
										vendored
									
									
								
							|  | @ -24,7 +24,7 @@ jobs: | ||||||
|         uses: actions/checkout@v5 |         uses: actions/checkout@v5 | ||||||
| 
 | 
 | ||||||
|       - name: Setup node |       - name: Setup node | ||||||
|         uses: actions/setup-node@v5 |         uses: actions/setup-node@v6 | ||||||
|         with: |         with: | ||||||
|           node-version: "lts/*" |           node-version: "lts/*" | ||||||
|           registry-url: "https://registry.npmjs.org" |           registry-url: "https://registry.npmjs.org" | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								.github/workflows/wasm.yml
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/wasm.yml
									
										
									
									
										vendored
									
									
								
							|  | @ -24,7 +24,7 @@ jobs: | ||||||
|         uses: actions/checkout@v5 |         uses: actions/checkout@v5 | ||||||
| 
 | 
 | ||||||
|       - name: Setup node |       - name: Setup node | ||||||
|         uses: actions/setup-node@v5 |         uses: actions/setup-node@v6 | ||||||
|         with: |         with: | ||||||
|           node-version: "lts/*" |           node-version: "lts/*" | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -66,6 +66,7 @@ jobs: | ||||||
|   pool: |   pool: | ||||||
|     vmImage: "ubuntu-latest" |     vmImage: "ubuntu-latest" | ||||||
|   container: "quay.io/pypa/manylinux2014_x86_64:latest" |   container: "quay.io/pypa/manylinux2014_x86_64:latest" | ||||||
|  |   condition: eq(0,1)  | ||||||
|   steps: |   steps: | ||||||
|   - script: curl -L -o /tmp/arm-toolchain.tar.xz 'https://developer.arm.com/-/media/Files/downloads/gnu/11.2-2022.02/binrel/gcc-arm-11.2-2022.02-x86_64-aarch64-none-linux-gnu.tar.xz?rev=33c6e30e5ac64e6dba8f0431f2c35f1b&hash=9918A05BF47621B632C7A5C8D2BB438FB80A4480' |   - script: curl -L -o /tmp/arm-toolchain.tar.xz 'https://developer.arm.com/-/media/Files/downloads/gnu/11.2-2022.02/binrel/gcc-arm-11.2-2022.02-x86_64-aarch64-none-linux-gnu.tar.xz?rev=33c6e30e5ac64e6dba8f0431f2c35f1b&hash=9918A05BF47621B632C7A5C8D2BB438FB80A4480' | ||||||
|   - script: mkdir -p /tmp/arm-toolchain/ |   - script: mkdir -p /tmp/arm-toolchain/ | ||||||
|  |  | ||||||
|  | @ -1245,6 +1245,18 @@ def _coerce_expr_merge(s, a): | ||||||
|     else: |     else: | ||||||
|         return s |         return s | ||||||
| 
 | 
 | ||||||
|  | def _check_same_sort(a, b, ctx=None): | ||||||
|  |     if not isinstance(a, ExprRef): | ||||||
|  |         return False | ||||||
|  |     if not isinstance(b, ExprRef): | ||||||
|  |         return False | ||||||
|  |     if ctx is None: | ||||||
|  |         ctx = a.ctx | ||||||
|  | 
 | ||||||
|  |     a_sort = Z3_get_sort(ctx.ctx, a.ast) | ||||||
|  |     b_sort = Z3_get_sort(ctx.ctx, b.ast) | ||||||
|  |     return Z3_is_eq_sort(ctx.ctx, a_sort, b_sort) | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| def _coerce_exprs(a, b, ctx=None): | def _coerce_exprs(a, b, ctx=None): | ||||||
|     if not is_expr(a) and not is_expr(b): |     if not is_expr(a) and not is_expr(b): | ||||||
|  | @ -1259,6 +1271,9 @@ def _coerce_exprs(a, b, ctx=None): | ||||||
|     if isinstance(b, float) and isinstance(a, ArithRef): |     if isinstance(b, float) and isinstance(a, ArithRef): | ||||||
|         b = RealVal(b, a.ctx) |         b = RealVal(b, a.ctx) | ||||||
| 
 | 
 | ||||||
|  |     if _check_same_sort(a, b, ctx): | ||||||
|  |         return (a, b) | ||||||
|  | 
 | ||||||
|     s = None |     s = None | ||||||
|     s = _coerce_expr_merge(s, a) |     s = _coerce_expr_merge(s, a) | ||||||
|     s = _coerce_expr_merge(s, b) |     s = _coerce_expr_merge(s, b) | ||||||
|  |  | ||||||
|  | @ -55,7 +55,7 @@ class sls_tracker { | ||||||
|             touched = other.touched; |             touched = other.touched; | ||||||
|         } |         } | ||||||
|         ~value_score() { if (m) m->del(value); } |         ~value_score() { if (m) m->del(value); } | ||||||
|         value_score& operator=(value_score&&) = default; |         value_score& operator=(value_score&&) noexcept = default; | ||||||
|         value_score &operator=(const value_score &other) { |         value_score &operator=(const value_score &other) { | ||||||
|             if (this != &other) { |             if (this != &other) { | ||||||
|                 if (m) |                 if (m) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue