Files
SLS/Software/build/stm32f0xx_hal_exti.lst

1585 lines
91 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ARM GAS /tmp/ccFacv4Y.s page 1
1 .cpu cortex-m0
2 .arch armv6s-m
3 .fpu softvfp
4 .eabi_attribute 20, 1
5 .eabi_attribute 21, 1
6 .eabi_attribute 23, 3
7 .eabi_attribute 24, 1
8 .eabi_attribute 25, 1
9 .eabi_attribute 26, 1
10 .eabi_attribute 30, 1
11 .eabi_attribute 34, 0
12 .eabi_attribute 18, 4
13 .file "stm32f0xx_hal_exti.c"
14 .text
15 .Ltext0:
16 .cfi_sections .debug_frame
17 .file 1 "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c"
18 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits
19 .align 1
20 .global HAL_EXTI_SetConfigLine
21 .syntax unified
22 .code 16
23 .thumb_func
25 HAL_EXTI_SetConfigLine:
26 .LVL0:
27 .LFB40:
1:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
2:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
3:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @file stm32f0xx_hal_exti.c
4:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @author MCD Application Team
5:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief EXTI HAL module driver.
6:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * functionalities of the Extended Interrupts and events controller (EXTI) peripheral:
8:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * + IO operation functions
10:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
11:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
12:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @attention
13:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
14:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * Copyright (c) 2019 STMicroelectronics.
15:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * All rights reserved.
16:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
17:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This software is licensed under terms that can be found in the LICENSE file
18:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * in the root directory of this software component.
19:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
20:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
21:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
22:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
23:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
24:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### EXTI Peripheral features #####
25:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
26:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** [..]
27:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Each Exti line can be configured within this driver.
28:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
29:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Exti line can be configured in 3 different modes
30:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Interrupt
31:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Event
ARM GAS /tmp/ccFacv4Y.s page 2
32:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Both of them
33:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
34:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Configurable Exti lines can be configured with 3 different triggers
35:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Rising
36:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Falling
37:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Both of them
38:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
39:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) When set in interrupt mode, configurable Exti lines have two different
40:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** interrupts pending registers which allow to distinguish which transition
41:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** occurs:
42:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Rising edge pending interrupt
43:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Falling
44:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
45:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can
46:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** be selected through multiplexer.
47:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
48:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### How to use this driver #####
49:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
50:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** [..]
51:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
52:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Configure the EXTI line using HAL_EXTI_SetConfigLine().
53:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Choose the interrupt line number by setting "Line" member from
54:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
55:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Configure the interrupt and/or event mode using "Mode" member from
56:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
57:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) For configurable lines, configure rising and/or falling trigger
58:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** "Trigger" member from EXTI_ConfigTypeDef structure.
59:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel"
60:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** member from GPIO_InitTypeDef structure.
61:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
62:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Get current Exti configuration of a dedicated line using
63:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_EXTI_GetConfigLine().
64:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as parameter.
65:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter.
66:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
67:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine().
68:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as parameter.
69:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
70:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback().
71:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as first parameter.
72:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide which callback will be registered using one value from
73:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_CallbackIDTypeDef.
74:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide callback function pointer.
75:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
76:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Get interrupt pending bit using HAL_EXTI_GetPending().
77:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
78:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Clear interrupt pending bit using HAL_EXTI_GetPending().
79:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
80:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Generate software interrupt using HAL_EXTI_GenerateSWI().
81:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
82:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
83:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
84:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
85:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Includes ------------------------------------------------------------------*/
86:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** #include "stm32f0xx_hal.h"
87:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
88:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup STM32F0xx_HAL_Driver
ARM GAS /tmp/ccFacv4Y.s page 3
89:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
90:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
91:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
92:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI
93:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
94:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
95:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** MISRA C:2012 deviation rule has been granted for following rule:
96:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out
97:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * of bounds [0,3] in following API :
98:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_SetConfigLine
99:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_GetConfigLine
100:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_ClearConfigLine
101:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
102:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
103:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** #ifdef HAL_EXTI_MODULE_ENABLED
104:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
105:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private typedef -----------------------------------------------------------*/
106:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private defines -----------------------------------------------------------*/
107:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @defgroup EXTI_Private_Constants EXTI Private Constants
108:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
109:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
110:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
111:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
112:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @}
113:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
114:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
115:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private macros ------------------------------------------------------------*/
116:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private variables ---------------------------------------------------------*/
117:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private function prototypes -----------------------------------------------*/
118:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Exported functions --------------------------------------------------------*/
119:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
120:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions
121:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
122:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
123:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
124:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group1
125:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Configuration functions
126:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
127:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
128:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
129:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### Configuration functions #####
130:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
131:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
132:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
133:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
134:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
135:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
136:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
137:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Set configuration of a dedicated Exti line.
138:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
139:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pExtiConfig Pointer on EXTI configuration to be set.
140:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
141:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
142:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
143:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
28 .loc 1 143 1 view -0
29 .cfi_startproc
ARM GAS /tmp/ccFacv4Y.s page 4
30 @ args = 0, pretend = 0, frame = 0
31 @ frame_needed = 0, uses_anonymous_args = 0
32 .loc 1 143 1 is_stmt 0 view .LVU1
33 0000 70B5 push {r4, r5, r6, lr}
34 .cfi_def_cfa_offset 16
35 .cfi_offset 4, -16
36 .cfi_offset 5, -12
37 .cfi_offset 6, -8
38 .cfi_offset 14, -4
144:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
39 .loc 1 144 3 is_stmt 1 view .LVU2
145:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
40 .loc 1 145 3 view .LVU3
146:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
41 .loc 1 146 3 view .LVU4
147:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
148:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
149:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
42 .loc 1 149 3 view .LVU5
43 .loc 1 149 6 is_stmt 0 view .LVU6
44 0002 0028 cmp r0, #0
45 0004 53D0 beq .L11
46 .loc 1 149 23 discriminator 1 view .LVU7
47 0006 0029 cmp r1, #0
48 0008 53D0 beq .L12
150:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
152:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
153:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
154:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
155:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(pExtiConfig->Line));
49 .loc 1 155 3 is_stmt 1 view .LVU8
156:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode));
50 .loc 1 156 3 view .LVU9
157:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
158:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Assign line number to handle */
159:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->Line = pExtiConfig->Line;
51 .loc 1 159 3 view .LVU10
52 .loc 1 159 28 is_stmt 0 view .LVU11
53 000a 0C68 ldr r4, [r1]
54 .loc 1 159 15 view .LVU12
55 000c 0460 str r4, [r0]
160:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
161:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
162:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
56 .loc 1 162 3 is_stmt 1 view .LVU13
57 .loc 1 162 11 is_stmt 0 view .LVU14
58 000e 1F23 movs r3, #31
59 0010 2340 ands r3, r4
60 .LVL1:
163:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
61 .loc 1 163 3 is_stmt 1 view .LVU15
62 .loc 1 163 12 is_stmt 0 view .LVU16
63 0012 0122 movs r2, #1
64 0014 9A40 lsls r2, r2, r3
65 .LVL2:
164:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
ARM GAS /tmp/ccFacv4Y.s page 5
165:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure triggers for configurable lines */
166:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
66 .loc 1 166 3 is_stmt 1 view .LVU17
67 .loc 1 166 6 is_stmt 0 view .LVU18
68 0016 A001 lsls r0, r4, #6
69 0018 13D5 bpl .L3
70 .LVL3:
167:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
168:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger));
71 .loc 1 168 5 is_stmt 1 view .LVU19
169:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
170:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure rising trigger */
171:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u)
72 .loc 1 172 5 view .LVU20
73 .loc 1 172 21 is_stmt 0 view .LVU21
74 001a 8868 ldr r0, [r1, #8]
75 .loc 1 172 8 view .LVU22
76 001c C007 lsls r0, r0, #31
77 001e 20D5 bpl .L4
173:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
174:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR |= maskline;
78 .loc 1 174 7 is_stmt 1 view .LVU23
79 .loc 1 174 11 is_stmt 0 view .LVU24
80 0020 254D ldr r5, .L15
81 0022 A868 ldr r0, [r5, #8]
82 .loc 1 174 18 view .LVU25
83 0024 1043 orrs r0, r2
84 0026 A860 str r0, [r5, #8]
85 .L5:
175:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
176:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
177:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR &= ~maskline;
179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
180:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
181:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure falling trigger */
182:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
183:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u)
86 .loc 1 183 5 is_stmt 1 view .LVU26
87 .loc 1 183 21 is_stmt 0 view .LVU27
88 0028 8868 ldr r0, [r1, #8]
89 .loc 1 183 8 view .LVU28
90 002a 8007 lsls r0, r0, #30
91 002c 1ED5 bpl .L6
184:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR |= maskline;
92 .loc 1 185 7 is_stmt 1 view .LVU29
93 .loc 1 185 11 is_stmt 0 view .LVU30
94 002e 224D ldr r5, .L15
95 0030 E868 ldr r0, [r5, #12]
96 .loc 1 185 18 view .LVU31
97 0032 1043 orrs r0, r2
98 0034 E860 str r0, [r5, #12]
99 .L7:
186:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
187:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
ARM GAS /tmp/ccFacv4Y.s page 6
188:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR &= ~maskline;
190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
191:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
192:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
193:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure gpio port selection in case of gpio exti line */
194:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
100 .loc 1 194 5 is_stmt 1 view .LVU32
101 .loc 1 194 21 is_stmt 0 view .LVU33
102 0036 0868 ldr r0, [r1]
103 .loc 1 194 28 view .LVU34
104 0038 C025 movs r5, #192
105 003a ED04 lsls r5, r5, #19
106 003c 2840 ands r0, r5
107 .loc 1 194 8 view .LVU35
108 003e A842 cmp r0, r5
109 0040 19D0 beq .L14
110 .LVL4:
111 .L3:
195:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
196:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel));
197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
198:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
204:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
205:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
206:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure interrupt mode : read current mode */
207:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u)
112 .loc 1 208 3 is_stmt 1 view .LVU36
113 .loc 1 208 19 is_stmt 0 view .LVU37
114 0042 4B68 ldr r3, [r1, #4]
115 .loc 1 208 6 view .LVU38
116 0044 DB07 lsls r3, r3, #31
117 0046 27D5 bpl .L8
209:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
210:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR |= maskline;
118 .loc 1 210 5 is_stmt 1 view .LVU39
119 .loc 1 210 9 is_stmt 0 view .LVU40
120 0048 1B48 ldr r0, .L15
121 004a 0368 ldr r3, [r0]
122 .loc 1 210 15 view .LVU41
123 004c 1343 orrs r3, r2
124 004e 0360 str r3, [r0]
125 .L9:
211:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
212:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
213:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR &= ~maskline;
215:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
216:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
217:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure event mode : read current mode */
218:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
ARM GAS /tmp/ccFacv4Y.s page 7
219:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u)
126 .loc 1 219 3 is_stmt 1 view .LVU42
127 .loc 1 219 19 is_stmt 0 view .LVU43
128 0050 4B68 ldr r3, [r1, #4]
129 .loc 1 219 6 view .LVU44
130 0052 9B07 lsls r3, r3, #30
131 0054 25D5 bpl .L10
220:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
221:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR |= maskline;
132 .loc 1 221 5 is_stmt 1 view .LVU45
133 .loc 1 221 9 is_stmt 0 view .LVU46
134 0056 1849 ldr r1, .L15
135 .LVL5:
136 .loc 1 221 9 view .LVU47
137 0058 4B68 ldr r3, [r1, #4]
138 .loc 1 221 15 view .LVU48
139 005a 1343 orrs r3, r2
140 005c 4B60 str r3, [r1, #4]
222:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
223:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
224:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR &= ~maskline;
226:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
227:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
228:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
141 .loc 1 228 10 view .LVU49
142 005e 0020 movs r0, #0
143 .LVL6:
144 .L2:
229:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
145 .loc 1 229 1 view .LVU50
146 @ sp needed
147 0060 70BD pop {r4, r5, r6, pc}
148 .LVL7:
149 .L4:
178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
150 .loc 1 178 7 is_stmt 1 view .LVU51
178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
151 .loc 1 178 11 is_stmt 0 view .LVU52
152 0062 154D ldr r5, .L15
153 0064 A868 ldr r0, [r5, #8]
178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
154 .loc 1 178 18 view .LVU53
155 0066 9043 bics r0, r2
156 0068 A860 str r0, [r5, #8]
157 006a DDE7 b .L5
158 .L6:
189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
159 .loc 1 189 7 is_stmt 1 view .LVU54
189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
160 .loc 1 189 11 is_stmt 0 view .LVU55
161 006c 124D ldr r5, .L15
162 006e E868 ldr r0, [r5, #12]
189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
163 .loc 1 189 18 view .LVU56
164 0070 9043 bics r0, r2
165 0072 E860 str r0, [r5, #12]
ARM GAS /tmp/ccFacv4Y.s page 8
166 0074 DFE7 b .L7
167 .L14:
196:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
168 .loc 1 196 7 is_stmt 1 view .LVU57
197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
169 .loc 1 197 7 view .LVU58
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
170 .loc 1 199 7 view .LVU59
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
171 .loc 1 199 39 is_stmt 0 view .LVU60
172 0076 9B08 lsrs r3, r3, #2
173 .LVL8:
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
174 .loc 1 199 14 view .LVU61
175 0078 104D ldr r5, .L15+4
176 007a 0233 adds r3, r3, #2
177 007c 9B00 lsls r3, r3, #2
178 007e 5E59 ldr r6, [r3, r5]
179 .LVL9:
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
180 .loc 1 200 7 is_stmt 1 view .LVU62
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
181 .loc 1 200 80 is_stmt 0 view .LVU63
182 0080 0320 movs r0, #3
183 0082 2040 ands r0, r4
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
184 .loc 1 200 69 view .LVU64
185 0084 8000 lsls r0, r0, #2
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
186 .loc 1 200 40 view .LVU65
187 0086 0F24 movs r4, #15
188 .LVL10:
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
189 .loc 1 200 40 view .LVU66
190 0088 8440 lsls r4, r4, r0
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
191 .loc 1 200 14 view .LVU67
192 008a A643 bics r6, r4
193 .LVL11:
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
194 .loc 1 201 7 is_stmt 1 view .LVU68
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
195 .loc 1 201 29 is_stmt 0 view .LVU69
196 008c CC68 ldr r4, [r1, #12]
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
197 .loc 1 201 39 view .LVU70
198 008e 8440 lsls r4, r4, r0
199 0090 2000 movs r0, r4
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
200 .loc 1 201 14 view .LVU71
201 0092 3043 orrs r0, r6
202 .LVL12:
202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
203 .loc 1 202 7 is_stmt 1 view .LVU72
202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
204 .loc 1 202 37 is_stmt 0 view .LVU73
205 0094 5851 str r0, [r3, r5]
ARM GAS /tmp/ccFacv4Y.s page 9
206 0096 D4E7 b .L3
207 .LVL13:
208 .L8:
214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
209 .loc 1 214 5 is_stmt 1 view .LVU74
214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
210 .loc 1 214 9 is_stmt 0 view .LVU75
211 0098 0748 ldr r0, .L15
212 009a 0368 ldr r3, [r0]
214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
213 .loc 1 214 15 view .LVU76
214 009c 9343 bics r3, r2
215 009e 0360 str r3, [r0]
216 00a0 D6E7 b .L9
217 .L10:
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
218 .loc 1 225 5 is_stmt 1 view .LVU77
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
219 .loc 1 225 9 is_stmt 0 view .LVU78
220 00a2 0549 ldr r1, .L15
221 .LVL14:
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
222 .loc 1 225 9 view .LVU79
223 00a4 4B68 ldr r3, [r1, #4]
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
224 .loc 1 225 15 view .LVU80
225 00a6 9343 bics r3, r2
226 00a8 4B60 str r3, [r1, #4]
228:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
227 .loc 1 228 10 view .LVU81
228 00aa 0020 movs r0, #0
229 00ac D8E7 b .L2
230 .LVL15:
231 .L11:
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
232 .loc 1 151 12 view .LVU82
233 00ae 0120 movs r0, #1
234 .LVL16:
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
235 .loc 1 151 12 view .LVU83
236 00b0 D6E7 b .L2
237 .LVL17:
238 .L12:
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
239 .loc 1 151 12 view .LVU84
240 00b2 0120 movs r0, #1
241 .LVL18:
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
242 .loc 1 151 12 view .LVU85
243 00b4 D4E7 b .L2
244 .L16:
245 00b6 C046 .align 2
246 .L15:
247 00b8 00040140 .word 1073808384
248 00bc 00000140 .word 1073807360
249 .cfi_endproc
250 .LFE40:
ARM GAS /tmp/ccFacv4Y.s page 10
252 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits
253 .align 1
254 .global HAL_EXTI_GetConfigLine
255 .syntax unified
256 .code 16
257 .thumb_func
259 HAL_EXTI_GetConfigLine:
260 .LVL19:
261 .LFB41:
230:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
231:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
232:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Get configuration of a dedicated Exti line.
233:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
234:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pExtiConfig Pointer on structure to store Exti configuration.
235:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
236:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
237:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
238:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
262 .loc 1 238 1 is_stmt 1 view -0
263 .cfi_startproc
264 @ args = 0, pretend = 0, frame = 0
265 @ frame_needed = 0, uses_anonymous_args = 0
266 .loc 1 238 1 is_stmt 0 view .LVU87
267 0000 30B5 push {r4, r5, lr}
268 .cfi_def_cfa_offset 12
269 .cfi_offset 4, -12
270 .cfi_offset 5, -8
271 .cfi_offset 14, -4
239:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
272 .loc 1 239 3 is_stmt 1 view .LVU88
240:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
273 .loc 1 240 3 view .LVU89
241:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
274 .loc 1 241 3 view .LVU90
242:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
243:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
244:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
275 .loc 1 244 3 view .LVU91
276 .loc 1 244 6 is_stmt 0 view .LVU92
277 0002 0028 cmp r0, #0
278 0004 41D0 beq .L24
279 .loc 1 244 23 discriminator 1 view .LVU93
280 0006 0029 cmp r1, #0
281 0008 41D0 beq .L25
245:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
247:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
248:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
249:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameter */
250:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
282 .loc 1 250 3 is_stmt 1 view .LVU94
251:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
252:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Store handle line number to configuration structure */
253:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Line = hexti->Line;
283 .loc 1 253 3 view .LVU95
284 .loc 1 253 28 is_stmt 0 view .LVU96
285 000a 0268 ldr r2, [r0]
ARM GAS /tmp/ccFacv4Y.s page 11
286 .loc 1 253 21 view .LVU97
287 000c 0A60 str r2, [r1]
254:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
255:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
256:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
288 .loc 1 256 3 is_stmt 1 view .LVU98
289 .loc 1 256 11 is_stmt 0 view .LVU99
290 000e 1F24 movs r4, #31
291 0010 1440 ands r4, r2
292 .LVL20:
257:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
293 .loc 1 257 3 is_stmt 1 view .LVU100
294 .loc 1 257 12 is_stmt 0 view .LVU101
295 0012 0123 movs r3, #1
296 0014 A340 lsls r3, r3, r4
297 .LVL21:
258:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
259:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 1] Get core mode : interrupt */
260:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
261:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if selected line is enable */
262:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->IMR & maskline) != 0x00u)
298 .loc 1 262 3 is_stmt 1 view .LVU102
299 .loc 1 262 12 is_stmt 0 view .LVU103
300 0016 2048 ldr r0, .L29
301 .LVL22:
302 .loc 1 262 12 view .LVU104
303 0018 0068 ldr r0, [r0]
304 .loc 1 262 6 view .LVU105
305 001a 0342 tst r3, r0
306 001c 24D0 beq .L19
263:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
264:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_INTERRUPT;
307 .loc 1 264 5 is_stmt 1 view .LVU106
308 .loc 1 264 23 is_stmt 0 view .LVU107
309 001e 0120 movs r0, #1
310 0020 4860 str r0, [r1, #4]
311 .L20:
265:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
266:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
267:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_NONE;
269:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
270:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
271:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get event mode */
272:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if selected line is enable */
273:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->EMR & maskline) != 0x00u)
312 .loc 1 273 3 is_stmt 1 view .LVU108
313 .loc 1 273 12 is_stmt 0 view .LVU109
314 0022 1D48 ldr r0, .L29
315 0024 4068 ldr r0, [r0, #4]
316 .loc 1 273 6 view .LVU110
317 0026 0342 tst r3, r0
318 0028 03D0 beq .L21
274:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
275:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode |= EXTI_MODE_EVENT;
319 .loc 1 275 5 is_stmt 1 view .LVU111
320 .loc 1 275 16 is_stmt 0 view .LVU112
ARM GAS /tmp/ccFacv4Y.s page 12
321 002a 4868 ldr r0, [r1, #4]
322 .loc 1 275 23 view .LVU113
323 002c 0225 movs r5, #2
324 002e 2843 orrs r0, r5
325 0030 4860 str r0, [r1, #4]
326 .L21:
276:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
277:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
278:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get default Trigger and GPIOSel configuration */
279:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
327 .loc 1 279 3 is_stmt 1 view .LVU114
328 .loc 1 279 24 is_stmt 0 view .LVU115
329 0032 0020 movs r0, #0
330 0034 8860 str r0, [r1, #8]
280:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
331 .loc 1 280 3 is_stmt 1 view .LVU116
332 .loc 1 280 24 is_stmt 0 view .LVU117
333 0036 C860 str r0, [r1, #12]
281:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
282:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 2] Get trigger for configurable lines : rising */
283:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
334 .loc 1 283 3 is_stmt 1 view .LVU118
335 .loc 1 283 6 is_stmt 0 view .LVU119
336 0038 9001 lsls r0, r2, #6
337 003a 2AD5 bpl .L26
284:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
285:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if configuration of selected line is enable */
286:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->RTSR & maskline) != 0x00u)
338 .loc 1 286 5 is_stmt 1 view .LVU120
339 .loc 1 286 14 is_stmt 0 view .LVU121
340 003c 1648 ldr r0, .L29
341 003e 8068 ldr r0, [r0, #8]
342 .loc 1 286 8 view .LVU122
343 0040 0342 tst r3, r0
344 0042 01D0 beq .L22
287:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
288:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_RISING;
345 .loc 1 288 7 is_stmt 1 view .LVU123
346 .loc 1 288 28 is_stmt 0 view .LVU124
347 0044 0120 movs r0, #1
348 0046 8860 str r0, [r1, #8]
349 .L22:
289:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
290:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
291:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get falling configuration */
292:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if configuration of selected line is enable */
293:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->FTSR & maskline) != 0x00u)
350 .loc 1 293 5 is_stmt 1 view .LVU125
351 .loc 1 293 14 is_stmt 0 view .LVU126
352 0048 1348 ldr r0, .L29
353 004a C068 ldr r0, [r0, #12]
354 .loc 1 293 8 view .LVU127
355 004c 0342 tst r3, r0
356 004e 03D0 beq .L23
294:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
295:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING;
357 .loc 1 295 7 is_stmt 1 view .LVU128
ARM GAS /tmp/ccFacv4Y.s page 13
358 .loc 1 295 18 is_stmt 0 view .LVU129
359 0050 8B68 ldr r3, [r1, #8]
360 .LVL23:
361 .loc 1 295 28 view .LVU130
362 0052 0220 movs r0, #2
363 0054 0343 orrs r3, r0
364 0056 8B60 str r3, [r1, #8]
365 .L23:
296:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
297:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
298:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
299:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
366 .loc 1 299 5 is_stmt 1 view .LVU131
367 .loc 1 299 28 is_stmt 0 view .LVU132
368 0058 C023 movs r3, #192
369 005a DB04 lsls r3, r3, #19
370 005c 1000 movs r0, r2
371 005e 1840 ands r0, r3
372 .loc 1 299 8 view .LVU133
373 0060 9842 cmp r0, r3
374 0062 04D0 beq .L28
300:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
301:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
302:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
305:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
306:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
307:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
308:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
375 .loc 1 308 10 view .LVU134
376 0064 0020 movs r0, #0
377 0066 15E0 b .L18
378 .LVL24:
379 .L19:
268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
380 .loc 1 268 5 is_stmt 1 view .LVU135
268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
381 .loc 1 268 23 is_stmt 0 view .LVU136
382 0068 0020 movs r0, #0
383 006a 4860 str r0, [r1, #4]
384 006c D9E7 b .L20
385 .LVL25:
386 .L28:
301:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
387 .loc 1 301 7 is_stmt 1 view .LVU137
303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
388 .loc 1 303 7 view .LVU138
303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
389 .loc 1 303 39 is_stmt 0 view .LVU139
390 006e A308 lsrs r3, r4, #2
303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
391 .loc 1 303 14 view .LVU140
392 0070 0233 adds r3, r3, #2
393 0072 9B00 lsls r3, r3, #2
394 0074 0948 ldr r0, .L29+4
395 0076 1858 ldr r0, [r3, r0]
ARM GAS /tmp/ccFacv4Y.s page 14
396 .LVL26:
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
397 .loc 1 304 7 is_stmt 1 view .LVU141
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
398 .loc 1 304 78 is_stmt 0 view .LVU142
399 0078 0323 movs r3, #3
400 007a 1340 ands r3, r2
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
401 .loc 1 304 67 view .LVU143
402 007c 9B00 lsls r3, r3, #2
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
403 .loc 1 304 38 view .LVU144
404 007e D840 lsrs r0, r0, r3
405 .LVL27:
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
406 .loc 1 304 89 view .LVU145
407 0080 0F23 movs r3, #15
408 0082 0340 ands r3, r0
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
409 .loc 1 304 28 view .LVU146
410 0084 CB60 str r3, [r1, #12]
411 .loc 1 308 10 view .LVU147
412 0086 0020 movs r0, #0
413 0088 04E0 b .L18
414 .LVL28:
415 .L24:
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
416 .loc 1 246 12 view .LVU148
417 008a 0120 movs r0, #1
418 .LVL29:
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
419 .loc 1 246 12 view .LVU149
420 008c 02E0 b .L18
421 .LVL30:
422 .L25:
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
423 .loc 1 246 12 view .LVU150
424 008e 0120 movs r0, #1
425 .LVL31:
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
426 .loc 1 246 12 view .LVU151
427 0090 00E0 b .L18
428 .LVL32:
429 .L26:
430 .loc 1 308 10 view .LVU152
431 0092 0020 movs r0, #0
432 .LVL33:
433 .L18:
309:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
434 .loc 1 309 1 view .LVU153
435 @ sp needed
436 0094 30BD pop {r4, r5, pc}
437 .L30:
438 0096 C046 .align 2
439 .L29:
440 0098 00040140 .word 1073808384
441 009c 00000140 .word 1073807360
ARM GAS /tmp/ccFacv4Y.s page 15
442 .cfi_endproc
443 .LFE41:
445 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits
446 .align 1
447 .global HAL_EXTI_ClearConfigLine
448 .syntax unified
449 .code 16
450 .thumb_func
452 HAL_EXTI_ClearConfigLine:
453 .LVL34:
454 .LFB42:
310:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
311:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
312:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Clear whole configuration of a dedicated Exti line.
313:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
314:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
316:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti)
317:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
455 .loc 1 317 1 is_stmt 1 view -0
456 .cfi_startproc
457 @ args = 0, pretend = 0, frame = 0
458 @ frame_needed = 0, uses_anonymous_args = 0
459 .loc 1 317 1 is_stmt 0 view .LVU155
460 0000 70B5 push {r4, r5, r6, lr}
461 .cfi_def_cfa_offset 16
462 .cfi_offset 4, -16
463 .cfi_offset 5, -12
464 .cfi_offset 6, -8
465 .cfi_offset 14, -4
318:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
466 .loc 1 318 3 is_stmt 1 view .LVU156
319:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
467 .loc 1 319 3 view .LVU157
320:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
468 .loc 1 320 3 view .LVU158
321:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
322:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
323:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti == NULL)
469 .loc 1 323 3 view .LVU159
470 .loc 1 323 6 is_stmt 0 view .LVU160
471 0002 0028 cmp r0, #0
472 0004 2CD0 beq .L33
324:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
326:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
327:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
328:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameter */
329:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
473 .loc 1 329 3 is_stmt 1 view .LVU161
330:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
331:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* compute line mask */
332:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
474 .loc 1 332 3 view .LVU162
475 .loc 1 332 19 is_stmt 0 view .LVU163
476 0006 0568 ldr r5, [r0]
477 .loc 1 332 11 view .LVU164
ARM GAS /tmp/ccFacv4Y.s page 16
478 0008 1F22 movs r2, #31
479 000a 2A40 ands r2, r5
480 .LVL35:
333:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
481 .loc 1 333 3 is_stmt 1 view .LVU165
482 .loc 1 333 12 is_stmt 0 view .LVU166
483 000c 0123 movs r3, #1
484 000e 9340 lsls r3, r3, r2
485 .LVL36:
334:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
335:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 1] Clear interrupt mode */
336:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR = (EXTI->IMR & ~maskline);
486 .loc 1 336 3 is_stmt 1 view .LVU167
487 .loc 1 336 20 is_stmt 0 view .LVU168
488 0010 1549 ldr r1, .L37
489 0012 0C68 ldr r4, [r1]
490 .loc 1 336 28 view .LVU169
491 0014 DE43 mvns r6, r3
492 .loc 1 336 26 view .LVU170
493 0016 9C43 bics r4, r3
494 .loc 1 336 13 view .LVU171
495 0018 0C60 str r4, [r1]
337:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
338:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 2] Clear event mode */
339:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR = (EXTI->EMR & ~maskline);
496 .loc 1 339 3 is_stmt 1 view .LVU172
497 .loc 1 339 20 is_stmt 0 view .LVU173
498 001a 4C68 ldr r4, [r1, #4]
499 .loc 1 339 26 view .LVU174
500 001c 9C43 bics r4, r3
501 .loc 1 339 13 view .LVU175
502 001e 4C60 str r4, [r1, #4]
340:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
341:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 3] Clear triggers in case of configurable lines */
342:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti->Line & EXTI_CONFIG) != 0x00u)
503 .loc 1 342 3 is_stmt 1 view .LVU176
504 .loc 1 342 13 is_stmt 0 view .LVU177
505 0020 0368 ldr r3, [r0]
506 .LVL37:
507 .loc 1 342 6 view .LVU178
508 0022 9B01 lsls r3, r3, #6
509 0024 1ED5 bpl .L34
343:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
344:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR = (EXTI->RTSR & ~maskline);
510 .loc 1 344 5 is_stmt 1 view .LVU179
511 .loc 1 344 23 is_stmt 0 view .LVU180
512 0026 0B00 movs r3, r1
513 0028 8968 ldr r1, [r1, #8]
514 .loc 1 344 30 view .LVU181
515 002a 3140 ands r1, r6
516 .loc 1 344 16 view .LVU182
517 002c 9960 str r1, [r3, #8]
345:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR = (EXTI->FTSR & ~maskline);
518 .loc 1 345 5 is_stmt 1 view .LVU183
519 .loc 1 345 23 is_stmt 0 view .LVU184
520 002e D968 ldr r1, [r3, #12]
521 .loc 1 345 30 view .LVU185
ARM GAS /tmp/ccFacv4Y.s page 17
522 0030 3140 ands r1, r6
523 .loc 1 345 16 view .LVU186
524 0032 D960 str r1, [r3, #12]
346:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
347:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
348:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO)
525 .loc 1 348 5 is_stmt 1 view .LVU187
526 .loc 1 348 15 is_stmt 0 view .LVU188
527 0034 0368 ldr r3, [r0]
528 .loc 1 348 22 view .LVU189
529 0036 C021 movs r1, #192
530 0038 C904 lsls r1, r1, #19
531 003a 0B40 ands r3, r1
532 .loc 1 348 8 view .LVU190
533 003c 8B42 cmp r3, r1
534 003e 01D0 beq .L36
349:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
350:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
351:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
355:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
356:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
357:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
358:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
535 .loc 1 358 10 view .LVU191
536 0040 0020 movs r0, #0
537 .LVL38:
538 .loc 1 358 10 view .LVU192
539 0042 10E0 b .L32
540 .LVL39:
541 .L36:
350:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
542 .loc 1 350 7 is_stmt 1 view .LVU193
352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
543 .loc 1 352 7 view .LVU194
352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
544 .loc 1 352 39 is_stmt 0 view .LVU195
545 0044 9208 lsrs r2, r2, #2
546 .LVL40:
352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
547 .loc 1 352 14 view .LVU196
548 0046 094C ldr r4, .L37+4
549 0048 0232 adds r2, r2, #2
550 004a 9200 lsls r2, r2, #2
551 004c 1159 ldr r1, [r2, r4]
552 .LVL41:
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
553 .loc 1 353 7 is_stmt 1 view .LVU197
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
554 .loc 1 353 80 is_stmt 0 view .LVU198
555 004e 0323 movs r3, #3
556 0050 2B40 ands r3, r5
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
557 .loc 1 353 69 view .LVU199
558 0052 9B00 lsls r3, r3, #2
ARM GAS /tmp/ccFacv4Y.s page 18
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
559 .loc 1 353 40 view .LVU200
560 0054 0F20 movs r0, #15
561 .LVL42:
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
562 .loc 1 353 40 view .LVU201
563 0056 9840 lsls r0, r0, r3
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
564 .loc 1 353 14 view .LVU202
565 0058 8143 bics r1, r0
566 .LVL43:
354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
567 .loc 1 354 7 is_stmt 1 view .LVU203
354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
568 .loc 1 354 37 is_stmt 0 view .LVU204
569 005a 1151 str r1, [r2, r4]
570 .loc 1 358 10 view .LVU205
571 005c 0020 movs r0, #0
572 005e 02E0 b .L32
573 .LVL44:
574 .L33:
325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
575 .loc 1 325 12 view .LVU206
576 0060 0120 movs r0, #1
577 .LVL45:
325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
578 .loc 1 325 12 view .LVU207
579 0062 00E0 b .L32
580 .LVL46:
581 .L34:
582 .loc 1 358 10 view .LVU208
583 0064 0020 movs r0, #0
584 .LVL47:
585 .L32:
359:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
586 .loc 1 359 1 view .LVU209
587 @ sp needed
588 0066 70BD pop {r4, r5, r6, pc}
589 .L38:
590 .align 2
591 .L37:
592 0068 00040140 .word 1073808384
593 006c 00000140 .word 1073807360
594 .cfi_endproc
595 .LFE42:
597 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits
598 .align 1
599 .global HAL_EXTI_RegisterCallback
600 .syntax unified
601 .code 16
602 .thumb_func
604 HAL_EXTI_RegisterCallback:
605 .LVL48:
606 .LFB43:
360:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
361:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
362:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Register callback for a dedicated Exti line.
ARM GAS /tmp/ccFacv4Y.s page 19
363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param CallbackID User callback identifier.
365:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values.
366:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pPendingCbfn function pointer to be stored as callback.
367:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
368:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
369:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef Callb
370:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
607 .loc 1 370 1 is_stmt 1 view -0
608 .cfi_startproc
609 @ args = 0, pretend = 0, frame = 0
610 @ frame_needed = 0, uses_anonymous_args = 0
611 @ link register save eliminated.
371:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
612 .loc 1 371 3 view .LVU211
372:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
373:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** switch (CallbackID)
613 .loc 1 373 3 view .LVU212
614 0000 0029 cmp r1, #0
615 0002 02D1 bne .L41
374:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
375:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** case HAL_EXTI_COMMON_CB_ID:
376:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->PendingCallback = pPendingCbfn;
616 .loc 1 376 7 view .LVU213
617 .loc 1 376 30 is_stmt 0 view .LVU214
618 0004 4260 str r2, [r0, #4]
377:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
619 .loc 1 377 7 is_stmt 1 view .LVU215
371:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
620 .loc 1 371 21 is_stmt 0 view .LVU216
621 0006 0800 movs r0, r1
622 .LVL49:
623 .L40:
378:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
379:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** default:
380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** status = HAL_ERROR;
381:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
382:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
383:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
384:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return status;
624 .loc 1 384 3 is_stmt 1 view .LVU217
385:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
625 .loc 1 385 1 is_stmt 0 view .LVU218
626 @ sp needed
627 0008 7047 bx lr
628 .LVL50:
629 .L41:
380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
630 .loc 1 380 14 view .LVU219
631 000a 0120 movs r0, #1
632 .LVL51:
380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
633 .loc 1 380 14 view .LVU220
634 000c FCE7 b .L40
635 .cfi_endproc
636 .LFE43:
638 .section .text.HAL_EXTI_GetHandle,"ax",%progbits
ARM GAS /tmp/ccFacv4Y.s page 20
639 .align 1
640 .global HAL_EXTI_GetHandle
641 .syntax unified
642 .code 16
643 .thumb_func
645 HAL_EXTI_GetHandle:
646 .LVL52:
647 .LFB44:
386:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
387:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
388:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Store line number as handle private field.
389:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
390:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param ExtiLine Exti line number.
391:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be from 0 to @ref EXTI_LINE_NB.
392:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
393:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
394:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine)
395:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
648 .loc 1 395 1 is_stmt 1 view -0
649 .cfi_startproc
650 @ args = 0, pretend = 0, frame = 0
651 @ frame_needed = 0, uses_anonymous_args = 0
652 @ link register save eliminated.
396:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameters */
397:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(ExtiLine));
653 .loc 1 397 3 view .LVU222
398:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
399:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
400:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti == NULL)
654 .loc 1 400 3 view .LVU223
655 .loc 1 400 6 is_stmt 0 view .LVU224
656 0000 0028 cmp r0, #0
657 0002 02D0 beq .L44
401:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
403:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
404:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
405:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
406:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Store line number as handle private field */
407:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->Line = ExtiLine;
658 .loc 1 407 5 is_stmt 1 view .LVU225
659 .loc 1 407 17 is_stmt 0 view .LVU226
660 0004 0160 str r1, [r0]
408:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
409:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
661 .loc 1 409 5 is_stmt 1 view .LVU227
662 .loc 1 409 12 is_stmt 0 view .LVU228
663 0006 0020 movs r0, #0
664 .LVL53:
665 .L43:
410:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
411:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
666 .loc 1 411 1 view .LVU229
667 @ sp needed
668 0008 7047 bx lr
669 .LVL54:
670 .L44:
ARM GAS /tmp/ccFacv4Y.s page 21
402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
671 .loc 1 402 12 view .LVU230
672 000a 0120 movs r0, #1
673 .LVL55:
402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
674 .loc 1 402 12 view .LVU231
675 000c FCE7 b .L43
676 .cfi_endproc
677 .LFE44:
679 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits
680 .align 1
681 .global HAL_EXTI_IRQHandler
682 .syntax unified
683 .code 16
684 .thumb_func
686 HAL_EXTI_IRQHandler:
687 .LVL56:
688 .LFB45:
412:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
413:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
414:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @}
415:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
416:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
417:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group2
418:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief EXTI IO functions.
419:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
420:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
421:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
422:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### IO operation functions #####
423:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
424:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
425:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
426:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
427:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
428:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
429:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
430:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Handle EXTI interrupt request.
431:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
432:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval none.
433:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
434:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti)
435:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
689 .loc 1 435 1 is_stmt 1 view -0
690 .cfi_startproc
691 @ args = 0, pretend = 0, frame = 0
692 @ frame_needed = 0, uses_anonymous_args = 0
693 .loc 1 435 1 is_stmt 0 view .LVU233
694 0000 10B5 push {r4, lr}
695 .cfi_def_cfa_offset 8
696 .cfi_offset 4, -8
697 .cfi_offset 14, -4
436:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
698 .loc 1 436 3 is_stmt 1 view .LVU234
437:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
699 .loc 1 437 3 view .LVU235
438:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
439:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
ARM GAS /tmp/ccFacv4Y.s page 22
440:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
700 .loc 1 440 3 view .LVU236
701 .loc 1 440 28 is_stmt 0 view .LVU237
702 0002 0368 ldr r3, [r0]
703 .loc 1 440 35 view .LVU238
704 0004 1F22 movs r2, #31
705 0006 1A40 ands r2, r3
706 .loc 1 440 12 view .LVU239
707 0008 0123 movs r3, #1
708 000a 9340 lsls r3, r3, r2
709 .LVL57:
441:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
442:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get pending bit */
443:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = (EXTI->PR & maskline);
710 .loc 1 443 3 is_stmt 1 view .LVU240
711 .loc 1 443 17 is_stmt 0 view .LVU241
712 000c 054A ldr r2, .L47
713 000e 5269 ldr r2, [r2, #20]
714 .LVL58:
444:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (regval != 0x00u)
715 .loc 1 444 3 is_stmt 1 view .LVU242
716 .loc 1 444 6 is_stmt 0 view .LVU243
717 0010 1342 tst r3, r2
718 0012 05D0 beq .L45
445:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
446:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Clear pending bit */
447:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->PR = maskline;
719 .loc 1 447 5 is_stmt 1 view .LVU244
720 .loc 1 447 14 is_stmt 0 view .LVU245
721 0014 034A ldr r2, .L47
722 .LVL59:
723 .loc 1 447 14 view .LVU246
724 0016 5361 str r3, [r2, #20]
448:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
449:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Call callback */
450:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti->PendingCallback != NULL)
725 .loc 1 450 5 is_stmt 1 view .LVU247
726 .loc 1 450 14 is_stmt 0 view .LVU248
727 0018 4368 ldr r3, [r0, #4]
728 .LVL60:
729 .loc 1 450 8 view .LVU249
730 001a 002B cmp r3, #0
731 001c 00D0 beq .L45
451:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
452:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->PendingCallback();
732 .loc 1 452 7 is_stmt 1 view .LVU250
733 001e 9847 blx r3
734 .LVL61:
735 .L45:
453:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
454:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
455:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
736 .loc 1 455 1 is_stmt 0 view .LVU251
737 @ sp needed
738 0020 10BD pop {r4, pc}
739 .L48:
740 0022 C046 .align 2
ARM GAS /tmp/ccFacv4Y.s page 23
741 .L47:
742 0024 00040140 .word 1073808384
743 .cfi_endproc
744 .LFE45:
746 .section .text.HAL_EXTI_GetPending,"ax",%progbits
747 .align 1
748 .global HAL_EXTI_GetPending
749 .syntax unified
750 .code 16
751 .thumb_func
753 HAL_EXTI_GetPending:
754 .LVL62:
755 .LFB46:
456:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
457:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
458:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Get interrupt pending bit of a dedicated line.
459:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
460:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param Edge Specify which pending edge as to be checked.
461:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of the following values:
462:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
463:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
464:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval 1 if interrupt is pending else 0.
465:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
466:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
467:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
756 .loc 1 467 1 is_stmt 1 view -0
757 .cfi_startproc
758 @ args = 0, pretend = 0, frame = 0
759 @ frame_needed = 0, uses_anonymous_args = 0
760 @ link register save eliminated.
468:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
761 .loc 1 468 3 view .LVU253
469:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
762 .loc 1 469 3 view .LVU254
470:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
763 .loc 1 470 3 view .LVU255
471:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
472:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
473:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
764 .loc 1 473 3 view .LVU256
474:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
765 .loc 1 474 3 view .LVU257
475:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
766 .loc 1 475 3 view .LVU258
476:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
477:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
478:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
767 .loc 1 478 3 view .LVU259
768 .loc 1 478 19 is_stmt 0 view .LVU260
769 0000 0268 ldr r2, [r0]
770 .loc 1 478 11 view .LVU261
771 0002 1F23 movs r3, #31
772 0004 1340 ands r3, r2
773 .LVL63:
479:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
774 .loc 1 479 3 is_stmt 1 view .LVU262
775 .loc 1 479 12 is_stmt 0 view .LVU263
ARM GAS /tmp/ccFacv4Y.s page 24
776 0006 0120 movs r0, #1
777 .LVL64:
778 .loc 1 479 12 view .LVU264
779 0008 9840 lsls r0, r0, r3
780 .LVL65:
480:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
481:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* return 1 if bit is set else 0 */
482:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = ((EXTI->PR & maskline) >> linepos);
781 .loc 1 482 3 is_stmt 1 view .LVU265
782 .loc 1 482 18 is_stmt 0 view .LVU266
783 000a 024A ldr r2, .L50
784 000c 5269 ldr r2, [r2, #20]
785 .loc 1 482 23 view .LVU267
786 000e 1040 ands r0, r2
787 .LVL66:
788 .loc 1 482 10 view .LVU268
789 0010 D840 lsrs r0, r0, r3
790 .LVL67:
483:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return regval;
791 .loc 1 483 3 is_stmt 1 view .LVU269
484:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
792 .loc 1 484 1 is_stmt 0 view .LVU270
793 @ sp needed
794 0012 7047 bx lr
795 .L51:
796 .align 2
797 .L50:
798 0014 00040140 .word 1073808384
799 .cfi_endproc
800 .LFE46:
802 .section .text.HAL_EXTI_ClearPending,"ax",%progbits
803 .align 1
804 .global HAL_EXTI_ClearPending
805 .syntax unified
806 .code 16
807 .thumb_func
809 HAL_EXTI_ClearPending:
810 .LVL68:
811 .LFB47:
485:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
486:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
487:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Clear interrupt pending bit of a dedicated line.
488:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
489:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param Edge Specify which pending edge as to be clear.
490:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of the following values:
491:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
492:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
493:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval None.
494:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
495:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
496:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
812 .loc 1 496 1 is_stmt 1 view -0
813 .cfi_startproc
814 @ args = 0, pretend = 0, frame = 0
815 @ frame_needed = 0, uses_anonymous_args = 0
816 @ link register save eliminated.
497:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
ARM GAS /tmp/ccFacv4Y.s page 25
817 .loc 1 497 3 view .LVU272
498:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
499:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
500:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
818 .loc 1 500 3 view .LVU273
501:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
819 .loc 1 501 3 view .LVU274
502:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
820 .loc 1 502 3 view .LVU275
503:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
504:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
505:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
821 .loc 1 505 3 view .LVU276
822 .loc 1 505 28 is_stmt 0 view .LVU277
823 0000 0368 ldr r3, [r0]
824 .loc 1 505 35 view .LVU278
825 0002 1F22 movs r2, #31
826 0004 1A40 ands r2, r3
827 .loc 1 505 12 view .LVU279
828 0006 0123 movs r3, #1
829 0008 9340 lsls r3, r3, r2
830 .LVL69:
506:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
507:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Clear Pending bit */
508:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->PR = maskline;
831 .loc 1 508 3 is_stmt 1 view .LVU280
832 .loc 1 508 12 is_stmt 0 view .LVU281
833 000a 014A ldr r2, .L53
834 000c 5361 str r3, [r2, #20]
509:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
835 .loc 1 509 1 view .LVU282
836 @ sp needed
837 000e 7047 bx lr
838 .L54:
839 .align 2
840 .L53:
841 0010 00040140 .word 1073808384
842 .cfi_endproc
843 .LFE47:
845 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits
846 .align 1
847 .global HAL_EXTI_GenerateSWI
848 .syntax unified
849 .code 16
850 .thumb_func
852 HAL_EXTI_GenerateSWI:
853 .LVL70:
854 .LFB48:
510:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
511:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
512:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Generate a software interrupt for a dedicated line.
513:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
514:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval None.
515:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
516:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti)
517:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
855 .loc 1 517 1 is_stmt 1 view -0
ARM GAS /tmp/ccFacv4Y.s page 26
856 .cfi_startproc
857 @ args = 0, pretend = 0, frame = 0
858 @ frame_needed = 0, uses_anonymous_args = 0
859 @ link register save eliminated.
518:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
860 .loc 1 518 3 view .LVU284
519:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
520:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
521:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
861 .loc 1 521 3 view .LVU285
522:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
862 .loc 1 522 3 view .LVU286
523:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
524:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
525:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
863 .loc 1 525 3 view .LVU287
864 .loc 1 525 28 is_stmt 0 view .LVU288
865 0000 0368 ldr r3, [r0]
866 .loc 1 525 35 view .LVU289
867 0002 1F22 movs r2, #31
868 0004 1A40 ands r2, r3
869 .loc 1 525 12 view .LVU290
870 0006 0123 movs r3, #1
871 0008 9340 lsls r3, r3, r2
872 .LVL71:
526:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
527:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Generate Software interrupt */
528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->SWIER = maskline;
873 .loc 1 528 3 is_stmt 1 view .LVU291
874 .loc 1 528 15 is_stmt 0 view .LVU292
875 000a 014A ldr r2, .L56
876 000c 1361 str r3, [r2, #16]
529:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
877 .loc 1 529 1 view .LVU293
878 @ sp needed
879 000e 7047 bx lr
880 .L57:
881 .align 2
882 .L56:
883 0010 00040140 .word 1073808384
884 .cfi_endproc
885 .LFE48:
887 .text
888 .Letext0:
889 .file 2 "/home/chiangni/.config/VSCodium/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/
890 .file 3 "/home/chiangni/.config/VSCodium/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/
891 .file 4 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f042x6.h"
892 .file 5 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h"
893 .file 6 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_exti.h"
ARM GAS /tmp/ccFacv4Y.s page 27
DEFINED SYMBOLS
*ABS*:00000000 stm32f0xx_hal_exti.c
/tmp/ccFacv4Y.s:19 .text.HAL_EXTI_SetConfigLine:00000000 $t
/tmp/ccFacv4Y.s:25 .text.HAL_EXTI_SetConfigLine:00000000 HAL_EXTI_SetConfigLine
/tmp/ccFacv4Y.s:247 .text.HAL_EXTI_SetConfigLine:000000b8 $d
/tmp/ccFacv4Y.s:253 .text.HAL_EXTI_GetConfigLine:00000000 $t
/tmp/ccFacv4Y.s:259 .text.HAL_EXTI_GetConfigLine:00000000 HAL_EXTI_GetConfigLine
/tmp/ccFacv4Y.s:440 .text.HAL_EXTI_GetConfigLine:00000098 $d
/tmp/ccFacv4Y.s:446 .text.HAL_EXTI_ClearConfigLine:00000000 $t
/tmp/ccFacv4Y.s:452 .text.HAL_EXTI_ClearConfigLine:00000000 HAL_EXTI_ClearConfigLine
/tmp/ccFacv4Y.s:592 .text.HAL_EXTI_ClearConfigLine:00000068 $d
/tmp/ccFacv4Y.s:598 .text.HAL_EXTI_RegisterCallback:00000000 $t
/tmp/ccFacv4Y.s:604 .text.HAL_EXTI_RegisterCallback:00000000 HAL_EXTI_RegisterCallback
/tmp/ccFacv4Y.s:639 .text.HAL_EXTI_GetHandle:00000000 $t
/tmp/ccFacv4Y.s:645 .text.HAL_EXTI_GetHandle:00000000 HAL_EXTI_GetHandle
/tmp/ccFacv4Y.s:680 .text.HAL_EXTI_IRQHandler:00000000 $t
/tmp/ccFacv4Y.s:686 .text.HAL_EXTI_IRQHandler:00000000 HAL_EXTI_IRQHandler
/tmp/ccFacv4Y.s:742 .text.HAL_EXTI_IRQHandler:00000024 $d
/tmp/ccFacv4Y.s:747 .text.HAL_EXTI_GetPending:00000000 $t
/tmp/ccFacv4Y.s:753 .text.HAL_EXTI_GetPending:00000000 HAL_EXTI_GetPending
/tmp/ccFacv4Y.s:798 .text.HAL_EXTI_GetPending:00000014 $d
/tmp/ccFacv4Y.s:803 .text.HAL_EXTI_ClearPending:00000000 $t
/tmp/ccFacv4Y.s:809 .text.HAL_EXTI_ClearPending:00000000 HAL_EXTI_ClearPending
/tmp/ccFacv4Y.s:841 .text.HAL_EXTI_ClearPending:00000010 $d
/tmp/ccFacv4Y.s:846 .text.HAL_EXTI_GenerateSWI:00000000 $t
/tmp/ccFacv4Y.s:852 .text.HAL_EXTI_GenerateSWI:00000000 HAL_EXTI_GenerateSWI
/tmp/ccFacv4Y.s:883 .text.HAL_EXTI_GenerateSWI:00000010 $d
NO UNDEFINED SYMBOLS