* [linux-review:UPDATE-20200516-195607/Jordan-Niethe/Initial-Prefixed-Instruction-support/20200506-171736 29/30] arch/powerpc/lib/sstep.c:2696:9: error: 'suffix' undeclared
@ 2020-05-16 13:58 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-05-16 13:58 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 6045 bytes --]
tree: https://github.com/0day-ci/linux/commits/UPDATE-20200516-195607/Jordan-Niethe/Initial-Prefixed-Instruction-support/20200506-171736
head: dae797aa7e7f8d885f42df4c29129e8135bc7b1c
commit: b8a5a93bf8e358960a60e04435d411a867b5a1ea [29/30] powerpc sstep: Add support for prefixed load/stores
config: powerpc-defconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout b8a5a93bf8e358960a60e04435d411a867b5a1ea
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
arch/powerpc/lib/sstep.c: In function 'analyse_instr':
>> arch/powerpc/lib/sstep.c:2696:9: error: 'suffix' undeclared (first use in this function)
2696 | ra = (suffix >> 16) & 0x1f;
| ^~~~~~
arch/powerpc/lib/sstep.c:2696:9: note: each undeclared identifier is reported only once for each function it appears in
vim +/suffix +2696 arch/powerpc/lib/sstep.c
2677
2678 #ifdef __powerpc64__
2679 case 62: /* std[u] */
2680 op->ea = dsform_ea(word, regs);
2681 switch (word & 3) {
2682 case 0: /* std */
2683 op->type = MKOP(STORE, 0, 8);
2684 break;
2685 case 1: /* stdu */
2686 op->type = MKOP(STORE, UPDATE, 8);
2687 break;
2688 case 2: /* stq */
2689 if (!(rd & 1))
2690 op->type = MKOP(STORE, 0, 16);
2691 break;
2692 }
2693 break;
2694 case 1: /* Prefixed instructions */
2695 prefix_r = word & (1ul << 20);
> 2696 ra = (suffix >> 16) & 0x1f;
2697 op->update_reg = ra;
2698 rd = (suffix >> 21) & 0x1f;
2699 op->reg = rd;
2700 op->val = regs->gpr[rd];
2701
2702 suffixopcode = suffix >> 26;
2703 prefixtype = (word >> 24) & 0x3;
2704 switch (prefixtype) {
2705 case 0: /* Type 00 Eight-Byte Load/Store */
2706 if (prefix_r && ra)
2707 break;
2708 op->ea = mlsd_8lsd_ea(word, suffix, regs);
2709 switch (suffixopcode) {
2710 case 41: /* plwa */
2711 op->type = MKOP(LOAD, PREFIXED | SIGNEXT, 4);
2712 break;
2713 case 42: /* plxsd */
2714 op->reg = rd + 32;
2715 op->type = MKOP(LOAD_VSX, PREFIXED, 8);
2716 op->element_size = 8;
2717 op->vsx_flags = VSX_CHECK_VEC;
2718 break;
2719 case 43: /* plxssp */
2720 op->reg = rd + 32;
2721 op->type = MKOP(LOAD_VSX, PREFIXED, 4);
2722 op->element_size = 8;
2723 op->vsx_flags = VSX_FPCONV | VSX_CHECK_VEC;
2724 break;
2725 case 46: /* pstxsd */
2726 op->reg = rd + 32;
2727 op->type = MKOP(STORE_VSX, PREFIXED, 8);
2728 op->element_size = 8;
2729 op->vsx_flags = VSX_CHECK_VEC;
2730 break;
2731 case 47: /* pstxssp */
2732 op->reg = rd + 32;
2733 op->type = MKOP(STORE_VSX, PREFIXED, 4);
2734 op->element_size = 8;
2735 op->vsx_flags = VSX_FPCONV | VSX_CHECK_VEC;
2736 break;
2737 case 51: /* plxv1 */
2738 op->reg += 32;
2739 fallthrough;
2740 case 50: /* plxv0 */
2741 op->type = MKOP(LOAD_VSX, PREFIXED, 16);
2742 op->element_size = 16;
2743 op->vsx_flags = VSX_CHECK_VEC;
2744 break;
2745 case 55: /* pstxv1 */
2746 op->reg = rd + 32;
2747 fallthrough;
2748 case 54: /* pstxv0 */
2749 op->type = MKOP(STORE_VSX, PREFIXED, 16);
2750 op->element_size = 16;
2751 op->vsx_flags = VSX_CHECK_VEC;
2752 break;
2753 case 56: /* plq */
2754 op->type = MKOP(LOAD, PREFIXED, 16);
2755 break;
2756 case 57: /* pld */
2757 op->type = MKOP(LOAD, PREFIXED, 8);
2758 break;
2759 case 60: /* stq */
2760 op->type = MKOP(STORE, PREFIXED, 16);
2761 break;
2762 case 61: /* pstd */
2763 op->type = MKOP(STORE, PREFIXED, 8);
2764 break;
2765 }
2766 break;
2767 case 1: /* Type 01 Eight-Byte Register-to-Register */
2768 break;
2769 case 2: /* Type 10 Modified Load/Store */
2770 if (prefix_r && ra)
2771 break;
2772 op->ea = mlsd_8lsd_ea(word, suffix, regs);
2773 switch (suffixopcode) {
2774 case 32: /* plwz */
2775 op->type = MKOP(LOAD, PREFIXED, 4);
2776 break;
2777 case 34: /* plbz */
2778 op->type = MKOP(LOAD, PREFIXED, 1);
2779 break;
2780 case 36: /* pstw */
2781 op->type = MKOP(STORE, PREFIXED, 4);
2782 break;
2783 case 38: /* pstb */
2784 op->type = MKOP(STORE, PREFIXED, 1);
2785 break;
2786 case 40: /* plhz */
2787 op->type = MKOP(LOAD, PREFIXED, 2);
2788 break;
2789 case 42: /* plha */
2790 op->type = MKOP(LOAD, PREFIXED | SIGNEXT, 2);
2791 break;
2792 case 44: /* psth */
2793 op->type = MKOP(STORE, PREFIXED, 2);
2794 break;
2795 case 48: /* plfs */
2796 op->type = MKOP(LOAD_FP, PREFIXED | FPCONV, 4);
2797 break;
2798 case 50: /* plfd */
2799 op->type = MKOP(LOAD_FP, PREFIXED, 8);
2800 break;
2801 case 52: /* pstfs */
2802 op->type = MKOP(STORE_FP, PREFIXED | FPCONV, 4);
2803 break;
2804 case 54: /* pstfd */
2805 op->type = MKOP(STORE_FP, PREFIXED, 8);
2806 break;
2807 }
2808 break;
2809 case 3: /* Type 11 Modified Register-to-Register */
2810 break;
2811 }
2812 #endif /* __powerpc64__ */
2813
2814 }
2815
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 26147 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-05-16 13:58 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-16 13:58 [linux-review:UPDATE-20200516-195607/Jordan-Niethe/Initial-Prefixed-Instruction-support/20200506-171736 29/30] arch/powerpc/lib/sstep.c:2696:9: error: 'suffix' undeclared kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.