PDU_Code/build/stm32f3xx_hal_exti.lst

1821 lines
107 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 C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 1
1 .cpu cortex-m4
2 .arch armv7e-m
3 .fpu fpv4-sp-d16
4 .eabi_attribute 27, 1
5 .eabi_attribute 28, 1
6 .eabi_attribute 20, 1
7 .eabi_attribute 21, 1
8 .eabi_attribute 23, 3
9 .eabi_attribute 24, 1
10 .eabi_attribute 25, 1
11 .eabi_attribute 26, 1
12 .eabi_attribute 30, 1
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "stm32f3xx_hal_exti.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c"
20 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits
21 .align 1
22 .global HAL_EXTI_SetConfigLine
23 .syntax unified
24 .thumb
25 .thumb_func
27 HAL_EXTI_SetConfigLine:
28 .LVL0:
29 .LFB130:
1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ******************************************************************************
3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @file stm32f3xx_hal_exti.c
4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @author MCD Application Team
5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief EXTI HAL module driver.
6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * functionalities of the Extended Interrupts and events controller (EXTI) peripheral:
8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * + IO operation functions
10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ******************************************************************************
12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @attention
13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * Copyright (c) 2019 STMicroelectronics.
15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * All rights reserved.
16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This software is licensed under terms that can be found in the LICENSE file
18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * in the root directory of this software component.
19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ******************************************************************************
22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @verbatim
23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ==============================================================================
24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ##### EXTI Peripheral features #####
25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ==============================================================================
26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** [..]
27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (+) Each Exti line can be configured within this driver.
28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (+) Exti line can be configured in 3 different modes
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 2
30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Interrupt
31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Event
32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Both of them
33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (+) Configurable Exti lines can be configured with 3 different triggers
35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Rising
36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Falling
37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Both of them
38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (+) When set in interrupt mode, configurable Exti lines have two different
40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** interrupts pending registers which allow to distinguish which transition
41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** occurs:
42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Rising edge pending interrupt
43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Falling
44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can
46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** be selected through multiplexer.
47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ##### How to use this driver #####
49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ==============================================================================
50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** [..]
51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Configure the EXTI line using HAL_EXTI_SetConfigLine().
53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Choose the interrupt line number by setting "Line" member from
54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Configure the interrupt and/or event mode using "Mode" member from
56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) For configurable lines, configure rising and/or falling trigger
58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** "Trigger" member from EXTI_ConfigTypeDef structure.
59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel"
60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** member from GPIO_InitTypeDef structure.
61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Get current Exti configuration of a dedicated line using
63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_EXTI_GetConfigLine().
64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide exiting handle as parameter.
65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter.
66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine().
68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide exiting handle as parameter.
69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback().
71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide exiting handle as first parameter.
72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide which callback will be registered using one value from
73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** EXTI_CallbackIDTypeDef.
74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (++) Provide callback function pointer.
75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Get interrupt pending bit using HAL_EXTI_GetPending().
77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Clear interrupt pending bit using HAL_EXTI_GetPending().
79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** (#) Generate software interrupt using HAL_EXTI_GenerateSWI().
81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @endverbatim
83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Includes ------------------------------------------------------------------*/
86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** #include "stm32f3xx_hal.h"
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 3
87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @addtogroup STM32F3xx_HAL_Driver
89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @addtogroup EXTI
93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** MISRA C:2012 deviation rule has been granted for following rule:
96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out
97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * of bounds [0,3] in following API :
98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * HAL_EXTI_SetConfigLine
99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * HAL_EXTI_GetConfigLine
100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * HAL_EXTI_ClearConfigLine
101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** #ifdef HAL_EXTI_MODULE_ENABLED
104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Private typedef -----------------------------------------------------------*/
106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Private defines -----------------------------------------------------------*/
107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @defgroup EXTI_Private_Constants EXTI Private Constants
108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** #define EXTI_MODE_OFFSET 0x08u /* 0x20: offset between CPU IMR/EMR registers *
111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** #define EXTI_CONFIG_OFFSET 0x08u /* 0x20: offset between CPU Rising/Falling conf
112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @}
114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Private macros ------------------------------------------------------------*/
117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Private variables ---------------------------------------------------------*/
118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Private function prototypes -----------------------------------------------*/
119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Exported functions --------------------------------------------------------*/
120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions
122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group1
126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Configuration functions
127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @verbatim
129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ===============================================================================
130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ##### Configuration functions #####
131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ===============================================================================
132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @endverbatim
134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Set configuration of a dedicated Exti line.
139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param pExtiConfig Pointer on EXTI configuration to be set.
141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval HAL Status.
142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 4
144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
30 .loc 1 144 1 view -0
31 .cfi_startproc
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
34 @ link register save eliminated.
145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
35 .loc 1 145 3 view .LVU1
146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval;
36 .loc 1 146 3 view .LVU2
147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos;
37 .loc 1 147 3 view .LVU3
148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
38 .loc 1 148 3 view .LVU4
149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
39 .loc 1 149 3 view .LVU5
150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check null pointer */
152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
40 .loc 1 152 3 view .LVU6
41 .loc 1 152 6 is_stmt 0 view .LVU7
42 0000 0028 cmp r0, #0
43 0002 5ED0 beq .L12
44 .loc 1 152 23 discriminator 1 view .LVU8
45 0004 0029 cmp r1, #0
46 0006 5ED0 beq .L13
144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
47 .loc 1 144 1 view .LVU9
48 0008 F0B4 push {r4, r5, r6, r7}
49 .cfi_def_cfa_offset 16
50 .cfi_offset 4, -16
51 .cfi_offset 5, -12
52 .cfi_offset 6, -8
53 .cfi_offset 7, -4
153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_ERROR;
155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check parameters */
158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(pExtiConfig->Line));
54 .loc 1 158 3 is_stmt 1 view .LVU10
159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode));
55 .loc 1 159 3 view .LVU11
160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Assign line number to handle */
162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** hexti->Line = pExtiConfig->Line;
56 .loc 1 162 3 view .LVU12
57 .loc 1 162 28 is_stmt 0 view .LVU13
58 000a 0A68 ldr r2, [r1]
59 .loc 1 162 15 view .LVU14
60 000c 0260 str r2, [r0]
163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Compute line register offset and line mask */
165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((pExtiConfig->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
61 .loc 1 165 3 is_stmt 1 view .LVU15
62 .loc 1 165 10 is_stmt 0 view .LVU16
63 000e C2F30043 ubfx r3, r2, #16, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 5
64 .LVL1:
166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
65 .loc 1 166 3 is_stmt 1 view .LVU17
66 .loc 1 166 11 is_stmt 0 view .LVU18
67 0012 02F01F04 and r4, r2, #31
68 .LVL2:
167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos);
69 .loc 1 167 3 is_stmt 1 view .LVU19
70 .loc 1 167 12 is_stmt 0 view .LVU20
71 0016 0120 movs r0, #1
72 .LVL3:
73 .loc 1 167 12 view .LVU21
74 0018 A040 lsls r0, r0, r4
75 .LVL4:
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure triggers for configurable lines */
170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
76 .loc 1 170 3 is_stmt 1 view .LVU22
77 .loc 1 170 6 is_stmt 0 view .LVU23
78 001a 12F0007F tst r2, #33554432
79 001e 1BD0 beq .L3
171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger));
80 .loc 1 172 5 is_stmt 1 view .LVU24
173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure rising trigger */
175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->RTSR + (EXTI_CONFIG_OFFSET * offset));
81 .loc 1 175 5 view .LVU25
82 .loc 1 175 28 is_stmt 0 view .LVU26
83 0020 4FEA431C lsl ip, r3, #5
84 .loc 1 175 13 view .LVU27
85 0024 294F ldr r7, .L19
86 .LVL5:
176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
87 .loc 1 176 5 is_stmt 1 view .LVU28
88 .loc 1 176 12 is_stmt 0 view .LVU29
89 0026 5CF80750 ldr r5, [ip, r7]
90 .LVL6:
177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Mask or set line */
179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u)
91 .loc 1 179 5 is_stmt 1 view .LVU30
92 .loc 1 179 21 is_stmt 0 view .LVU31
93 002a 8E68 ldr r6, [r1, #8]
94 .loc 1 179 8 view .LVU32
95 002c 16F0010F tst r6, #1
96 0030 29D0 beq .L4
180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline;
97 .loc 1 181 7 is_stmt 1 view .LVU33
98 .loc 1 181 14 is_stmt 0 view .LVU34
99 0032 0543 orrs r5, r5, r0
100 .LVL7:
101 .L5:
182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 6
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~maskline;
186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store rising trigger mode */
189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
102 .loc 1 189 5 is_stmt 1 view .LVU35
103 .loc 1 189 14 is_stmt 0 view .LVU36
104 0034 4CF80750 str r5, [ip, r7]
190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure falling trigger */
192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->FTSR + (EXTI_CONFIG_OFFSET * offset));
105 .loc 1 192 5 is_stmt 1 view .LVU37
106 .loc 1 192 13 is_stmt 0 view .LVU38
107 0038 254E ldr r6, .L19+4
108 .LVL8:
193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
109 .loc 1 193 5 is_stmt 1 view .LVU39
110 .loc 1 193 12 is_stmt 0 view .LVU40
111 003a 5CF80650 ldr r5, [ip, r6]
112 .LVL9:
194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Mask or set line */
196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u)
113 .loc 1 196 5 is_stmt 1 view .LVU41
114 .loc 1 196 8 is_stmt 0 view .LVU42
115 003e 8F68 ldr r7, [r1, #8]
116 0040 17F0020F tst r7, #2
117 0044 22D0 beq .L6
197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline;
118 .loc 1 198 7 is_stmt 1 view .LVU43
119 .loc 1 198 14 is_stmt 0 view .LVU44
120 0046 0543 orrs r5, r5, r0
121 .LVL10:
122 .L7:
199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~maskline;
203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store falling trigger mode */
206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
123 .loc 1 206 5 is_stmt 1 view .LVU45
124 .loc 1 206 14 is_stmt 0 view .LVU46
125 0048 4CF80650 str r5, [ip, r6]
207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure gpio port selection in case of gpio exti line */
209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
126 .loc 1 209 5 is_stmt 1 view .LVU47
127 .loc 1 209 28 is_stmt 0 view .LVU48
128 004c 0D68 ldr r5, [r1]
129 .LVL11:
130 .loc 1 209 28 view .LVU49
131 004e 05F0C06C and ip, r5, #100663296
132 .LVL12:
133 .loc 1 209 8 view .LVU50
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 7
134 0052 BCF1C06F cmp ip, #100663296
135 0056 1CD0 beq .L18
136 .LVL13:
137 .L3:
210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel));
212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure interrupt mode : read current mode */
222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->IMR + (EXTI_MODE_OFFSET * offset));
138 .loc 1 222 3 is_stmt 1 view .LVU51
139 .loc 1 222 25 is_stmt 0 view .LVU52
140 0058 5B01 lsls r3, r3, #5
141 .LVL14:
142 .loc 1 222 11 view .LVU53
143 005a 03F18042 add r2, r3, #1073741824
144 005e 02F58232 add r2, r2, #66560
145 .LVL15:
223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
146 .loc 1 223 3 is_stmt 1 view .LVU54
147 .loc 1 223 10 is_stmt 0 view .LVU55
148 0062 1468 ldr r4, [r2]
149 .LVL16:
224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Mask or set line */
226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u)
150 .loc 1 226 3 is_stmt 1 view .LVU56
151 .loc 1 226 6 is_stmt 0 view .LVU57
152 0064 4D68 ldr r5, [r1, #4]
153 0066 15F0010F tst r5, #1
154 006a 24D0 beq .L8
227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline;
155 .loc 1 228 5 is_stmt 1 view .LVU58
156 .loc 1 228 12 is_stmt 0 view .LVU59
157 006c 0443 orrs r4, r4, r0
158 .LVL17:
159 .L9:
229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~maskline;
233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store interrupt mode */
236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
160 .loc 1 236 3 is_stmt 1 view .LVU60
161 .loc 1 236 12 is_stmt 0 view .LVU61
162 006e 1460 str r4, [r2]
237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 8
238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Configure event mode : read current mode */
239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->EMR + (EXTI_MODE_OFFSET * offset));
163 .loc 1 239 3 is_stmt 1 view .LVU62
164 .loc 1 239 11 is_stmt 0 view .LVU63
165 0070 184C ldr r4, .L19+8
166 .LVL18:
240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
167 .loc 1 240 3 is_stmt 1 view .LVU64
168 .loc 1 240 10 is_stmt 0 view .LVU65
169 0072 1A59 ldr r2, [r3, r4]
170 .LVL19:
241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Mask or set line */
243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u)
171 .loc 1 243 3 is_stmt 1 view .LVU66
172 .loc 1 243 19 is_stmt 0 view .LVU67
173 0074 4968 ldr r1, [r1, #4]
174 .LVL20:
175 .loc 1 243 6 view .LVU68
176 0076 11F0020F tst r1, #2
177 007a 1FD0 beq .L10
244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline;
178 .loc 1 245 5 is_stmt 1 view .LVU69
179 .loc 1 245 12 is_stmt 0 view .LVU70
180 007c 0243 orrs r2, r2, r0
181 .LVL21:
182 .L11:
246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~maskline;
250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store event mode */
253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
183 .loc 1 253 3 is_stmt 1 view .LVU71
184 .loc 1 253 12 is_stmt 0 view .LVU72
185 007e 1A51 str r2, [r3, r4]
254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK;
186 .loc 1 255 3 is_stmt 1 view .LVU73
187 .loc 1 255 10 is_stmt 0 view .LVU74
188 0080 0020 movs r0, #0
189 .LVL22:
256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
190 .loc 1 256 1 view .LVU75
191 0082 F0BC pop {r4, r5, r6, r7}
192 .cfi_remember_state
193 .cfi_restore 7
194 .cfi_restore 6
195 .cfi_restore 5
196 .cfi_restore 4
197 .cfi_def_cfa_offset 0
198 .LVL23:
199 .loc 1 256 1 view .LVU76
200 0084 7047 bx lr
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 9
201 .LVL24:
202 .L4:
203 .cfi_restore_state
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
204 .loc 1 185 7 is_stmt 1 view .LVU77
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
205 .loc 1 185 14 is_stmt 0 view .LVU78
206 0086 25EA0005 bic r5, r5, r0
207 .LVL25:
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
208 .loc 1 185 14 view .LVU79
209 008a D3E7 b .L5
210 .LVL26:
211 .L6:
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
212 .loc 1 202 7 is_stmt 1 view .LVU80
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
213 .loc 1 202 14 is_stmt 0 view .LVU81
214 008c 25EA0005 bic r5, r5, r0
215 .LVL27:
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
216 .loc 1 202 14 view .LVU82
217 0090 DAE7 b .L7
218 .LVL28:
219 .L18:
211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
220 .loc 1 211 7 is_stmt 1 view .LVU83
212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
221 .loc 1 212 7 view .LVU84
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
222 .loc 1 214 7 view .LVU85
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
223 .loc 1 214 39 is_stmt 0 view .LVU86
224 0092 A408 lsrs r4, r4, #2
225 .LVL29:
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
226 .loc 1 214 14 view .LVU87
227 0094 104F ldr r7, .L19+12
228 0096 0234 adds r4, r4, #2
229 0098 57F82460 ldr r6, [r7, r4, lsl #2]
230 .LVL30:
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
231 .loc 1 215 7 is_stmt 1 view .LVU88
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
232 .loc 1 215 80 is_stmt 0 view .LVU89
233 009c 02F00302 and r2, r2, #3
234 .LVL31:
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
235 .loc 1 215 69 view .LVU90
236 00a0 9200 lsls r2, r2, #2
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
237 .loc 1 215 40 view .LVU91
238 00a2 0F25 movs r5, #15
239 00a4 9540 lsls r5, r5, r2
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
240 .loc 1 215 14 view .LVU92
241 00a6 26EA0506 bic r6, r6, r5
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 10
242 .LVL32:
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
243 .loc 1 216 7 is_stmt 1 view .LVU93
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
244 .loc 1 216 29 is_stmt 0 view .LVU94
245 00aa CD68 ldr r5, [r1, #12]
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
246 .loc 1 216 39 view .LVU95
247 00ac 9540 lsls r5, r5, r2
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
248 .loc 1 216 14 view .LVU96
249 00ae 3543 orrs r5, r5, r6
250 .LVL33:
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
251 .loc 1 217 7 is_stmt 1 view .LVU97
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
252 .loc 1 217 37 is_stmt 0 view .LVU98
253 00b0 47F82450 str r5, [r7, r4, lsl #2]
254 00b4 D0E7 b .L3
255 .LVL34:
256 .L8:
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
257 .loc 1 232 5 is_stmt 1 view .LVU99
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
258 .loc 1 232 12 is_stmt 0 view .LVU100
259 00b6 24EA0004 bic r4, r4, r0
260 .LVL35:
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
261 .loc 1 232 12 view .LVU101
262 00ba D8E7 b .L9
263 .LVL36:
264 .L10:
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
265 .loc 1 249 5 is_stmt 1 view .LVU102
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
266 .loc 1 249 12 is_stmt 0 view .LVU103
267 00bc 22EA0002 bic r2, r2, r0
268 .LVL37:
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
269 .loc 1 249 12 view .LVU104
270 00c0 DDE7 b .L11
271 .LVL38:
272 .L12:
273 .cfi_def_cfa_offset 0
274 .cfi_restore 4
275 .cfi_restore 5
276 .cfi_restore 6
277 .cfi_restore 7
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
278 .loc 1 154 12 view .LVU105
279 00c2 0120 movs r0, #1
280 .LVL39:
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
281 .loc 1 154 12 view .LVU106
282 00c4 7047 bx lr
283 .LVL40:
284 .L13:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 11
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
285 .loc 1 154 12 view .LVU107
286 00c6 0120 movs r0, #1
287 .LVL41:
288 .loc 1 256 1 view .LVU108
289 00c8 7047 bx lr
290 .L20:
291 00ca 00BF .align 2
292 .L19:
293 00cc 08040140 .word 1073808392
294 00d0 0C040140 .word 1073808396
295 00d4 04040140 .word 1073808388
296 00d8 00000140 .word 1073807360
297 .cfi_endproc
298 .LFE130:
300 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits
301 .align 1
302 .global HAL_EXTI_GetConfigLine
303 .syntax unified
304 .thumb
305 .thumb_func
307 HAL_EXTI_GetConfigLine:
308 .LVL42:
309 .LFB131:
257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Get configuration of a dedicated Exti line.
260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param pExtiConfig Pointer on structure to store Exti configuration.
262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval HAL Status.
263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
310 .loc 1 265 1 is_stmt 1 view -0
311 .cfi_startproc
312 @ args = 0, pretend = 0, frame = 0
313 @ frame_needed = 0, uses_anonymous_args = 0
266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
314 .loc 1 266 3 view .LVU110
267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval;
315 .loc 1 267 3 view .LVU111
268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos;
316 .loc 1 268 3 view .LVU112
269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
317 .loc 1 269 3 view .LVU113
270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
318 .loc 1 270 3 view .LVU114
271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check null pointer */
273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
319 .loc 1 273 3 view .LVU115
320 .loc 1 273 6 is_stmt 0 view .LVU116
321 0000 0028 cmp r0, #0
322 0002 4CD0 beq .L28
323 .loc 1 273 23 discriminator 1 view .LVU117
324 0004 0029 cmp r1, #0
325 0006 4CD0 beq .L29
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 12
265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
326 .loc 1 265 1 view .LVU118
327 0008 10B5 push {r4, lr}
328 .cfi_def_cfa_offset 8
329 .cfi_offset 4, -8
330 .cfi_offset 14, -4
274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_ERROR;
276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check the parameter */
279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
331 .loc 1 279 3 is_stmt 1 view .LVU119
280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store handle line number to configuration structure */
282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Line = hexti->Line;
332 .loc 1 282 3 view .LVU120
333 .loc 1 282 28 is_stmt 0 view .LVU121
334 000a 0368 ldr r3, [r0]
335 .loc 1 282 21 view .LVU122
336 000c 0B60 str r3, [r1]
283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* compute line register offset and line mask */
285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((pExtiConfig->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
337 .loc 1 285 3 is_stmt 1 view .LVU123
338 .loc 1 285 10 is_stmt 0 view .LVU124
339 000e C3F30040 ubfx r0, r3, #16, #1
340 .LVL43:
286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
341 .loc 1 286 3 is_stmt 1 view .LVU125
342 .loc 1 286 11 is_stmt 0 view .LVU126
343 0012 03F01F0E and lr, r3, #31
344 .LVL44:
287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos);
345 .loc 1 287 3 is_stmt 1 view .LVU127
346 .loc 1 287 12 is_stmt 0 view .LVU128
347 0016 0122 movs r2, #1
348 0018 02FA0EF2 lsl r2, r2, lr
349 .LVL45:
288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* 1] Get core mode : interrupt */
290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->IMR + (EXTI_MODE_OFFSET * offset));
350 .loc 1 290 3 is_stmt 1 view .LVU129
351 .loc 1 290 25 is_stmt 0 view .LVU130
352 001c 4001 lsls r0, r0, #5
353 .LVL46:
354 .loc 1 290 11 view .LVU131
355 001e 00F1804C add ip, r0, #1073741824
356 0022 0CF5823C add ip, ip, #66560
357 .LVL47:
291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
358 .loc 1 291 3 is_stmt 1 view .LVU132
359 .loc 1 291 10 is_stmt 0 view .LVU133
360 0026 DCF80040 ldr r4, [ip]
361 .LVL48:
292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check if selected line is enable */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 13
294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
362 .loc 1 294 3 is_stmt 1 view .LVU134
363 .loc 1 294 6 is_stmt 0 view .LVU135
364 002a 2242 tst r2, r4
365 002c 24D0 beq .L23
295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_INTERRUPT;
366 .loc 1 296 5 is_stmt 1 view .LVU136
367 .loc 1 296 23 is_stmt 0 view .LVU137
368 002e 0124 movs r4, #1
369 .LVL49:
370 .loc 1 296 23 view .LVU138
371 0030 4C60 str r4, [r1, #4]
372 .L24:
297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_NONE;
301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get event mode */
304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->EMR + (EXTI_MODE_OFFSET * offset));
373 .loc 1 304 3 is_stmt 1 view .LVU139
374 .loc 1 304 11 is_stmt 0 view .LVU140
375 0032 1E4C ldr r4, .L37
376 .LVL50:
305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
377 .loc 1 305 3 is_stmt 1 view .LVU141
378 .loc 1 305 10 is_stmt 0 view .LVU142
379 0034 0459 ldr r4, [r0, r4]
380 .LVL51:
306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check if selected line is enable */
308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
381 .loc 1 308 3 is_stmt 1 view .LVU143
382 .loc 1 308 6 is_stmt 0 view .LVU144
383 0036 2242 tst r2, r4
384 0038 03D0 beq .L25
309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Mode |= EXTI_MODE_EVENT;
385 .loc 1 310 5 is_stmt 1 view .LVU145
386 .loc 1 310 16 is_stmt 0 view .LVU146
387 003a 4C68 ldr r4, [r1, #4]
388 .LVL52:
389 .loc 1 310 23 view .LVU147
390 003c 44F00204 orr r4, r4, #2
391 0040 4C60 str r4, [r1, #4]
392 .L25:
311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get default Trigger and GPIOSel configuration */
314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
393 .loc 1 314 3 is_stmt 1 view .LVU148
394 .loc 1 314 24 is_stmt 0 view .LVU149
395 0042 0024 movs r4, #0
396 0044 8C60 str r4, [r1, #8]
315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 14
397 .loc 1 315 3 is_stmt 1 view .LVU150
398 .loc 1 315 24 is_stmt 0 view .LVU151
399 0046 CC60 str r4, [r1, #12]
316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* 2] Get trigger for configurable lines : rising */
318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
400 .loc 1 318 3 is_stmt 1 view .LVU152
401 .loc 1 318 6 is_stmt 0 view .LVU153
402 0048 13F0007F tst r3, #33554432
403 004c 2BD0 beq .L30
319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->RTSR + (EXTI_CONFIG_OFFSET * offset));
404 .loc 1 320 5 is_stmt 1 view .LVU154
405 .loc 1 320 13 is_stmt 0 view .LVU155
406 004e 184C ldr r4, .L37+4
407 .LVL53:
321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
408 .loc 1 321 5 is_stmt 1 view .LVU156
409 .loc 1 321 12 is_stmt 0 view .LVU157
410 0050 0459 ldr r4, [r0, r4]
411 .LVL54:
322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check if configuration of selected line is enable */
324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
412 .loc 1 324 5 is_stmt 1 view .LVU158
413 .loc 1 324 8 is_stmt 0 view .LVU159
414 0052 2242 tst r2, r4
415 0054 01D0 beq .L26
325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_RISING;
416 .loc 1 326 7 is_stmt 1 view .LVU160
417 .loc 1 326 28 is_stmt 0 view .LVU161
418 0056 0124 movs r4, #1
419 .LVL55:
420 .loc 1 326 28 view .LVU162
421 0058 8C60 str r4, [r1, #8]
422 .L26:
327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get falling configuration */
330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->FTSR + (EXTI_CONFIG_OFFSET * offset));
423 .loc 1 330 5 is_stmt 1 view .LVU163
424 .loc 1 330 13 is_stmt 0 view .LVU164
425 005a 164C ldr r4, .L37+8
426 .LVL56:
331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr;
427 .loc 1 331 5 is_stmt 1 view .LVU165
428 .loc 1 331 12 is_stmt 0 view .LVU166
429 005c 0059 ldr r0, [r0, r4]
430 .LVL57:
332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check if configuration of selected line is enable */
334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
431 .loc 1 334 5 is_stmt 1 view .LVU167
432 .loc 1 334 8 is_stmt 0 view .LVU168
433 005e 0242 tst r2, r0
434 0060 03D0 beq .L27
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 15
335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING;
435 .loc 1 336 7 is_stmt 1 view .LVU169
436 .loc 1 336 18 is_stmt 0 view .LVU170
437 0062 8A68 ldr r2, [r1, #8]
438 .LVL58:
439 .loc 1 336 28 view .LVU171
440 0064 42F00202 orr r2, r2, #2
441 0068 8A60 str r2, [r1, #8]
442 .L27:
337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
443 .loc 1 340 5 is_stmt 1 view .LVU172
444 .loc 1 340 28 is_stmt 0 view .LVU173
445 006a 03F0C062 and r2, r3, #100663296
446 .loc 1 340 8 view .LVU174
447 006e B2F1C06F cmp r2, #100663296
448 0072 04D0 beq .L36
341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK;
449 .loc 1 349 10 view .LVU175
450 0074 0020 movs r0, #0
451 .LVL59:
452 .loc 1 349 10 view .LVU176
453 0076 17E0 b .L22
454 .LVL60:
455 .L23:
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
456 .loc 1 300 5 is_stmt 1 view .LVU177
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
457 .loc 1 300 23 is_stmt 0 view .LVU178
458 0078 0024 movs r4, #0
459 .LVL61:
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
460 .loc 1 300 23 view .LVU179
461 007a 4C60 str r4, [r1, #4]
462 007c D9E7 b .L24
463 .LVL62:
464 .L36:
342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
465 .loc 1 342 7 is_stmt 1 view .LVU180
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
466 .loc 1 344 7 view .LVU181
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
467 .loc 1 344 39 is_stmt 0 view .LVU182
468 007e 4FEA9E02 lsr r2, lr, #2
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
469 .loc 1 344 14 view .LVU183
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 16
470 0082 0232 adds r2, r2, #2
471 0084 0C48 ldr r0, .L37+12
472 .LVL63:
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
473 .loc 1 344 14 view .LVU184
474 0086 50F82220 ldr r2, [r0, r2, lsl #2]
475 .LVL64:
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
476 .loc 1 345 7 is_stmt 1 view .LVU185
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
477 .loc 1 345 78 is_stmt 0 view .LVU186
478 008a 03F00303 and r3, r3, #3
479 .LVL65:
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
480 .loc 1 345 67 view .LVU187
481 008e 9B00 lsls r3, r3, #2
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
482 .loc 1 345 38 view .LVU188
483 0090 22FA03F3 lsr r3, r2, r3
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
484 .loc 1 345 89 view .LVU189
485 0094 03F00F03 and r3, r3, #15
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
486 .loc 1 345 28 view .LVU190
487 0098 CB60 str r3, [r1, #12]
488 .loc 1 349 10 view .LVU191
489 009a 0020 movs r0, #0
490 009c 04E0 b .L22
491 .LVL66:
492 .L28:
493 .cfi_def_cfa_offset 0
494 .cfi_restore 4
495 .cfi_restore 14
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
496 .loc 1 275 12 view .LVU192
497 009e 0120 movs r0, #1
498 .LVL67:
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
499 .loc 1 275 12 view .LVU193
500 00a0 7047 bx lr
501 .LVL68:
502 .L29:
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
503 .loc 1 275 12 view .LVU194
504 00a2 0120 movs r0, #1
505 .LVL69:
350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
506 .loc 1 350 1 view .LVU195
507 00a4 7047 bx lr
508 .LVL70:
509 .L30:
510 .cfi_def_cfa_offset 8
511 .cfi_offset 4, -8
512 .cfi_offset 14, -4
349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
513 .loc 1 349 10 view .LVU196
514 00a6 0020 movs r0, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 17
515 .LVL71:
516 .L22:
517 .loc 1 350 1 view .LVU197
518 00a8 10BD pop {r4, pc}
519 .L38:
520 00aa 00BF .align 2
521 .L37:
522 00ac 04040140 .word 1073808388
523 00b0 08040140 .word 1073808392
524 00b4 0C040140 .word 1073808396
525 00b8 00000140 .word 1073807360
526 .cfi_endproc
527 .LFE131:
529 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits
530 .align 1
531 .global HAL_EXTI_ClearConfigLine
532 .syntax unified
533 .thumb
534 .thumb_func
536 HAL_EXTI_ClearConfigLine:
537 .LVL72:
538 .LFB132:
351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Clear whole configuration of a dedicated Exti line.
354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval HAL Status.
356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti)
358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
539 .loc 1 358 1 is_stmt 1 view -0
540 .cfi_startproc
541 @ args = 0, pretend = 0, frame = 0
542 @ frame_needed = 0, uses_anonymous_args = 0
359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
543 .loc 1 359 3 view .LVU199
360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval;
544 .loc 1 360 3 view .LVU200
361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos;
545 .loc 1 361 3 view .LVU201
362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
546 .loc 1 362 3 view .LVU202
363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
547 .loc 1 363 3 view .LVU203
364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check null pointer */
366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if (hexti == NULL)
548 .loc 1 366 3 view .LVU204
549 .loc 1 366 6 is_stmt 0 view .LVU205
550 0000 0028 cmp r0, #0
551 0002 40D0 beq .L41
358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
552 .loc 1 358 1 view .LVU206
553 0004 30B5 push {r4, r5, lr}
554 .cfi_def_cfa_offset 12
555 .cfi_offset 4, -12
556 .cfi_offset 5, -8
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 18
557 .cfi_offset 14, -4
558 0006 8446 mov ip, r0
367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_ERROR;
369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check the parameter */
372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
559 .loc 1 372 3 is_stmt 1 view .LVU207
373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* compute line register offset and line mask */
375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
560 .loc 1 375 3 view .LVU208
561 .loc 1 375 19 is_stmt 0 view .LVU209
562 0008 0468 ldr r4, [r0]
563 .loc 1 375 10 view .LVU210
564 000a C4F30043 ubfx r3, r4, #16, #1
565 .LVL73:
376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
566 .loc 1 376 3 is_stmt 1 view .LVU211
567 .loc 1 376 11 is_stmt 0 view .LVU212
568 000e 04F01F0E and lr, r4, #31
569 .LVL74:
377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos);
570 .loc 1 377 3 is_stmt 1 view .LVU213
571 .loc 1 377 12 is_stmt 0 view .LVU214
572 0012 0122 movs r2, #1
573 0014 02FA0EF2 lsl r2, r2, lr
574 .LVL75:
378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* 1] Clear interrupt mode */
380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->IMR + (EXTI_MODE_OFFSET * offset));
575 .loc 1 380 3 is_stmt 1 view .LVU215
576 .loc 1 380 25 is_stmt 0 view .LVU216
577 0018 5B01 lsls r3, r3, #5
578 .LVL76:
579 .loc 1 380 11 view .LVU217
580 001a 03F18041 add r1, r3, #1073741824
581 001e 01F58231 add r1, r1, #66560
582 .LVL77:
381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline);
583 .loc 1 381 3 is_stmt 1 view .LVU218
584 .loc 1 381 13 is_stmt 0 view .LVU219
585 0022 0868 ldr r0, [r1]
586 .LVL78:
587 .loc 1 381 24 view .LVU220
588 0024 D543 mvns r5, r2
589 .loc 1 381 10 view .LVU221
590 0026 20EA0200 bic r0, r0, r2
591 .LVL79:
382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
592 .loc 1 382 3 is_stmt 1 view .LVU222
593 .loc 1 382 12 is_stmt 0 view .LVU223
594 002a 0860 str r0, [r1]
383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* 2] Clear event mode */
385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->EMR + (EXTI_MODE_OFFSET * offset));
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 19
595 .loc 1 385 3 is_stmt 1 view .LVU224
596 .loc 1 385 11 is_stmt 0 view .LVU225
597 002c 1848 ldr r0, .L49
598 .LVL80:
386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline);
599 .loc 1 386 3 is_stmt 1 view .LVU226
600 .loc 1 386 13 is_stmt 0 view .LVU227
601 002e 1958 ldr r1, [r3, r0]
602 .LVL81:
603 .loc 1 386 10 view .LVU228
604 0030 21EA0202 bic r2, r1, r2
605 .LVL82:
387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
606 .loc 1 387 3 is_stmt 1 view .LVU229
607 .loc 1 387 12 is_stmt 0 view .LVU230
608 0034 1A50 str r2, [r3, r0]
388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* 3] Clear triggers in case of configurable lines */
390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((hexti->Line & EXTI_CONFIG) != 0x00u)
609 .loc 1 390 3 is_stmt 1 view .LVU231
610 .loc 1 390 13 is_stmt 0 view .LVU232
611 0036 DCF80020 ldr r2, [ip]
612 .LVL83:
613 .loc 1 390 6 view .LVU233
614 003a 12F0007F tst r2, #33554432
615 003e 24D0 beq .L42
391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->RTSR + (EXTI_CONFIG_OFFSET * offset));
616 .loc 1 392 5 is_stmt 1 view .LVU234
617 .loc 1 392 13 is_stmt 0 view .LVU235
618 0040 1449 ldr r1, .L49+4
619 .LVL84:
393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline);
620 .loc 1 393 5 is_stmt 1 view .LVU236
621 .loc 1 393 15 is_stmt 0 view .LVU237
622 0042 5A58 ldr r2, [r3, r1]
623 .loc 1 393 12 view .LVU238
624 0044 2A40 ands r2, r2, r5
625 .LVL85:
394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
626 .loc 1 394 5 is_stmt 1 view .LVU239
627 .loc 1 394 14 is_stmt 0 view .LVU240
628 0046 5A50 str r2, [r3, r1]
395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->FTSR + (EXTI_CONFIG_OFFSET * offset));
629 .loc 1 396 5 is_stmt 1 view .LVU241
630 .loc 1 396 13 is_stmt 0 view .LVU242
631 0048 134A ldr r2, .L49+8
632 .LVL86:
397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline);
633 .loc 1 397 5 is_stmt 1 view .LVU243
634 .loc 1 397 15 is_stmt 0 view .LVU244
635 004a 9958 ldr r1, [r3, r2]
636 .LVL87:
637 .loc 1 397 12 view .LVU245
638 004c 0D40 ands r5, r5, r1
639 .LVL88:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 20
398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval;
640 .loc 1 398 5 is_stmt 1 view .LVU246
641 .loc 1 398 14 is_stmt 0 view .LVU247
642 004e 9D50 str r5, [r3, r2]
399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO)
643 .loc 1 401 5 is_stmt 1 view .LVU248
644 .loc 1 401 15 is_stmt 0 view .LVU249
645 0050 DCF80030 ldr r3, [ip]
646 .LVL89:
647 .loc 1 401 22 view .LVU250
648 0054 03F0C063 and r3, r3, #100663296
649 .loc 1 401 8 view .LVU251
650 0058 B3F1C06F cmp r3, #100663296
651 005c 01D0 beq .L48
402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK;
652 .loc 1 411 10 view .LVU252
653 005e 0020 movs r0, #0
654 0060 14E0 b .L40
655 .L48:
403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
656 .loc 1 403 7 is_stmt 1 view .LVU253
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
657 .loc 1 405 7 view .LVU254
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
658 .loc 1 405 39 is_stmt 0 view .LVU255
659 0062 4FEA9E0E lsr lr, lr, #2
660 .LVL90:
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
661 .loc 1 405 14 view .LVU256
662 0066 0D49 ldr r1, .L49+12
663 0068 0EF1020E add lr, lr, #2
664 006c 51F82E30 ldr r3, [r1, lr, lsl #2]
665 .LVL91:
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
666 .loc 1 406 7 is_stmt 1 view .LVU257
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
667 .loc 1 406 80 is_stmt 0 view .LVU258
668 0070 04F00304 and r4, r4, #3
669 .LVL92:
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
670 .loc 1 406 69 view .LVU259
671 0074 A400 lsls r4, r4, #2
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
672 .loc 1 406 40 view .LVU260
673 0076 0F22 movs r2, #15
674 0078 A240 lsls r2, r2, r4
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 21
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
675 .loc 1 406 14 view .LVU261
676 007a 23EA0203 bic r3, r3, r2
677 .LVL93:
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
678 .loc 1 407 7 is_stmt 1 view .LVU262
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
679 .loc 1 407 37 is_stmt 0 view .LVU263
680 007e 41F82E30 str r3, [r1, lr, lsl #2]
681 .loc 1 411 10 view .LVU264
682 0082 0020 movs r0, #0
683 0084 02E0 b .L40
684 .LVL94:
685 .L41:
686 .cfi_def_cfa_offset 0
687 .cfi_restore 4
688 .cfi_restore 5
689 .cfi_restore 14
368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
690 .loc 1 368 12 view .LVU265
691 0086 0120 movs r0, #1
692 .LVL95:
412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
693 .loc 1 412 1 view .LVU266
694 0088 7047 bx lr
695 .LVL96:
696 .L42:
697 .cfi_def_cfa_offset 12
698 .cfi_offset 4, -12
699 .cfi_offset 5, -8
700 .cfi_offset 14, -4
411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
701 .loc 1 411 10 view .LVU267
702 008a 0020 movs r0, #0
703 .LVL97:
704 .L40:
705 .loc 1 412 1 view .LVU268
706 008c 30BD pop {r4, r5, pc}
707 .L50:
708 008e 00BF .align 2
709 .L49:
710 0090 04040140 .word 1073808388
711 0094 08040140 .word 1073808392
712 0098 0C040140 .word 1073808396
713 009c 00000140 .word 1073807360
714 .cfi_endproc
715 .LFE132:
717 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits
718 .align 1
719 .global HAL_EXTI_RegisterCallback
720 .syntax unified
721 .thumb
722 .thumb_func
724 HAL_EXTI_RegisterCallback:
725 .LVL98:
726 .LFB133:
413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 22
414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Register callback for a dedicated Exti line.
416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param CallbackID User callback identifier.
418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values.
419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param pPendingCbfn function pointer to be stored as callback.
420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval HAL Status.
421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef Callb
423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
727 .loc 1 423 1 is_stmt 1 view -0
728 .cfi_startproc
729 @ args = 0, pretend = 0, frame = 0
730 @ frame_needed = 0, uses_anonymous_args = 0
731 @ link register save eliminated.
732 .loc 1 423 1 is_stmt 0 view .LVU270
733 0000 0346 mov r3, r0
424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
734 .loc 1 424 3 is_stmt 1 view .LVU271
735 .LVL99:
425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** switch (CallbackID)
736 .loc 1 426 3 view .LVU272
737 0002 0846 mov r0, r1
738 .LVL100:
739 .loc 1 426 3 is_stmt 0 view .LVU273
740 0004 09B9 cbnz r1, .L53
427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** case HAL_EXTI_COMMON_CB_ID:
429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** hexti->PendingCallback = pPendingCbfn;
741 .loc 1 429 7 is_stmt 1 view .LVU274
742 .loc 1 429 30 is_stmt 0 view .LVU275
743 0006 5A60 str r2, [r3, #4]
430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** break;
744 .loc 1 430 7 is_stmt 1 view .LVU276
745 0008 7047 bx lr
746 .L53:
431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** default:
433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** status = HAL_ERROR;
747 .loc 1 433 14 is_stmt 0 view .LVU277
748 000a 0120 movs r0, #1
749 .LVL101:
434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** break;
435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return status;
750 .loc 1 437 3 is_stmt 1 view .LVU278
438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
751 .loc 1 438 1 is_stmt 0 view .LVU279
752 000c 7047 bx lr
753 .cfi_endproc
754 .LFE133:
756 .section .text.HAL_EXTI_GetHandle,"ax",%progbits
757 .align 1
758 .global HAL_EXTI_GetHandle
759 .syntax unified
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 23
760 .thumb
761 .thumb_func
763 HAL_EXTI_GetHandle:
764 .LVL102:
765 .LFB134:
439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Store line number as handle private field.
442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param ExtiLine Exti line number.
444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter can be from 0 to @ref EXTI_LINE_NB.
445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval HAL Status.
446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine)
448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
766 .loc 1 448 1 is_stmt 1 view -0
767 .cfi_startproc
768 @ args = 0, pretend = 0, frame = 0
769 @ frame_needed = 0, uses_anonymous_args = 0
770 @ link register save eliminated.
449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check the parameters */
450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(ExtiLine));
771 .loc 1 450 3 view .LVU281
451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check null pointer */
453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if (hexti == NULL)
772 .loc 1 453 3 view .LVU282
773 .loc 1 453 6 is_stmt 0 view .LVU283
774 0000 10B1 cbz r0, .L56
454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_ERROR;
456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** else
458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Store line number as handle private field */
460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** hexti->Line = ExtiLine;
775 .loc 1 460 5 is_stmt 1 view .LVU284
776 .loc 1 460 17 is_stmt 0 view .LVU285
777 0002 0160 str r1, [r0]
461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK;
778 .loc 1 462 5 is_stmt 1 view .LVU286
779 .loc 1 462 12 is_stmt 0 view .LVU287
780 0004 0020 movs r0, #0
781 .LVL103:
782 .loc 1 462 12 view .LVU288
783 0006 7047 bx lr
784 .LVL104:
785 .L56:
455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
786 .loc 1 455 12 view .LVU289
787 0008 0120 movs r0, #1
788 .LVL105:
463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
789 .loc 1 464 1 view .LVU290
790 000a 7047 bx lr
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 24
791 .cfi_endproc
792 .LFE134:
794 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits
795 .align 1
796 .global HAL_EXTI_IRQHandler
797 .syntax unified
798 .thumb
799 .thumb_func
801 HAL_EXTI_IRQHandler:
802 .LVL106:
803 .LFB135:
465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @}
468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group2
471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief EXTI IO functions.
472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *
473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @verbatim
474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ===============================================================================
475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ##### IO operation functions #####
476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ===============================================================================
477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** @endverbatim
479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @{
480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Handle EXTI interrupt request.
484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval none.
486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti)
488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
804 .loc 1 488 1 is_stmt 1 view -0
805 .cfi_startproc
806 @ args = 0, pretend = 0, frame = 0
807 @ frame_needed = 0, uses_anonymous_args = 0
808 .loc 1 488 1 is_stmt 0 view .LVU292
809 0000 08B5 push {r3, lr}
810 .cfi_def_cfa_offset 8
811 .cfi_offset 3, -8
812 .cfi_offset 14, -4
489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
813 .loc 1 489 3 is_stmt 1 view .LVU293
490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval;
814 .loc 1 490 3 view .LVU294
491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
815 .loc 1 491 3 view .LVU295
492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
816 .loc 1 492 3 view .LVU296
493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Compute line register offset and line mask */
495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
817 .loc 1 495 3 view .LVU297
818 .loc 1 495 19 is_stmt 0 view .LVU298
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 25
819 0002 0368 ldr r3, [r0]
820 .loc 1 495 10 view .LVU299
821 0004 C3F30041 ubfx r1, r3, #16, #1
822 .LVL107:
496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
823 .loc 1 496 3 is_stmt 1 view .LVU300
824 .loc 1 496 35 is_stmt 0 view .LVU301
825 0008 03F01F03 and r3, r3, #31
826 .loc 1 496 12 view .LVU302
827 000c 0122 movs r2, #1
828 000e 02FA03F3 lsl r3, r2, r3
829 .LVL108:
497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get pending bit */
499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->PR + (EXTI_CONFIG_OFFSET * offset));
830 .loc 1 499 3 is_stmt 1 view .LVU303
831 .loc 1 499 24 is_stmt 0 view .LVU304
832 0012 4A01 lsls r2, r1, #5
833 .loc 1 499 11 view .LVU305
834 0014 0449 ldr r1, .L60
835 .LVL109:
500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & maskline);
836 .loc 1 500 3 is_stmt 1 view .LVU306
837 .loc 1 500 13 is_stmt 0 view .LVU307
838 0016 5258 ldr r2, [r2, r1]
839 .LVL110:
501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if (regval != 0x00u)
840 .loc 1 502 3 is_stmt 1 view .LVU308
841 .loc 1 502 6 is_stmt 0 view .LVU309
842 0018 1A42 tst r2, r3
843 001a 04D0 beq .L57
503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Clear pending bit */
505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** EXTI->PR = maskline;
844 .loc 1 505 5 is_stmt 1 view .LVU310
845 .loc 1 505 14 is_stmt 0 view .LVU311
846 001c 034A ldr r2, .L60+4
847 .LVL111:
848 .loc 1 505 14 view .LVU312
849 001e 5361 str r3, [r2, #20]
850 .LVL112:
506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Call callback */
508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if (hexti->PendingCallback != NULL)
851 .loc 1 508 5 is_stmt 1 view .LVU313
852 .loc 1 508 14 is_stmt 0 view .LVU314
853 0020 4368 ldr r3, [r0, #4]
854 .LVL113:
855 .loc 1 508 8 view .LVU315
856 0022 03B1 cbz r3, .L57
509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** hexti->PendingCallback();
857 .loc 1 510 7 is_stmt 1 view .LVU316
858 0024 9847 blx r3
859 .LVL114:
860 .L57:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 26
511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
861 .loc 1 513 1 is_stmt 0 view .LVU317
862 0026 08BD pop {r3, pc}
863 .L61:
864 .align 2
865 .L60:
866 0028 14040140 .word 1073808404
867 002c 00040140 .word 1073808384
868 .cfi_endproc
869 .LFE135:
871 .section .text.HAL_EXTI_GetPending,"ax",%progbits
872 .align 1
873 .global HAL_EXTI_GetPending
874 .syntax unified
875 .thumb
876 .thumb_func
878 HAL_EXTI_GetPending:
879 .LVL115:
880 .LFB136:
514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Get interrupt pending bit of a dedicated line.
517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param Edge Specify which pending edge as to be checked.
519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter can be one of the following values:
520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval 1 if interrupt is pending else 0.
523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
881 .loc 1 525 1 is_stmt 1 view -0
882 .cfi_startproc
883 @ args = 0, pretend = 0, frame = 0
884 @ frame_needed = 0, uses_anonymous_args = 0
885 @ link register save eliminated.
526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
886 .loc 1 526 3 view .LVU319
527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval;
887 .loc 1 527 3 view .LVU320
528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos;
888 .loc 1 528 3 view .LVU321
529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
889 .loc 1 529 3 view .LVU322
530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
890 .loc 1 530 3 view .LVU323
531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check parameters */
533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
891 .loc 1 533 3 view .LVU324
534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
892 .loc 1 534 3 view .LVU325
535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
893 .loc 1 535 3 view .LVU326
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 27
537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* compute line register offset and line mask */
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
894 .loc 1 538 3 view .LVU327
895 .loc 1 538 19 is_stmt 0 view .LVU328
896 0000 0368 ldr r3, [r0]
897 .loc 1 538 10 view .LVU329
898 0002 C3F30041 ubfx r1, r3, #16, #1
899 .LVL116:
539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
900 .loc 1 539 3 is_stmt 1 view .LVU330
901 .loc 1 539 11 is_stmt 0 view .LVU331
902 0006 03F01F03 and r3, r3, #31
903 .LVL117:
540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos);
904 .loc 1 540 3 is_stmt 1 view .LVU332
905 .loc 1 540 12 is_stmt 0 view .LVU333
906 000a 0122 movs r2, #1
907 000c 9A40 lsls r2, r2, r3
908 .LVL118:
541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get pending bit */
543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->PR + (EXTI_CONFIG_OFFSET * offset));
909 .loc 1 543 3 is_stmt 1 view .LVU334
910 .loc 1 543 24 is_stmt 0 view .LVU335
911 000e 4901 lsls r1, r1, #5
912 .LVL119:
913 .loc 1 543 11 view .LVU336
914 0010 0248 ldr r0, .L63
915 .LVL120:
544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* return 1 if bit is set else 0 */
545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = ((*regaddr & maskline) >> linepos);
916 .loc 1 545 3 is_stmt 1 view .LVU337
917 .loc 1 545 14 is_stmt 0 view .LVU338
918 0012 0858 ldr r0, [r1, r0]
919 .LVL121:
920 .loc 1 545 23 view .LVU339
921 0014 1040 ands r0, r0, r2
922 .LVL122:
546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return regval;
923 .loc 1 546 3 is_stmt 1 view .LVU340
547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
924 .loc 1 547 1 is_stmt 0 view .LVU341
925 0016 D840 lsrs r0, r0, r3
926 .LVL123:
927 .loc 1 547 1 view .LVU342
928 0018 7047 bx lr
929 .L64:
930 001a 00BF .align 2
931 .L63:
932 001c 14040140 .word 1073808404
933 .cfi_endproc
934 .LFE136:
936 .section .text.HAL_EXTI_ClearPending,"ax",%progbits
937 .align 1
938 .global HAL_EXTI_ClearPending
939 .syntax unified
940 .thumb
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 28
941 .thumb_func
943 HAL_EXTI_ClearPending:
944 .LVL124:
945 .LFB137:
548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Clear interrupt pending bit of a dedicated line.
551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param Edge Specify which pending edge as to be clear.
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter can be one of the following values:
554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval None.
557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
946 .loc 1 559 1 is_stmt 1 view -0
947 .cfi_startproc
948 @ args = 0, pretend = 0, frame = 0
949 @ frame_needed = 0, uses_anonymous_args = 0
950 @ link register save eliminated.
560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
951 .loc 1 560 3 view .LVU344
561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
952 .loc 1 561 3 view .LVU345
562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
953 .loc 1 562 3 view .LVU346
563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check parameters */
565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
954 .loc 1 565 3 view .LVU347
566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
955 .loc 1 566 3 view .LVU348
567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
956 .loc 1 567 3 view .LVU349
568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* compute line register offset and line mask */
570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
957 .loc 1 570 3 view .LVU350
958 .loc 1 570 19 is_stmt 0 view .LVU351
959 0000 0368 ldr r3, [r0]
960 .loc 1 570 10 view .LVU352
961 0002 C3F30042 ubfx r2, r3, #16, #1
962 .LVL125:
571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
963 .loc 1 571 3 is_stmt 1 view .LVU353
964 .loc 1 571 35 is_stmt 0 view .LVU354
965 0006 03F01F03 and r3, r3, #31
966 .loc 1 571 12 view .LVU355
967 000a 0121 movs r1, #1
968 .LVL126:
969 .loc 1 571 12 view .LVU356
970 000c 9940 lsls r1, r1, r3
971 .LVL127:
572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Get pending bit */
574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->PR + (EXTI_CONFIG_OFFSET * offset));
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 29
972 .loc 1 574 3 is_stmt 1 view .LVU357
973 .loc 1 574 24 is_stmt 0 view .LVU358
974 000e 5301 lsls r3, r2, #5
975 .loc 1 574 11 view .LVU359
976 0010 014A ldr r2, .L66
977 .LVL128:
575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Clear Pending bit */
577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = maskline;
978 .loc 1 577 3 is_stmt 1 view .LVU360
979 .loc 1 577 12 is_stmt 0 view .LVU361
980 0012 9950 str r1, [r3, r2]
981 .LVL129:
578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
982 .loc 1 578 1 view .LVU362
983 0014 7047 bx lr
984 .L67:
985 0016 00BF .align 2
986 .L66:
987 0018 14040140 .word 1073808404
988 .cfi_endproc
989 .LFE137:
991 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits
992 .align 1
993 .global HAL_EXTI_GenerateSWI
994 .syntax unified
995 .thumb
996 .thumb_func
998 HAL_EXTI_GenerateSWI:
999 .LVL130:
1000 .LFB138:
579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /**
581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @brief Generate a software interrupt for a dedicated line.
582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @param hexti Exti handle.
583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** * @retval None.
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** */
585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti)
586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** {
1001 .loc 1 586 1 is_stmt 1 view -0
1002 .cfi_startproc
1003 @ args = 0, pretend = 0, frame = 0
1004 @ frame_needed = 0, uses_anonymous_args = 0
1005 @ link register save eliminated.
587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr;
1006 .loc 1 587 3 view .LVU364
588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline;
1007 .loc 1 588 3 view .LVU365
589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset;
1008 .loc 1 589 3 view .LVU366
590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check parameters */
592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
1009 .loc 1 592 3 view .LVU367
593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
1010 .loc 1 593 3 view .LVU368
594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 30
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* compute line register offset and line mask */
596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
1011 .loc 1 596 3 view .LVU369
1012 .loc 1 596 19 is_stmt 0 view .LVU370
1013 0000 0368 ldr r3, [r0]
1014 .loc 1 596 10 view .LVU371
1015 0002 C3F30042 ubfx r2, r3, #16, #1
1016 .LVL131:
597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
1017 .loc 1 597 3 is_stmt 1 view .LVU372
1018 .loc 1 597 35 is_stmt 0 view .LVU373
1019 0006 03F01F03 and r3, r3, #31
1020 .loc 1 597 12 view .LVU374
1021 000a 0121 movs r1, #1
1022 000c 9940 lsls r1, r1, r3
1023 .LVL132:
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c ****
599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regaddr = (&EXTI->SWIER + (EXTI_CONFIG_OFFSET * offset));
1024 .loc 1 599 3 is_stmt 1 view .LVU375
1025 .loc 1 599 27 is_stmt 0 view .LVU376
1026 000e 5301 lsls r3, r2, #5
1027 .loc 1 599 11 view .LVU377
1028 0010 014A ldr r2, .L69
1029 .LVL133:
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = maskline;
1030 .loc 1 600 3 is_stmt 1 view .LVU378
1031 .loc 1 600 12 is_stmt 0 view .LVU379
1032 0012 9950 str r1, [r3, r2]
1033 .LVL134:
601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** }
1034 .loc 1 601 1 view .LVU380
1035 0014 7047 bx lr
1036 .L70:
1037 0016 00BF .align 2
1038 .L69:
1039 0018 10040140 .word 1073808400
1040 .cfi_endproc
1041 .LFE138:
1043 .text
1044 .Letext0:
1045 .file 2 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
1046 .file 3 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
1047 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
1048 .file 5 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
1049 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_exti.h"
ARM GAS C:\Users\nived\AppData\Local\Temp\ccT69dI2.s page 31
DEFINED SYMBOLS
*ABS*:00000000 stm32f3xx_hal_exti.c
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:21 .text.HAL_EXTI_SetConfigLine:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:27 .text.HAL_EXTI_SetConfigLine:00000000 HAL_EXTI_SetConfigLine
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:293 .text.HAL_EXTI_SetConfigLine:000000cc $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:301 .text.HAL_EXTI_GetConfigLine:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:307 .text.HAL_EXTI_GetConfigLine:00000000 HAL_EXTI_GetConfigLine
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:522 .text.HAL_EXTI_GetConfigLine:000000ac $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:530 .text.HAL_EXTI_ClearConfigLine:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:536 .text.HAL_EXTI_ClearConfigLine:00000000 HAL_EXTI_ClearConfigLine
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:710 .text.HAL_EXTI_ClearConfigLine:00000090 $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:718 .text.HAL_EXTI_RegisterCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:724 .text.HAL_EXTI_RegisterCallback:00000000 HAL_EXTI_RegisterCallback
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:757 .text.HAL_EXTI_GetHandle:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:763 .text.HAL_EXTI_GetHandle:00000000 HAL_EXTI_GetHandle
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:795 .text.HAL_EXTI_IRQHandler:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:801 .text.HAL_EXTI_IRQHandler:00000000 HAL_EXTI_IRQHandler
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:866 .text.HAL_EXTI_IRQHandler:00000028 $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:872 .text.HAL_EXTI_GetPending:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:878 .text.HAL_EXTI_GetPending:00000000 HAL_EXTI_GetPending
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:932 .text.HAL_EXTI_GetPending:0000001c $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:937 .text.HAL_EXTI_ClearPending:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:943 .text.HAL_EXTI_ClearPending:00000000 HAL_EXTI_ClearPending
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:987 .text.HAL_EXTI_ClearPending:00000018 $d
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:992 .text.HAL_EXTI_GenerateSWI:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:998 .text.HAL_EXTI_GenerateSWI:00000000 HAL_EXTI_GenerateSWI
C:\Users\nived\AppData\Local\Temp\ccT69dI2.s:1039 .text.HAL_EXTI_GenerateSWI:00000018 $d
NO UNDEFINED SYMBOLS