From b631bab564b2d42398bc766b8d0be8496dd46526 Mon Sep 17 00:00:00 2001 From: Taiki Endo Date: Sun, 15 Sep 2024 09:07:56 +0900 Subject: [PATCH] specs: Set max-atomic-width to 16 --- avr-specs/avr-atmega1280.json | 2 +- avr-specs/avr-atmega1284p.json | 2 +- avr-specs/avr-atmega128a.json | 2 +- avr-specs/avr-atmega164pa.json | 2 +- avr-specs/avr-atmega168.json | 2 +- avr-specs/avr-atmega2560.json | 2 +- avr-specs/avr-atmega328.json | 2 +- avr-specs/avr-atmega328p.json | 2 +- avr-specs/avr-atmega32a.json | 2 +- avr-specs/avr-atmega32u4.json | 2 +- avr-specs/avr-atmega48p.json | 2 +- avr-specs/avr-atmega8.json | 2 +- avr-specs/avr-attiny167.json | 2 +- avr-specs/avr-attiny2313.json | 2 +- avr-specs/avr-attiny85.json | 2 +- avr-specs/avr-attiny88.json | 2 +- avr-specs/sync-from-upstream.py | 4 +++- 17 files changed, 19 insertions(+), 17 deletions(-) diff --git a/avr-specs/avr-atmega1280.json b/avr-specs/avr-atmega1280.json index 1791c43f48..89658ca521 100644 --- a/avr-specs/avr-atmega1280.json +++ b/avr-specs/avr-atmega1280.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega1284p.json b/avr-specs/avr-atmega1284p.json index 38c916259f..f5b9463b9e 100644 --- a/avr-specs/avr-atmega1284p.json +++ b/avr-specs/avr-atmega1284p.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega128a.json b/avr-specs/avr-atmega128a.json index 2707faba03..d10ddd0890 100644 --- a/avr-specs/avr-atmega128a.json +++ b/avr-specs/avr-atmega128a.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega164pa.json b/avr-specs/avr-atmega164pa.json index 256a2222e6..62451e4d30 100644 --- a/avr-specs/avr-atmega164pa.json +++ b/avr-specs/avr-atmega164pa.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega168.json b/avr-specs/avr-atmega168.json index 7fbd579a7b..ccb1852054 100644 --- a/avr-specs/avr-atmega168.json +++ b/avr-specs/avr-atmega168.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega2560.json b/avr-specs/avr-atmega2560.json index 252b54f16a..24bac441f9 100644 --- a/avr-specs/avr-atmega2560.json +++ b/avr-specs/avr-atmega2560.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega328.json b/avr-specs/avr-atmega328.json index 77c64f366c..3ef0fe358e 100644 --- a/avr-specs/avr-atmega328.json +++ b/avr-specs/avr-atmega328.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega328p.json b/avr-specs/avr-atmega328p.json index 461daa7a67..8aed0ed770 100644 --- a/avr-specs/avr-atmega328p.json +++ b/avr-specs/avr-atmega328p.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega32a.json b/avr-specs/avr-atmega32a.json index 9ffda7dbdd..c19a5c6735 100644 --- a/avr-specs/avr-atmega32a.json +++ b/avr-specs/avr-atmega32a.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega32u4.json b/avr-specs/avr-atmega32u4.json index a1632146b1..e16021d099 100644 --- a/avr-specs/avr-atmega32u4.json +++ b/avr-specs/avr-atmega32u4.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega48p.json b/avr-specs/avr-atmega48p.json index 508677e347..f9150a5c86 100644 --- a/avr-specs/avr-atmega48p.json +++ b/avr-specs/avr-atmega48p.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-atmega8.json b/avr-specs/avr-atmega8.json index b2c0c5cf08..8df819e0fb 100644 --- a/avr-specs/avr-atmega8.json +++ b/avr-specs/avr-atmega8.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-attiny167.json b/avr-specs/avr-attiny167.json index 3cbdbe47d1..569cf4f3d1 100644 --- a/avr-specs/avr-attiny167.json +++ b/avr-specs/avr-attiny167.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-attiny2313.json b/avr-specs/avr-attiny2313.json index aa8fffb4d5..8e98d9d703 100644 --- a/avr-specs/avr-attiny2313.json +++ b/avr-specs/avr-attiny2313.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-attiny85.json b/avr-specs/avr-attiny85.json index d5334aa5de..a611d02e06 100644 --- a/avr-specs/avr-attiny85.json +++ b/avr-specs/avr-attiny85.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/avr-attiny88.json b/avr-specs/avr-attiny88.json index 1af5e8d338..1973c227d4 100644 --- a/avr-specs/avr-attiny88.json +++ b/avr-specs/avr-attiny88.json @@ -17,7 +17,7 @@ "linker": "avr-gcc", "linker-flavor": "gnu-cc", "llvm-target": "avr-unknown-unknown", - "max-atomic-width": 8, + "max-atomic-width": 16, "metadata": { "description": null, "host_tools": null, diff --git a/avr-specs/sync-from-upstream.py b/avr-specs/sync-from-upstream.py index 62a6c5fea6..8c846626ee 100755 --- a/avr-specs/sync-from-upstream.py +++ b/avr-specs/sync-from-upstream.py @@ -58,7 +58,9 @@ # needed because we currently rely on avr-libc "no-default-libraries": False, # 8-bit operations on AVR are atomic - "max-atomic-width": 8, + # LLVM also supports 16-bit atomics by disabling interrupts + # see also https://github.com/rust-lang/rust/pull/114495 + "max-atomic-width": 16, }