From b7c9e19e3f4d9ca597a0e56109cd0983fcf9f97c Mon Sep 17 00:00:00 2001 From: Henny Sipma Date: Mon, 2 Feb 2026 21:32:12 -0800 Subject: [PATCH 1/4] CMD: fix CI tests --- chc/app/CHVersion.py | 2 +- chc/cmdline/AnalysisManager.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/chc/app/CHVersion.py b/chc/app/CHVersion.py index 7499ea5..f09e65b 100644 --- a/chc/app/CHVersion.py +++ b/chc/app/CHVersion.py @@ -1 +1 @@ -chcversion: str = "0.2.0-2025-12-06" +chcversion: str = "0.2.0-2026-02-02" diff --git a/chc/cmdline/AnalysisManager.py b/chc/cmdline/AnalysisManager.py index c681259..4a09e70 100644 --- a/chc/cmdline/AnalysisManager.py +++ b/chc/cmdline/AnalysisManager.py @@ -6,7 +6,7 @@ # # Copyright (c) 2017-2020 Kestrel Technology LLC # Copyright (c) 2020-2022 Henny Sipma -# Copyright (c) 2023-2024 Aarno Labs LLC +# Copyright (c) 2023-2026 Aarno Labs LLC # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -350,7 +350,7 @@ def generate_and_check_file( stdout=open(os.devnull, "w"), stderr=subprocess.STDOUT, ) - print("\nResult: " + str(result)) + print_status("\nGenerate-and-check: result: " + str(result)) if result != 0: chklogger.logger.error( "Error in generating invariants for %s", cfilename) From c72e9d7b479660ddc1a01abd8018e793752c1de1 Mon Sep 17 00:00:00 2001 From: Henny Sipma Date: Fri, 20 Feb 2026 12:18:19 -0800 Subject: [PATCH 2/4] CMD: add iteration index to backend invocation --- chc/cmdline/AnalysisManager.py | 20 +++++++++++--------- chc/cmdline/c_file/cfileutil.py | 12 ++++++------ chc/cmdline/c_project/cprojectutil.py | 6 +++--- chc/cmdline/juliet/julietutil.py | 6 +++--- chc/cmdline/kendra/TestManager.py | 6 +++--- 5 files changed, 26 insertions(+), 24 deletions(-) diff --git a/chc/cmdline/AnalysisManager.py b/chc/cmdline/AnalysisManager.py index c681259..c134d8f 100644 --- a/chc/cmdline/AnalysisManager.py +++ b/chc/cmdline/AnalysisManager.py @@ -236,7 +236,7 @@ def create_file_primary_proofobligations( print_status(str(cmd)) result = subprocess.call( cmd, cwd=self.targetpath, stderr=subprocess.STDOUT) - print("\nResult: " + str(result)) + print_status("\nResult: " + str(result)) else: result = subprocess.call( cmd, @@ -292,7 +292,7 @@ def f(cfile: "CFile") -> None: self.capp.iter_files(f) def _generate_and_check_file_cmd_partial( - self, cfilepath: Optional[str], domains: str) -> List[str]: + self, cfilepath: Optional[str], domains: str, iteration: int) -> List[str]: cmd: List[str] = [ self.canalyzer, "-summaries", @@ -308,6 +308,7 @@ def _generate_and_check_file_cmd_partial( if not (self.contractpath is None): cmd.extend(["-contractpath", self.contractpath]) cmd.extend(["-projectname", self.capp.projectname]) + cmd.extend(["-iteration", str(iteration)]) if self.keep_system_includes: cmd.append("-keep_system_includes") if self.wordsize > 0: @@ -330,11 +331,12 @@ def generate_and_check_file( self, cfilename: str, cfilepath: Optional[str], - domains: str) -> None: + domains: str, + iteration: int) -> None: """Generate invariants and check proof obligations for a single file.""" try: - cmd = self._generate_and_check_file_cmd_partial(cfilepath, domains) + cmd = self._generate_and_check_file_cmd_partial(cfilepath, domains, iteration) cmd.append(cfilename) chklogger.logger.info( "Calling AI to generate invariants: %s", @@ -342,7 +344,7 @@ def generate_and_check_file( if self.verbose: result = subprocess.call( cmd, cwd=self.targetpath, stderr=subprocess.STDOUT) - print("\nResult: " + str(result)) + print_status("\nResult: " + str(result)) else: result = subprocess.call( cmd, @@ -350,7 +352,7 @@ def generate_and_check_file( stdout=open(os.devnull, "w"), stderr=subprocess.STDOUT, ) - print("\nResult: " + str(result)) + print_status("\nResult: " + str(result)) if result != 0: chklogger.logger.error( "Error in generating invariants for %s", cfilename) @@ -360,14 +362,14 @@ def generate_and_check_file( print(args) exit(1) - def generate_and_check_app(self, domains: str, processes: int = 1) -> None: + def generate_and_check_app(self, domains: str, iteration: int, processes: int = 1) -> None: """Generate invariants and check proof obligations for application.""" if processes > 1: def f(cfile: "CFile") -> None: cmd = self._generate_and_check_file_cmd_partial( - cfile.cfilepath, domains) + cfile.cfilepath, domains, iteration) cmd.append(cfile.cfilename) self._execute_cmd(cmd) @@ -376,7 +378,7 @@ def f(cfile: "CFile") -> None: def f(cfile: "CFile") -> None: self.generate_and_check_file( - cfile.cfilename, cfile.cfilepath, domains) + cfile.cfilename, cfile.cfilepath, domains, iteration) self.capp.iter_files(f) self.capp.iter_files(self.reset_tables) diff --git a/chc/cmdline/c_file/cfileutil.py b/chc/cmdline/c_file/cfileutil.py index 40d3815..0075824 100644 --- a/chc/cmdline/c_file/cfileutil.py +++ b/chc/cmdline/c_file/cfileutil.py @@ -569,13 +569,13 @@ def cfile_analyze_file(args: argparse.Namespace) -> NoReturn: am.reset_tables(cfile) capp.collect_post_assumes() - am.generate_and_check_file(cfilename, None, analysisdomains) + am.generate_and_check_file(cfilename, None, analysisdomains, 0) am.reset_tables(cfile) capp.collect_post_assumes() for k in range(5): capp.update_spos() - am.generate_and_check_file(cfilename, None, analysisdomains) + am.generate_and_check_file(cfilename, None, analysisdomains, k + 1) am.reset_tables(cfile) chklogger.logger.info("cfile analyze completed") @@ -803,13 +803,13 @@ def cfile_run_file(args: argparse.Namespace) -> NoReturn: am.reset_tables(cfile) capp.collect_post_assumes() - am.generate_and_check_file(cfilename, None, analysisdomains) + am.generate_and_check_file(cfilename, None, analysisdomains, 0) am.reset_tables(cfile) capp.collect_post_assumes() for k in range(5): capp.update_spos() - am.generate_and_check_file(cfilename, None, analysisdomains) + am.generate_and_check_file(cfilename, None, analysisdomains, k + 1) am.reset_tables(cfile) chklogger.logger.info("cfile analyze completed") @@ -1073,13 +1073,13 @@ def cfile_testlibc_summary(args: argparse.Namespace) -> NoReturn: am.reset_tables(cfile) capp.collect_post_assumes() - am.generate_and_check_file(cfilename, None, "llrvisp") + am.generate_and_check_file(cfilename, None, "llrvisp", 0) am.reset_tables(cfile) capp.collect_post_assumes() for k in range(5): capp.update_spos() - am.generate_and_check_file(cfilename, None, "llrvisp") + am.generate_and_check_file(cfilename, None, "llrvisp", k + 1) am.reset_tables(cfile) chklogger.logger.info("cfile analyze completed") diff --git a/chc/cmdline/c_project/cprojectutil.py b/chc/cmdline/c_project/cprojectutil.py index 865247c..96cf9eb 100644 --- a/chc/cmdline/c_project/cprojectutil.py +++ b/chc/cmdline/c_project/cprojectutil.py @@ -4,7 +4,7 @@ # ------------------------------------------------------------------------------ # The MIT License (MIT) # -# Copyright (c) 2024-2025 Aarno Labs, LLC +# Copyright (c) 2024-2026 Aarno Labs, LLC # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -577,7 +577,7 @@ def check_continuation() -> int: if exitcode == 0: for i in range(1): - am.generate_and_check_app(analysisdomains, processes=maxprocesses) + am.generate_and_check_app(analysisdomains, 0, processes=maxprocesses) capp.reinitialize_tables() capp.update_spos() @@ -586,7 +586,7 @@ def check_continuation() -> int: if exitcode == 0: for i in range(5): capp.update_spos() - am.generate_and_check_app(analysisdomains, processes=maxprocesses) + am.generate_and_check_app(analysisdomains, i + 1, processes=maxprocesses) capp.reinitialize_tables() exitcode = check_continuation() diff --git a/chc/cmdline/juliet/julietutil.py b/chc/cmdline/juliet/julietutil.py index df38c79..dadfcf5 100644 --- a/chc/cmdline/juliet/julietutil.py +++ b/chc/cmdline/juliet/julietutil.py @@ -4,7 +4,7 @@ # ------------------------------------------------------------------------------ # The MIT License (MIT) # -# Copyright (c) 2024 Aarno Labs, LLC +# Copyright (c) 2024-2026 Aarno Labs, LLC # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -381,13 +381,13 @@ def save_xrefs(f: "CFile") -> None: exit(1) for i in range(1): - am.generate_and_check_app("llrvisp", processes=jmaxproc) + am.generate_and_check_app("llrvisp", 0, processes=jmaxproc) capp.reinitialize_tables() capp.update_spos() for i in range(5): capp.update_spos() - am.generate_and_check_app("llrvisp", processes=jmaxproc) + am.generate_and_check_app("llrvisp", i + 1, processes=jmaxproc) capp.reinitialize_tables() def filefilter(filename: str) -> bool: diff --git a/chc/cmdline/kendra/TestManager.py b/chc/cmdline/kendra/TestManager.py index b898641..ca04bfc 100644 --- a/chc/cmdline/kendra/TestManager.py +++ b/chc/cmdline/kendra/TestManager.py @@ -6,7 +6,7 @@ # # Copyright (c) 2017-2020 Kestrel Technology LLC # Copyright (c) 2020-2022 Henny B. Sipma -# Copyright (c) 2023-2024 Aarno Labs LLC +# Copyright (c) 2023-2026 Aarno Labs LLC # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -591,7 +591,7 @@ def test_ppo_proofs(self, delaytest: bool = False) -> None: for d in creffile.domains: am = AnalysisManager( capp, verbose=self.verbose, disable_timing=True) - am.generate_and_check_file(cfilename, None, d) + am.generate_and_check_file(cfilename, None, d, 0) cfile.reinitialize_tables() ppos = cfile.get_ppos() if delaytest: @@ -672,7 +672,7 @@ def test_spo_proofs(self, delaytest: bool = False) -> None: for d in creffile.domains: am = AnalysisManager( capp, verbose=self.verbose, disable_timing=True) - am.generate_and_check_file(cfilename, None, d) + am.generate_and_check_file(cfilename, None, d, 0) cappfile.reinitialize_tables() spos = cappfile.get_spos() if delaytest: From 11067217800cafc89d832e95a62db107d845f4cd Mon Sep 17 00:00:00 2001 From: Henny Sipma Date: Mon, 23 Feb 2026 21:03:43 -0800 Subject: [PATCH 3/4] KENDRA: update regression tests --- tests/kendra/id167Q/id167Q.json | 952 ++++++++++---------- tests/kendra/id247Q/id247Q.json | 654 ++++++++------ tests/kendra/id271Q/id271Q.json | 1008 ++++++++++++--------- tests/kendra/id275Q/id275Q.json | 1108 +++++++++++++---------- tests/kendra/id279Q/id279Q.json | 1058 ++++++++++++---------- tests/kendra/id283Q/id283Q.json | 1182 ++++++++++++------------ tests/kendra/id287Q/id287Q.json | 888 ++++++++++--------- tests/kendra/id323Q/id323Q.json | 694 ++++++++------- tests/kendra/id327Q/id327Q.json | 1006 +++++++++++---------- tests/kendra/id331Q/id331Q.json | 744 +++++++++------- tests/kendra/id335Q/id335Q.json | 1366 ++++++++++++++-------------- tests/kendra/id367Q/id367Q.json | 1342 +++++++++++++++------------- tests/kendra/id371Q/id371Q.json | 1478 ++++++++++++++++--------------- 13 files changed, 7252 insertions(+), 6228 deletions(-) diff --git a/tests/kendra/id167Q/id167Q.json b/tests/kendra/id167Q/id167Q.json index a2a6b49..3867424 100644 --- a/tests/kendra/id167Q/id167Q.json +++ b/tests/kendra/id167Q/id167Q.json @@ -3,682 +3,746 @@ "id167.c": { "domains": [ "llps" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "not-null", "type": "callsite", "argnr": 1, - "line": 61, - "status": "safe", + "line": 61, + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "ptr-upper-bound-deref", "type": "callsite", "argnr": 1, - "line": 61, - "status": "violation", + "line": 61, + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id168.c": { "domains": [ "llps" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "not-null", "type": "callsite", "argnr": 1, - "line": 61, - "status": "safe", + "line": 61, + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "ptr-upper-bound-deref", "type": "callsite", "argnr": 1, - "line": 61, - "status": "violation", + "line": 61, + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id169.c": { "domains": [ "llps" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "not-null", "type": "callsite", "argnr": 1, - "line": 61, - "status": "safe", + "line": 61, + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "ptr-upper-bound-deref", "type": "callsite", "argnr": 1, - "line": 61, - "status": "violation", + "line": 61, + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id170.c": { "domains": [ "llps" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "not-null", "type": "callsite", "argnr": 1, - "line": 61, - "status": "safe", + "line": 61, + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", + "cfgctxt": "instr:0_stmt:3", "predicate": "ptr-upper-bound-deref", "type": "callsite", "argnr": 1, - "line": 61, - "status": "safe", + "line": 61, + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id247Q/id247Q.json b/tests/kendra/id247Q/id247Q.json index 9491a41..6f2fab6 100644 --- a/tests/kendra/id247Q/id247Q.json +++ b/tests/kendra/id247Q/id247Q.json @@ -5,411 +5,475 @@ "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe" - }, - { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", - "tgtstatus": "safe" - }, - { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, - { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-lower-bound", - "status": "safe", - "tgtstatus": "safe" - }, - { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "upper-bound", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id248.c": { "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "upper-bound", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id249.c": { "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "upper-bound", - "status": "violation", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id250.c": { "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 56, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 56, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 56, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 56, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id271Q/id271Q.json b/tests/kendra/id271Q/id271Q.json index 643c1d3..270beb9 100644 --- a/tests/kendra/id271Q/id271Q.json +++ b/tests/kendra/id271Q/id271Q.json @@ -3,617 +3,745 @@ "id271.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id272.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id273.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id274.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id275Q/id275Q.json b/tests/kendra/id275Q/id275Q.json index 2312a01..bc57acb 100644 --- a/tests/kendra/id275Q/id275Q.json +++ b/tests/kendra/id275Q/id275Q.json @@ -3,681 +3,809 @@ "id275.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id276.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id277.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id278.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id279Q/id279Q.json b/tests/kendra/id279Q/id279Q.json index 65ce1da..7ecd833 100644 --- a/tests/kendra/id279Q/id279Q.json +++ b/tests/kendra/id279Q/id279Q.json @@ -3,649 +3,777 @@ "id279.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "not-zero", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "not-zero", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id280.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "not-zero", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "not-zero", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id281.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "not-zero", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "not-zero", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id282.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:2_2op:2_2op:1_mem_lhs", - "line": 58, - "predicate": "not-zero", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:2_2op:2_2op:1_mem_lhs", + "line": 58, + "predicate": "not-zero", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id283Q/id283Q.json b/tests/kendra/id283Q/id283Q.json index 344825b..86fbf01 100644 --- a/tests/kendra/id283Q/id283Q.json +++ b/tests/kendra/id283Q/id283Q.json @@ -3,56 +3,56 @@ "id283.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "stack-address-escape", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "stack-address-escape", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } ], @@ -65,202 +65,218 @@ "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id284.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "stack-address-escape", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "stack-address-escape", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } ], @@ -273,202 +289,218 @@ "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id285.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "stack-address-escape", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "stack-address-escape", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } ], @@ -481,202 +513,218 @@ "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id286.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "stack-address-escape", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "stack-address-escape", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "return_stmt:1", - "expctxt": "", - "line": 52, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "return_stmt:1", + "expctxt": "", + "line": 52, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" } ], @@ -689,143 +737,159 @@ "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "2op:1_mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "lower-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:2", + "expctxt": "mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "mem_lhs", - "line": 61, - "predicate": "upper-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:2", + "expctxt": "2op:1_mem_lhs", + "line": 61, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:2", - "expctxt": "rhs", - "line": 61, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:2", + "expctxt": "rhs", + "line": 61, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id287Q/id287Q.json b/tests/kendra/id287Q/id287Q.json index 847328e..3177974 100644 --- a/tests/kendra/id287Q/id287Q.json +++ b/tests/kendra/id287Q/id287Q.json @@ -3,24 +3,24 @@ "id287.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" }, { @@ -32,152 +32,168 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id288.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { "cfgctxt": "instr:0_stmt:1", "expctxt": "", @@ -187,152 +203,168 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id289.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { "cfgctxt": "instr:0_stmt:1", "expctxt": "", @@ -342,152 +374,168 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id290.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "var_lhs", - "line": 55, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "var_lhs", + "line": 55, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { "cfgctxt": "instr:0_stmt:1", "expctxt": "", @@ -497,123 +545,139 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "var_lval_2op:1_mem_lhs", - "line": 58, - "predicate": "index-upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "var_lval_2op:1_mem_lhs", + "line": 58, + "predicate": "index-upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id323Q/id323Q.json b/tests/kendra/id323Q/id323Q.json index 18ada2e..b3ae012 100644 --- a/tests/kendra/id323Q/id323Q.json +++ b/tests/kendra/id323Q/id323Q.json @@ -3,7 +3,7 @@ "id323.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -16,117 +16,133 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id324.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -139,117 +155,133 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id325.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -262,117 +294,133 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id326.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -385,107 +433,123 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 58, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 58, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:1_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "mem_lhs", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "mem_lhs", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id327Q/id327Q.json b/tests/kendra/id327Q/id327Q.json index 05fe97d..2f3dab5 100644 --- a/tests/kendra/id327Q/id327Q.json +++ b/tests/kendra/id327Q/id327Q.json @@ -3,681 +3,745 @@ "id327.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id328.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id329.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id330.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 61, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 61, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 61, - "predicate": "ptr-upper-bound-deref", - "status": "safe", - "tgtstatus": "safe", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 61, + "predicate": "ptr-upper-bound-deref", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" } ] diff --git a/tests/kendra/id331Q/id331Q.json b/tests/kendra/id331Q/id331Q.json index f934987..fb42c4e 100644 --- a/tests/kendra/id331Q/id331Q.json +++ b/tests/kendra/id331Q/id331Q.json @@ -3,7 +3,7 @@ "id331.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -24,125 +24,141 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id332.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -163,125 +179,141 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id333.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -302,125 +334,141 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" - }, + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] } } - }, + }, "id334.c": { "domains": [ "llvis" - ], + ], "functions": { "main": { "ppos": [ @@ -441,115 +489,131 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:1", - "expctxt": "rhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:1", + "expctxt": "rhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "rhs", - "line": 60, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:2_stmt:1", + "expctxt": "rhs", + "line": 60, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", - "tgtstatus": "safe" - }, + "cfgctxt": "instr:2_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:2_stmt:1", - "expctxt": "mem_lhs", - "line": 60, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:2_stmt:1", + "expctxt": "mem_lhs", + "line": 60, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] diff --git a/tests/kendra/id335Q/id335Q.json b/tests/kendra/id335Q/id335Q.json index 8d0c1c5..180a148 100644 --- a/tests/kendra/id335Q/id335Q.json +++ b/tests/kendra/id335Q/id335Q.json @@ -3,937 +3,1001 @@ "id335.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "not-null", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "not-null", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" } ] - }, + }, "function2": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id336.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "not-null", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "not-null", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" } ] - }, + }, "function2": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id337.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "not-null", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "not-null", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" } ] - }, + }, "function2": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id338.c": { "domains": [ "llvis" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "arg:1", - "line": 58, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "arg:1", + "line": 58, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "not-null", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "not-null", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:3", - "line": 58, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", - "tgtstatus": "safe:delegated", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:3", + "line": 58, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", + "tgtstatus": "safe:delegated", "type": "callsite" } ] - }, + }, "function2": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 66, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 66, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:0_stmt:5", - "line": 66, - "predicate": "ptr-upper-bound-deref", - "status": "safe", - "tgtstatus": "safe", + }, + { + "argnr": 1, + "cfgctxt": "instr:0_stmt:5", + "line": 66, + "predicate": "ptr-upper-bound-deref", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" } ] diff --git a/tests/kendra/id367Q/id367Q.json b/tests/kendra/id367Q/id367Q.json index 02b39c4..2a0465e 100644 --- a/tests/kendra/id367Q/id367Q.json +++ b/tests/kendra/id367Q/id367Q.json @@ -3,116 +3,132 @@ "id367.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { @@ -124,230 +140,246 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id368.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { @@ -359,230 +391,246 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id369.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { @@ -594,230 +642,246 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "ptr-upper-bound-deref", - "status": "violation", - "tgtstatus": "violation", + }, + { + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "ptr-upper-bound-deref", + "status": "violation", + "tgtstatus": "violation", "type": "callsite" } ] } } - }, + }, "id370.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "rhs", - "line": 53, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "rhs", + "line": 53, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "2op:1_mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "2op:1_mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:1", - "expctxt": "mem_lhs", - "line": 53, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:1", + "expctxt": "mem_lhs", + "line": 53, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } ] - }, + }, "main": { "ppos": [ { @@ -829,111 +893,111 @@ "tgtstatus": "safe" }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "mem_lval_ftarget", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "mem_lval_ftarget", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:1_stmt:3", - "expctxt": "arg:1", - "line": 63, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:1_stmt:3", + "expctxt": "arg:1", + "line": 63, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "not-null", - "status": "safe", - "tgtstatus": "safe", + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" - }, - { - "argnr": 1, - "cfgctxt": "instr:1_stmt:3", - "line": 63, - "predicate": "ptr-upper-bound-deref", - "status": "safe", - "tgtstatus": "safe", + }, + { + "argnr": 1, + "cfgctxt": "instr:1_stmt:3", + "line": 63, + "predicate": "ptr-upper-bound-deref", + "status": "safe", + "tgtstatus": "safe", "type": "callsite" } ] diff --git a/tests/kendra/id371Q/id371Q.json b/tests/kendra/id371Q/id371Q.json index 9e1990b..f47e0fb 100644 --- a/tests/kendra/id371Q/id371Q.json +++ b/tests/kendra/id371Q/id371Q.json @@ -3,1017 +3,1081 @@ "id371.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "if-expr_stmt:1", - "expctxt": "2op:1", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "if-expr_stmt:1", + "expctxt": "2op:1", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "2op:1_arg:2", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "2op:1_arg:2", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id372.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "if-expr_stmt:1", - "expctxt": "2op:1", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "if-expr_stmt:1", + "expctxt": "2op:1", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "2op:1_arg:2", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "2op:1_arg:2", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id373.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "if-expr_stmt:1", - "expctxt": "2op:1", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "if-expr_stmt:1", + "expctxt": "2op:1", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "2op:1_arg:2", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "2op:1_arg:2", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "ptr-upper-bound-deref", - "status": "violation", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "ptr-upper-bound-deref", + "status": "violation", "tgtstatus": "violation" } ] } } - }, + }, "id374.c": { "domains": [ "llvisp" - ], + ], "functions": { "function1": { "ppos": [ { - "cfgctxt": "if-expr_stmt:1", - "expctxt": "2op:1", - "line": 52, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "if-expr_stmt:1", + "expctxt": "2op:1", + "line": 52, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "2op:1_arg:2", - "line": 54, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "2op:1_arg:2", + "line": 54, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-underflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-underflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:2", - "line": 54, - "predicate": "int-overflow", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:2", + "line": 54, + "predicate": "int-overflow", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "initialized", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "initialized", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "not-null", + "status": "safe", + "tgtstatus": "safe" + }, + { + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "valid-mem", + "status": "safe", + "tgtstatus": "safe" + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-lb", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-lb", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "rhs", - "line": 57, - "predicate": "signed-to-signed-cast-ub", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "rhs", + "line": 57, + "predicate": "signed-to-signed-cast-ub", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "2op:1_mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "2op:1_mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:3", - "expctxt": "mem_lhs", - "line": 57, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:3", + "expctxt": "mem_lhs", + "line": 57, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "expctxt": "arg:1", - "line": 54, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "expctxt": "arg:1", + "line": 54, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "not-null", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "not-null", + "status": "safe:delegated", "tgtstatus": "safe:delegated" - }, + }, { - "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", - "line": 54, - "predicate": "ptr-upper-bound-deref", - "status": "safe:delegated", + "cfgctxt": "instr:0_stmt:2_if-then_stmt:1", + "line": 54, + "predicate": "ptr-upper-bound-deref", + "status": "safe:delegated", "tgtstatus": "safe:delegated" } ] - }, + }, "main": { "ppos": [ { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "valid-mem", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "valid-mem", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "lower-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "lower-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "upper-bound", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "upper-bound", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "expctxt": "arg:1", - "line": 65, - "predicate": "in-scope", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "expctxt": "arg:1", + "line": 65, + "predicate": "in-scope", + "status": "safe", "tgtstatus": "safe" } - ], + ], "spos": [ { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "not-null", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "not-null", + "status": "safe", "tgtstatus": "safe" - }, + }, { - "cfgctxt": "instr:0_stmt:5", - "line": 65, - "predicate": "ptr-upper-bound-deref", - "status": "safe", + "cfgctxt": "instr:0_stmt:5", + "line": 65, + "predicate": "ptr-upper-bound-deref", + "status": "safe", "tgtstatus": "safe" } ] From 1e3c32c4e1a7b041647e1959a65cfd05802ef986 Mon Sep 17 00:00:00 2001 From: Henny Sipma Date: Mon, 23 Feb 2026 21:08:27 -0800 Subject: [PATCH 4/4] APP: adapt printing arrays --- chc/app/CExp.py | 2 +- chc/app/CHVersion.py | 2 +- chc/app/CLval.py | 15 +++++++++++---- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/chc/app/CExp.py b/chc/app/CExp.py index 1afce84..55b4600 100644 --- a/chc/app/CExp.py +++ b/chc/app/CExp.py @@ -730,7 +730,7 @@ def accept(self, visitor: "CVisitor") -> None: visitor.visit_startof(self) def __str__(self) -> str: - return "&(" + str(self.lval) + ")" + return "&s(" + str(self.lval) + ")" @cdregistry.register_tag("fnapp", CExp) diff --git a/chc/app/CHVersion.py b/chc/app/CHVersion.py index 7499ea5..4d4e38f 100644 --- a/chc/app/CHVersion.py +++ b/chc/app/CHVersion.py @@ -1 +1 @@ -chcversion: str = "0.2.0-2025-12-06" +chcversion: str = "0.2.0-2026-02-23" diff --git a/chc/app/CLval.py b/chc/app/CLval.py index 851644a..f32698b 100644 --- a/chc/app/CLval.py +++ b/chc/app/CLval.py @@ -6,7 +6,7 @@ # # Copyright (c) 2017-2020 Kestrel Technology LLC # Copyright (c) 2020-2022 Henny B. Sipma -# Copyright (c) 2023-2025 Aarno Labs LLC +# Copyright (c) 2023-2026 Aarno Labs LLC # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -28,7 +28,7 @@ # ------------------------------------------------------------------------------ """Left-hand side value.""" -from typing import Dict, List, Tuple, TYPE_CHECKING +from typing import cast, Dict, List, Tuple, TYPE_CHECKING from chc.app.CDictionaryRecord import CDictionaryRecord @@ -36,7 +36,7 @@ if TYPE_CHECKING: from chc.app.CDictionary import CDictionary - from chc.app.CLHost import CLHost + from chc.app.CLHost import CLHost, CLHostMem from chc.app.COffset import COffset from chc.app.CVisitor import CVisitor @@ -94,4 +94,11 @@ def accept(self, visitor: "CVisitor") -> None: visitor.visit_lval(self) def __str__(self) -> str: - return str(self.lhost) + str(self.offset) + if self.lhost.is_mem: + if self.offset.is_no_offset or self.offset.is_field: + return str(self.lhost) + str(self.offset) + else: + lhost = cast("CLHostMem", self.lhost) + return "(" + str(lhost.exp) + ")" + str(self.offset) + else: + return str(self.lhost) + str(self.offset)