@@ -64,23 +64,17 @@ fn extract_public_segments(
6464
6565fn extract_sections_from_memory (
6666 memory : & Memory ,
67- initial_pc : u32 ,
6867 initial_ap : u32 ,
6968 final_ap : u32 ,
69+ program : Vec < ( u32 , [ u32 ; 8 ] ) > ,
7070 public_segment_context : PublicSegmentContext ,
7171) -> PublicMemory {
7272 let public_segments =
7373 extract_public_segments ( memory, initial_ap, final_ap, public_segment_context) ;
74- let program_memory_addresses = initial_pc..initial_ap - 2 ;
7574 let safe_call_addresses = initial_ap - 2 ..initial_ap;
7675 let output_memory_addresses =
7776 public_segments. output . start_ptr . value ..public_segments. output . stop_ptr . value ;
78- let [ program, safe_call, output] = [
79- program_memory_addresses,
80- safe_call_addresses,
81- output_memory_addresses,
82- ]
83- . map ( |range| {
77+ let [ safe_call, output] = [ safe_call_addresses, output_memory_addresses] . map ( |range| {
8478 range
8579 . map ( |addr| {
8680 let id = memory. get_raw_id ( addr) ;
@@ -113,6 +107,7 @@ pub fn create_cairo_claim_generator(
113107 public_memory_addresses,
114108 builtin_segments,
115109 public_segment_context,
110+ program,
116111 ..
117112 } : ProverInput ,
118113 preprocessed_trace : Arc < PreProcessedTrace > ,
@@ -135,14 +130,13 @@ pub fn create_cairo_claim_generator(
135130 all_components. insert ( "verify_bitwise_xor_9" ) ;
136131
137132 // Public data.
138- let initial_pc = initial_state. pc . 0 ;
139133 let initial_ap = initial_state. ap . 0 ;
140134 let final_ap = final_state. ap . 0 ;
141135 let public_memory = extract_sections_from_memory (
142136 & memory,
143- initial_pc,
144137 initial_ap,
145138 final_ap,
139+ program,
146140 public_segment_context,
147141 ) ;
148142
0 commit comments