.s文件里面的变量怎么才能观察到它的值呢?

在Uboot启动过程中,执行lowlevle_init.S文件时,

#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_STACK)
  ldr  sp, =CONFIG_SPL_STACK
#else
  ldr  sp, =CONFIG_SYS_INIT_SP_ADDR
#endif

我能打印出来CONFIG_SPL_BUILD和CONFIG_SPL_STACK此时的值吗?

我不知道怎么在 .S 文件中打印出宏的值;

你可以利用 #error 来判断第一行的宏是否生效;
如在 #if defined(CONFIG_SPI_BUILD) && defined(CONFIG_SPI_STACK)
下面添加一个调试语句:
#error “have defined CONFIG_SPI_BUILD && CONFIG_SPI_STACK”

至于 #error 的用法和原理,你可以百度一下了解;