Move hidden logic into loop 'for' statement

Signed-off-by: Paul Elliott <paul.elliott@arm.com>
diff --git a/tests/suites/test_suite_psa_crypto.function b/tests/suites/test_suite_psa_crypto.function
index 9918399..f5865bb 100644
--- a/tests/suites/test_suite_psa_crypto.function
+++ b/tests/suites/test_suite_psa_crypto.function
@@ -430,11 +430,12 @@
     {
         /* Pass additional data in parts */
         ad_part_len = (size_t) ad_part_len_arg;
-        part_offset = 0;
 
-        while( part_offset < additional_data->len )
+        for( part_offset = 0, part_count = 0;
+             part_offset < additional_data->len;
+             part_offset += part_length, part_count++ )
         {
-            if( do_zero_parts && part_count++ & 0x01 )
+            if( do_zero_parts && ( part_count & 0x01 ) )
             {
                 part_length = 0;
             }
@@ -454,7 +455,6 @@
                                             additional_data->x + part_offset,
                                             part_length ) );
 
-            part_offset += part_length;
         }
     }
     else
@@ -473,11 +473,11 @@
 
         ASSERT_ALLOC( part_data, part_data_size );
 
-        part_offset = 0;
-
-        while( part_offset < data_true_size )
+        for( part_offset = 0, part_count = 0;
+             part_offset < data_true_size;
+             part_offset += part_length, part_count++ )
         {
-            if( do_zero_parts && part_count++ & 0x01 )
+            if( do_zero_parts && ( part_count & 0x01 ) )
             {
                 part_length = 0;
             }
@@ -505,7 +505,6 @@
                         output_part_length );
             }
 
-            part_offset += part_length;
             output_length += output_part_length;
         }
     }