Index: lldb/test/API/commands/register/register/register_command/TestRegisters.py =================================================================== --- lldb/test/API/commands/register/register/register_command/TestRegisters.py +++ lldb/test/API/commands/register/register/register_command/TestRegisters.py @@ -319,10 +319,12 @@ ] st0regname = None - if currentFrame.FindRegister("st0").IsValid(): - st0regname = "st0" - elif currentFrame.FindRegister("stmm0").IsValid(): + # Darwin is using stmmN by default but support stN as an alias. + # Therefore, we need to check for stmmN first. + if currentFrame.FindRegister("stmm0").IsValid(): st0regname = "stmm0" + elif currentFrame.FindRegister("st0").IsValid(): + st0regname = "st0" if st0regname is not None: # reg value # must-have Index: lldb/test/Shell/Register/x86-multithread-write.test =================================================================== --- lldb/test/Shell/Register/x86-multithread-write.test +++ lldb/test/Shell/Register/x86-multithread-write.test @@ -1,5 +1,4 @@ # XFAIL: system-windows -# XFAIL: system-darwin # REQUIRES: native && (target-x86 || target-x86_64) # RUN: %clangxx_host %p/Inputs/x86-multithread-write.cpp -o %t -pthread # RUN: %lldb -b -s %s %t | FileCheck %s Index: lldb/tools/debugserver/source/MacOSX/i386/DNBArchImplI386.cpp =================================================================== --- lldb/tools/debugserver/source/MacOSX/i386/DNBArchImplI386.cpp +++ lldb/tools/debugserver/source/MacOSX/i386/DNBArchImplI386.cpp @@ -1356,28 +1356,28 @@ FPU_SIZE_UINT(mxcsrmask), FPU_OFFSET(mxcsrmask), INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), FPU_OFFSET(stmm0), INVALID_NUB_REGNUM, dwarf_stmm0, INVALID_NUB_REGNUM, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), FPU_OFFSET(stmm1), INVALID_NUB_REGNUM, dwarf_stmm1, INVALID_NUB_REGNUM, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), FPU_OFFSET(stmm2), INVALID_NUB_REGNUM, dwarf_stmm2, INVALID_NUB_REGNUM, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), FPU_OFFSET(stmm3), INVALID_NUB_REGNUM, dwarf_stmm3, INVALID_NUB_REGNUM, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), FPU_OFFSET(stmm4), INVALID_NUB_REGNUM, dwarf_stmm4, INVALID_NUB_REGNUM, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), FPU_OFFSET(stmm5), INVALID_NUB_REGNUM, dwarf_stmm5, INVALID_NUB_REGNUM, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), FPU_OFFSET(stmm6), INVALID_NUB_REGNUM, dwarf_stmm6, INVALID_NUB_REGNUM, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), FPU_OFFSET(stmm7), INVALID_NUB_REGNUM, dwarf_stmm7, INVALID_NUB_REGNUM, debugserver_stmm7, NULL, NULL}, @@ -1447,28 +1447,28 @@ FPU_SIZE_UINT(mxcsrmask), AVX_OFFSET(mxcsrmask), INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), AVX_OFFSET(stmm0), INVALID_NUB_REGNUM, dwarf_stmm0, INVALID_NUB_REGNUM, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), AVX_OFFSET(stmm1), INVALID_NUB_REGNUM, dwarf_stmm1, INVALID_NUB_REGNUM, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), AVX_OFFSET(stmm2), INVALID_NUB_REGNUM, dwarf_stmm2, INVALID_NUB_REGNUM, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), AVX_OFFSET(stmm3), INVALID_NUB_REGNUM, dwarf_stmm3, INVALID_NUB_REGNUM, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), AVX_OFFSET(stmm4), INVALID_NUB_REGNUM, dwarf_stmm4, INVALID_NUB_REGNUM, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), AVX_OFFSET(stmm5), INVALID_NUB_REGNUM, dwarf_stmm5, INVALID_NUB_REGNUM, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), AVX_OFFSET(stmm6), INVALID_NUB_REGNUM, dwarf_stmm6, INVALID_NUB_REGNUM, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), AVX_OFFSET(stmm7), INVALID_NUB_REGNUM, dwarf_stmm7, INVALID_NUB_REGNUM, debugserver_stmm7, NULL, NULL}, @@ -1596,28 +1596,28 @@ FPU_SIZE_UINT(mxcsrmask), AVX_OFFSET(mxcsrmask), INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, INVALID_NUB_REGNUM, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), AVX_OFFSET(stmm0), INVALID_NUB_REGNUM, dwarf_stmm0, INVALID_NUB_REGNUM, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), AVX_OFFSET(stmm1), INVALID_NUB_REGNUM, dwarf_stmm1, INVALID_NUB_REGNUM, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), AVX_OFFSET(stmm2), INVALID_NUB_REGNUM, dwarf_stmm2, INVALID_NUB_REGNUM, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), AVX_OFFSET(stmm3), INVALID_NUB_REGNUM, dwarf_stmm3, INVALID_NUB_REGNUM, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), AVX_OFFSET(stmm4), INVALID_NUB_REGNUM, dwarf_stmm4, INVALID_NUB_REGNUM, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), AVX_OFFSET(stmm5), INVALID_NUB_REGNUM, dwarf_stmm5, INVALID_NUB_REGNUM, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), AVX_OFFSET(stmm6), INVALID_NUB_REGNUM, dwarf_stmm6, INVALID_NUB_REGNUM, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), AVX_OFFSET(stmm7), INVALID_NUB_REGNUM, dwarf_stmm7, INVALID_NUB_REGNUM, debugserver_stmm7, NULL, NULL}, Index: lldb/tools/debugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp =================================================================== --- lldb/tools/debugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp +++ lldb/tools/debugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp @@ -1767,28 +1767,28 @@ FPU_SIZE_UINT(mxcsrmask), FPU_OFFSET(mxcsrmask), -1U, -1U, -1U, -1U, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), FPU_OFFSET(stmm0), ehframe_dwarf_stmm0, ehframe_dwarf_stmm0, -1U, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), FPU_OFFSET(stmm1), ehframe_dwarf_stmm1, ehframe_dwarf_stmm1, -1U, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), FPU_OFFSET(stmm2), ehframe_dwarf_stmm2, ehframe_dwarf_stmm2, -1U, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), FPU_OFFSET(stmm3), ehframe_dwarf_stmm3, ehframe_dwarf_stmm3, -1U, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), FPU_OFFSET(stmm4), ehframe_dwarf_stmm4, ehframe_dwarf_stmm4, -1U, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), FPU_OFFSET(stmm5), ehframe_dwarf_stmm5, ehframe_dwarf_stmm5, -1U, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), FPU_OFFSET(stmm6), ehframe_dwarf_stmm6, ehframe_dwarf_stmm6, -1U, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), FPU_OFFSET(stmm7), ehframe_dwarf_stmm7, ehframe_dwarf_stmm7, -1U, debugserver_stmm7, NULL, NULL}, @@ -1882,28 +1882,28 @@ FPU_SIZE_UINT(mxcsrmask), AVX_OFFSET(mxcsrmask), -1U, -1U, -1U, -1U, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), AVX_OFFSET(stmm0), ehframe_dwarf_stmm0, ehframe_dwarf_stmm0, -1U, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), AVX_OFFSET(stmm1), ehframe_dwarf_stmm1, ehframe_dwarf_stmm1, -1U, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), AVX_OFFSET(stmm2), ehframe_dwarf_stmm2, ehframe_dwarf_stmm2, -1U, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), AVX_OFFSET(stmm3), ehframe_dwarf_stmm3, ehframe_dwarf_stmm3, -1U, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), AVX_OFFSET(stmm4), ehframe_dwarf_stmm4, ehframe_dwarf_stmm4, -1U, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), AVX_OFFSET(stmm5), ehframe_dwarf_stmm5, ehframe_dwarf_stmm5, -1U, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), AVX_OFFSET(stmm6), ehframe_dwarf_stmm6, ehframe_dwarf_stmm6, -1U, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), AVX_OFFSET(stmm7), ehframe_dwarf_stmm7, ehframe_dwarf_stmm7, -1U, debugserver_stmm7, NULL, NULL}, @@ -2080,28 +2080,28 @@ FPU_SIZE_UINT(mxcsrmask), AVX_OFFSET(mxcsrmask), -1U, -1U, -1U, -1U, NULL, NULL}, - {e_regSetFPU, fpu_stmm0, "stmm0", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm0, "stmm0", "st0", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm0), AVX_OFFSET(stmm0), ehframe_dwarf_stmm0, ehframe_dwarf_stmm0, -1U, debugserver_stmm0, NULL, NULL}, - {e_regSetFPU, fpu_stmm1, "stmm1", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm1, "stmm1", "st1", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm1), AVX_OFFSET(stmm1), ehframe_dwarf_stmm1, ehframe_dwarf_stmm1, -1U, debugserver_stmm1, NULL, NULL}, - {e_regSetFPU, fpu_stmm2, "stmm2", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm2, "stmm2", "st2", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm2), AVX_OFFSET(stmm2), ehframe_dwarf_stmm2, ehframe_dwarf_stmm2, -1U, debugserver_stmm2, NULL, NULL}, - {e_regSetFPU, fpu_stmm3, "stmm3", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm3, "stmm3", "st3", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm3), AVX_OFFSET(stmm3), ehframe_dwarf_stmm3, ehframe_dwarf_stmm3, -1U, debugserver_stmm3, NULL, NULL}, - {e_regSetFPU, fpu_stmm4, "stmm4", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm4, "stmm4", "st4", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm4), AVX_OFFSET(stmm4), ehframe_dwarf_stmm4, ehframe_dwarf_stmm4, -1U, debugserver_stmm4, NULL, NULL}, - {e_regSetFPU, fpu_stmm5, "stmm5", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm5, "stmm5", "st5", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm5), AVX_OFFSET(stmm5), ehframe_dwarf_stmm5, ehframe_dwarf_stmm5, -1U, debugserver_stmm5, NULL, NULL}, - {e_regSetFPU, fpu_stmm6, "stmm6", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm6, "stmm6", "st6", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm6), AVX_OFFSET(stmm6), ehframe_dwarf_stmm6, ehframe_dwarf_stmm6, -1U, debugserver_stmm6, NULL, NULL}, - {e_regSetFPU, fpu_stmm7, "stmm7", NULL, Vector, VectorOfUInt8, + {e_regSetFPU, fpu_stmm7, "stmm7", "st7", Vector, VectorOfUInt8, FPU_SIZE_MMST(stmm7), AVX_OFFSET(stmm7), ehframe_dwarf_stmm7, ehframe_dwarf_stmm7, -1U, debugserver_stmm7, NULL, NULL},