aboutsummaryrefslogtreecommitdiffstats
path: root/fw/diffs/csu/42.0.0.2__to__42.0.0.6.diff
blob: c0eaf3ffa3e07e2176e212e8058d42eea6cddd43 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# csu  42.0.0.2 -> 42.0.0.6
# branch 42.0.0, consecutive builds
#
# 1 functions resized, 2 new, 1 removed, 3 with body changes
# total named bytes +22
#
# Normalised: tier annotations, off_/loc_/sub_ address tokens,
# long hex literals and vN renumbering. Local declarations are
# dropped. Raw diffs are 6-17% of lines and almost all noise.

## resized functions (byte size from the index sidecar)
  csu_TA_InvokeCommandEntryPoint                               70 -> 82     +12

## functions present only in 42.0.0.6
  + csu_cmd03                                              10 bytes
  + csu_sysdrv_rpc_305                                     32 bytes

## functions present only in 42.0.0.2
  - csu_sysdrv_rpc_309                                     32 bytes

## body changes, per function

### csu_TA_InvokeCommandEntryPoint
       vX = (struct ta_params *)a4[1];
  -    if ( (unsigned int)vX >= 0x14 )
  +    if ( (unsigned int)vX >= 0x24 )
       {
         {
  -        if ( vX->cmd_id == 2 )
  +        cmd_id = vX->cmd_id;
  +        if ( vX->cmd_id == 3 )
  +        {
  +          vX = csu_cmd03(ctx: *a4, params: vX);
  +        }
  +        else if ( cmd_id == 2 )
           {
           }
  -        else if ( vX->cmd_id == 1 )
  +        else if ( cmd_id == 1 )
           {

### csu_cmd01
  
  -  result = csu_sysdrv_rpc_309();
  +  vX = 0;
  +  result = csu_cmd01__h1(ctx: &vX, params);
     if ( result == 0 )
     {
  -    *((_BYTE *)ctx + 14) = 0;
  -    *((_BYTE *)ctx + 16) = 0;
  -    *((_BYTE *)ctx + 15) = 0;
  -    *((_BYTE *)ctx + 13) = 0;
  +    vX = vX;
  +    *((_BYTE *)ctx + 17) = vX & 1;
  +    *((_BYTE *)ctx + 19) = (vX & 4) != 0;
  +    *((_BYTE *)ctx + 18) = (vX & 2) != 0;
  +    *((_BYTE *)ctx + 16) = (vX & 7) != 0;
     }

### csu_cmd02
  
     if ( *((_BYTE *)ctx + 12) == 0 )
  -  {
  -    vX = 6;
  -    return csu_cmd01__h1(ctx: (void *)vX, params);
  -  }
  +    return csu_sysdrv_rpc_305();
     result = csu_asd_rpc_306();
     if ( result == 0 )
  -  {
  -    vX = 5;
  -    return csu_cmd01__h1(ctx: (void *)vX, params);
  -  }
  +    return csu_sysdrv_rpc_305();
     return result;