1d8ff269fSMichał Górny# XFAIL: system-windows 28aea95f3SMichał Górny# Darwin uses the legacy behavior of reporting abridged ftag value, 38aea95f3SMichał Górny# it is covered by TestRegisters.py::fp_special_purpose_register_read. 4d8ff269fSMichał Górny# XFAIL: system-darwin 5d8ff269fSMichał Górny# REQUIRES: native && target-x86_64 6d8ff269fSMichał Górny# RUN: %clangxx_host -g %p/Inputs/x86-fp-read.cpp -o %t 7d8ff269fSMichał Górny# RUN: %lldb -b -s %s %t | FileCheck %s 8d8ff269fSMichał Górnyprocess launch 9d8ff269fSMichał Górny# CHECK: Process {{.*}} stopped 10d8ff269fSMichał Górny 11d8ff269fSMichał Górny# fdiv (%rbx) gets encoded into 2 bytes, int3 into 1 byte 12*d875838eSDave Leeexpression (void*)($pc-3) 13d8ff269fSMichał Górny# CHECK: (void *) $0 = [[FDIV:0x[0-9a-f]*]] 14*d875838eSDave Leeexpression &zero 15d8ff269fSMichał Górny# CHECK: (uint32_t *) $1 = [[ZERO:0x[0-9a-f]*]] 16d8ff269fSMichał Górny 17d8ff269fSMichał Górnyregister read --all 18d8ff269fSMichał Górny# CHECK-DAG: fctrl = 0x037b 19d8ff269fSMichał Górny# CHECK-DAG: fstat = 0x8084 208aea95f3SMichał Górny# CHECK-DAG: ftag = 0xea58 21d8ff269fSMichał Górny# CHECK-DAG: fop = 0x0033 22d8ff269fSMichał Górny# CHECK-DAG: fip = [[FDIV]] 23d8ff269fSMichał Górny# CHECK-DAG: fdp = [[ZERO]] 24d8ff269fSMichał Górny 25d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}0 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80 0x00 0x40} 26d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}1 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x3f 0x00 0x00} 27d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}2 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00} 28d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}3 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80} 29d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}4 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80 0xff 0x7f} 30d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}5 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80 0xff 0xff} 31d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}6 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xc0 0xff 0xff} 32d8ff269fSMichał Górny# CHECK-DAG: st{{(mm)?}}7 = {0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00} 33d8ff269fSMichał Górny 34d8ff269fSMichał Górny# legacy approach, superseded by fip/fdp registers 35*d875838eSDave Leeexpression (void*)($fiseg*0x100000000 + $fioff) 36d8ff269fSMichał Górny# CHECK: (void *) $2 = [[FDIV]] 37*d875838eSDave Leeexpression (uint32_t*)($foseg * 0x100000000 + $fooff) 38d8ff269fSMichał Górny# CHECK: (uint32_t *) $3 = [[ZERO]] 39d8ff269fSMichał Górny 40d8ff269fSMichał Górnyprocess continue 41d8ff269fSMichał Górny# CHECK: Process {{[0-9]+}} exited with status = 0 42