linker: add iterable section macros

For iterable areas defined with Z_STRUCT_SECTION_ITERABLE(),
the corresponding output section in the linker script is just
boilerplate. Add macros to make these definitions simpler.

Unfortunately, we have a fair number of iterable sections not
defined with Z_STRUCT_SECTION_ITERABLE(), this patch does not
address this.

The output sections are all named <struct name>_area, update
sanitylib.py with this.

sys_sem with no userspace, and k_lifo/k_fifo are special cases
where different data types that are all equivalent need to be
put in the same iterable area. Add
Z_STRUCT_SECTION_ITERABLE_ALTERNATE() for this special case.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
diff --git a/scripts/sanity_chk/sanitylib.py b/scripts/sanity_chk/sanitylib.py
index a083c34..4e57633 100644
--- a/scripts/sanity_chk/sanitylib.py
+++ b/scripts/sanity_chk/sanitylib.py
@@ -932,24 +932,24 @@
         "initlevel",
         "exceptions",
         "initshell",
-        "_static_thread_area",
-        "_k_timer_area",
-        "_k_mem_slab_area",
-        "_k_mem_pool_area",
+        "_static_thread_data_area",
+        "k_timer_area",
+        "k_mem_slab_area",
+        "k_mem_pool_area",
         "sw_isr_table",
-        "_k_sem_area",
-        "_k_mutex_area",
+        "k_sem_area",
+        "k_mutex_area",
         "app_shmem_regions",
         "_k_fifo_area",
         "_k_lifo_area",
-        "_k_stack_area",
-        "_k_msgq_area",
-        "_k_mbox_area",
-        "_k_pipe_area",
+        "k_stack_area",
+        "k_msgq_area",
+        "k_mbox_area",
+        "k_pipe_area",
         "net_if",
         "net_if_dev",
         "net_l2_data",
-        "_k_queue_area",
+        "k_queue_area",
         "_net_buf_pool_area",
         "app_datas",
         "kobject_data",
@@ -980,19 +980,21 @@
         "ctors",
         "init_array",
         "reset",
-        "object_access",
+        "z_object_assignment_area",
         "rodata",
         "devconfig",
         "net_l2",
         "vector",
         "sw_isr_table",
-        "_settings_handlers_area",
-        "_bt_channels_area",
-        "_bt_br_channels_area",
-        "_bt_services_area",
+        "settings_handler_static_area",
+        "bt_l2cap_fixed_chan",
+        "bt_l2cap_br_fixec_chan",
+        "bt_gatt_service_static",
         "vectors",
-        "net_socket_register",
-        "net_ppp_proto"
+        "net_socket_register_area",
+        "net_ppp_proto",
+        "shell_area",
+        "tracing_backend_area",
     ]
 
     def __init__(self, filename, extra_sections):