This works normally on my rather new-ish Mac (2020), Monterey 12.0.1, using:
> R.version _ platform x86_64-apple-darwin17.0 arch x86_64 os darwin17.0 system x86_64, darwin17.0 status major 4 minor 1.1 year 2021 month 08 day 10 svn rev 80725 language R version.string R version 4.1.1 (2021-08-10) nickname Kick Things > sessionInfo() R version 4.1.1 (2021-08-10) Platform: x86_64-apple-darwin17.0 (64-bit) Running under: macOS Monterey 12.0.1 Matrix products: default BLAS: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRblas.0.dylib LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] Rmpfr_0.8-7 gmp_0.6-2.1 mylocal_1.0 loaded via a namespace (and not attached): [1] compiler_4.1.1 tools_4.1.1 DBI_1.1.1 RMySQL_0.10.21 askpass_1.1 On Mon, 29 Nov 2021 at 07:43, Kevin Ushey <kevinus...@gmail.com> wrote: > Okay, I've reproduced the crash on my 2013 Intel MacBook Pro. In this case, > the issue reproduces more readily because RStudio is calling str() behind > the scenes (which is the cause of the crash in this case). So, a plain R > reproducible example: > > library(Rmpfr) > x <- mpfr(-50.1, 200) > str(x) > > and I see: > > > str(x) > Class 'mpfr' [package "Rmpfr"] of length 1 and precision 200 > > *** caught illegal operation *** > address 0x112833ed5, cause 'illegal opcode' > > Traceback: > 1: .mpfr2str(x, digits, maybe.full = maybe.full, base = base) > 2: formatMpfr(object, digits = digits.d, drop0trailing = drop0trailing, > ...) > 3: str.mpfr(x) > 4: str(x) > > From lldb: > > * thread #1, queue = 'com.apple.main-thread', stop reason = > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) > frame #0: 0x0000000107ec7ed5 Rmpfr.so`mpfr_get_str_aux + 165 > Rmpfr.so`mpfr_get_str_aux: > -> 0x107ec7ed5 <+165>: adcxq %rsi, %rcx > 0x107ec7edb <+171>: movq %r10, %rdi > 0x107ec7ede <+174>: movq %r8, %rsi > 0x107ec7ee1 <+177>: movq %r10, %rbx > > and relevant part of the backtrace: > > (lldb) bt > * thread #1, queue = 'com.apple.main-thread', stop reason = > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) > * frame #0: 0x0000000107ec7ed5 Rmpfr.so`mpfr_get_str_aux + 165 > frame #1: 0x0000000107ec78da Rmpfr.so`mpfr_get_str + 2890 > frame #2: 0x0000000107eb9c9e Rmpfr.so`mpfr2str(x=0x00000001053ed768, > digits=<unavailable>, maybeFull=<unavailable>, base=<unavailable>) at > convert.c:608:2 [opt] > < ... > > > If I understand correctly, 'adcx' was introduced with Broadwell CPUs (so, > October 2014) and so that could explain why I'm seeing this crash. It'd be > helpful if others could try to verify with newer / older macOS machines, > though. > > > sessionInfo() > R version 4.1.2 (2021-11-01) > Platform: x86_64-apple-darwin17.0 (64-bit) > Running under: macOS Big Sur 10.16 > > Best, > Kevin > > On Sun, Nov 28, 2021 at 6:22 PM Simon Urbanek <simon.urba...@r-project.org > > > wrote: > > > Kevin, > > > > that is a different story, yes, Rosetta2 is incomplete - the advice on M1 > > is to use native R. > > > > Cheers, > > Simon > > > > > > > On Nov 29, 2021, at 12:30 PM, Kevin Ushey <kevinus...@gmail.com> > wrote: > > > > > > I can reproduce something similar on my M1 macOS machine, when using > the > > > x86_64 build of R. I see: > > > > > >> x1 <- mpfr(-50, 200) > > > *** caught illegal operation *** > > > address 0x10c5f623b, cause 'illegal opcode' > > > > > > This is with the binary of Rmpfr 0.8-7 as from CRAN, with R 4.1.2. > Here's > > > what LLDB says: > > > > > > * thread #1, queue = 'com.apple.main-thread', stop reason = > > > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) > > > frame #0: 0x000000010f69c23b Rmpfr.so`mpfr_set_d + 43 > > > Rmpfr.so`mpfr_set_d: > > > -> 0x10f69c23b <+43>: vucomisd %xmm0, %xmm0 > > > 0x10f69c23f <+47>: jp 0x10f69c39a ; <+394> > > > 0x10f69c245 <+53>: vpxor %xmm1, %xmm1, %xmm1 > > > 0x10f69c249 <+57>: vucomisd %xmm1, %xmm0 > > > > > > And the relevant part of the stack trace: > > > > > > (lldb) bt > > > * thread #1, queue = 'com.apple.main-thread', stop reason = > > > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) > > > * frame #0: 0x000000010f69c23b Rmpfr.so`mpfr_set_d + 43 > > > frame #1: 0x000000010f6809d3 Rmpfr.so`d2mpfr1_(x=-50, > > > i_prec=<unavailable>, rnd=MPFR_RNDN) at convert.c:129:5 [opt] > > > frame #2: 0x000000010f680eb0 Rmpfr.so`d2mpfr1_list(x=<unavailable>, > > > prec=<unavailable>, rnd_mode=<unavailable>) at convert.c:186:29 [opt] > > > > > > At least for my case, my guess is that the 'vucomisd' instruction isn't > > > available via Apple's Rosetta emulation. It's possible users with older > > > macOS machines not supporting AVX instructions could see this, as well? > > > > > > Best, > > > Kevin > > > > > > On Sun, Nov 28, 2021 at 9:54 AM Richard M. Heiberger <r...@temple.edu> > > wrote: > > > > > >> Works normally in R-4.1.2 with Rmpfr_0.8-7 on Macintosh > > >> aarch64-apple-darwin20 > > >> I am running inside Emacs using ESS > > >> > > >>> packageVersion("Rmpfr") > > >> [1] ‘0.8.7’ > > >>> library(Rmpfr) > > >> Loading required package: gmp > > >> > > >> Attaching package: ‘gmp’ > > >> > > >> The following objects are masked from ‘package:base’: > > >> > > >> %*%, apply, crossprod, matrix, tcrossprod > > >> > > >> C code of R package 'Rmpfr': GMP using 64 bits per limb > > >> > > >> > > >> Attaching package: ‘Rmpfr’ > > >> > > >> The following object is masked from ‘package:gmp’: > > >> > > >> outer > > >> > > >> The following objects are masked from ‘package:stats’: > > >> > > >> dbinom, dgamma, dnbinom, dnorm, dpois, dt, pnorm > > >> > > >> The following objects are masked from ‘package:base’: > > >> > > >> cbind, pmax, pmin, rbind > > >> > > >>> x1 <- mpfr(-50, 200) > > >>> x1 > > >> 1 'mpfr' number of precision 200 bits > > >> [1] -50 > > >>> x2 <- mpfr(-50.1, 200) > > >>> x2 > > >> 1 'mpfr' number of precision 200 bits > > >> [1] -50.10000000000000142108547152020037174224853515625 > > >>> version > > >> _ > > >> platform aarch64-apple-darwin20 > > >> arch aarch64 > > >> os darwin20 > > >> system aarch64, darwin20 > > >> status > > >> major 4 > > >> minor 1.2 > > >> year 2021 > > >> month 11 > > >> day 01 > > >> svn rev 81115 > > >> language R > > >> version.string R version 4.1.2 (2021-11-01) > > >> nickname Bird Hippie > > >>> > > >> > > >>> On Nov 27, 2021, at 15:46, Dev Chakraborty <dpc10s...@gmail.com> > > wrote: > > >>> > > >>> I used package Rmpfr ca. 2017 and it worked fine. The latest version > > >>> (0.8-7) causes R (running under RStudio) to crash. A simple example > is: > > >>> > > >>> library(Rmpfr) > > >>> x1 <- mpfr(-50, 200) > > >>> x2 <- mpfr(-50.1, 200) > > >>> > > >>> Which gives the message: > > >>> > > >>> R Session Aborted > > >>> R encountered a fatal error > > >>> The session was terminated > > >>> Start New Session > > >>> > > >>> I am using R version 4.1.1 on a Mac running MacOS 12.0.1. and an > older > > >> iMac > > >>> running 10.15.7. The problem occurs with both machines. > > >>> > > >>> When I install from the CRAN archive file Rmpfr_0.6-1.tar.gz (the > > >> version > > >>> of the package around 2017, corresponding to the last time I used it) > > the > > >>> problem goes away. > > >>> > > >>> [[alternative HTML version deleted]] > > >>> > > >>> _______________________________________________ > > >>> R-SIG-Mac mailing list > > >>> R-SIG-Mac@r-project.org > > >>> > > >> > > > https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fr-sig-mac&data=04%7C01%7Crmh%40temple.edu%7C3aabc743f322409d6fa308d9b259a7bb%7C716e81efb52244738e3110bd02ccf6e5%7C0%7C0%7C637736920545174898%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000&sdata=pNPM8x8q1%2BQxq4QevSbfjlcO44vDVEyUvsRlfDBfgBo%3D&reserved=0 > > >> > > >> _______________________________________________ > > >> R-SIG-Mac mailing list > > >> R-SIG-Mac@r-project.org > > >> https://stat.ethz.ch/mailman/listinfo/r-sig-mac > > >> > > > > > > [[alternative HTML version deleted]] > > > > > > _______________________________________________ > > > R-SIG-Mac mailing list > > > R-SIG-Mac@r-project.org > > > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > > > > > > > > > [[alternative HTML version deleted]] > > _______________________________________________ > R-SIG-Mac mailing list > R-SIG-Mac@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > -- Adrian Dusa University of Bucharest Romanian Social Data Archive Soseaua Panduri nr. 90-92 050663 Bucharest sector 5 Romania https://adriandusa.eu [[alternative HTML version deleted]] _______________________________________________ R-SIG-Mac mailing list R-SIG-Mac@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-mac