On 7/26/21 2:57 AM, Song Gao wrote:

Hi, Richard.

On 07/23/2021 01:12 PM, Richard Henderson wrote:
On 7/20/21 11:53 PM, Song Gao wrote:
+target_ulong helper_cpucfg(CPULoongArchState *env, target_ulong rj)
+{
+    target_ulong r = 0;
+
+    switch (rj) {
+    case 0:
+        r = env->CSR_MCSR0 & 0xffffffff;
+        break;
+    case 1:
+        r = (env->CSR_MCSR0 & 0xffffffff00000000) >> 32;
+        break;

Why do you represent all of these as high and low portions of a 64-bit internal 
value, when the manual describes them as 32-bit values?

This method can reduce variables on env.

The number of variables may increase, but the memory consumed -- which is the metric that is more important -- is still the same.

Also, it is much less confusing to match the description in the manual.


r~

Reply via email to