ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.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, 2 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 .section .rodata.HAL_EXTI_SetConfigLine.str1.4,"aMS",%progbits,1 20 .align 2 21 .LC0: 22 0000 44726976 .ascii "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti" 22 6572732F 22 53544D33 22 32463378 22 785F4841 23 0033 2E6300 .ascii ".c\000" 24 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits 25 .align 1 26 .p2align 2,,3 27 .global HAL_EXTI_SetConfigLine 28 .syntax unified 29 .thumb 30 .thumb_func 32 HAL_EXTI_SetConfigLine: 33 .LVL0: 34 .LFB130: 35 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c" 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. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 2 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 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_ClearConfigLine(). 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(). ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 3 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_ClearPending(). 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" 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 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 4 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 144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 36 .loc 1 144 1 view -0 37 .cfi_startproc 38 @ args = 0, pretend = 0, frame = 0 39 @ frame_needed = 0, uses_anonymous_args = 0 145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 40 .loc 1 145 3 view .LVU1 146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval; 41 .loc 1 146 3 view .LVU2 147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos; 42 .loc 1 147 3 view .LVU3 148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 43 .loc 1 148 3 view .LVU4 149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 44 .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)) 45 .loc 1 152 3 view .LVU6 46 .loc 1 152 6 is_stmt 0 view .LVU7 47 0000 0028 cmp r0, #0 48 0002 00F08780 beq .L21 144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 49 .loc 1 144 1 discriminator 1 view .LVU8 50 0006 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr} 51 .LCFI0: 52 .cfi_def_cfa_offset 32 53 .cfi_offset 3, -32 54 .cfi_offset 4, -28 55 .cfi_offset 5, -24 56 .cfi_offset 6, -20 57 .cfi_offset 7, -16 58 .cfi_offset 8, -12 59 .cfi_offset 9, -8 60 .cfi_offset 14, -4 61 000a 0C46 mov r4, r1 62 .loc 1 152 23 discriminator 1 view .LVU9 63 000c 0029 cmp r1, #0 64 000e 00F08380 beq .L22 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)); 65 .loc 1 158 3 is_stmt 1 view .LVU10 66 0012 0A68 ldr r2, [r1] ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 5 67 0014 4A4B ldr r3, .L46 68 0016 1340 ands r3, r3, r2 69 0018 0546 mov r5, r0 70 001a 4BB9 cbnz r3, .L3 71 .loc 1 158 3 is_stmt 0 discriminator 2 view .LVU11 72 001c 02F0E063 and r3, r2, #117440512 73 0020 B3F1807F cmp r3, #16777216 74 0024 39D0 beq .L4 75 .loc 1 158 3 discriminator 3 view .LVU12 76 0026 02F04073 and r3, r2, #50331648 77 002a B3F1007F cmp r3, #33554432 78 002e 34D0 beq .L4 79 .LVL1: 80 .L3: 81 .loc 1 158 3 discriminator 9 view .LVU13 82 0030 4448 ldr r0, .L46+4 83 .LVL2: 84 .loc 1 158 3 discriminator 9 view .LVU14 85 0032 9E21 movs r1, #158 86 0034 FFF7FEFF bl assert_failed 87 .LVL3: 88 .L5: 159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode)); 89 .loc 1 159 3 is_stmt 1 view .LVU15 90 0038 6368 ldr r3, [r4, #4] 91 003a 9907 lsls r1, r3, #30 92 003c 02D0 beq .L6 93 .loc 1 159 3 is_stmt 0 discriminator 2 view .LVU16 94 003e 33F00303 bics r3, r3, #3 95 0042 03D0 beq .L7 96 .L6: 97 .loc 1 159 3 discriminator 3 view .LVU17 98 0044 3F48 ldr r0, .L46+4 99 0046 9F21 movs r1, #159 100 0048 FFF7FEFF bl assert_failed 101 .LVL4: 102 .L7: 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; 103 .loc 1 162 3 is_stmt 1 view .LVU18 104 .loc 1 162 28 is_stmt 0 view .LVU19 105 004c D4F80080 ldr r8, [r4] 106 .loc 1 162 15 view .LVU20 107 0050 C5F80080 str r8, [r5] 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); 108 .loc 1 165 3 is_stmt 1 view .LVU21 166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 109 .loc 1 167 12 is_stmt 0 view .LVU22 110 0054 0123 movs r3, #1 166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 111 .loc 1 166 11 view .LVU23 112 0056 08F01F09 and r9, r8, #31 168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 6 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) 113 .loc 1 170 6 view .LVU24 114 005a 18F0007F tst r8, #33554432 165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 115 .loc 1 165 10 view .LVU25 116 005e C8F30047 ubfx r7, r8, #16, #1 117 .LVL5: 166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 118 .loc 1 166 3 is_stmt 1 view .LVU26 167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 119 .loc 1 167 3 view .LVU27 167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 120 .loc 1 167 12 is_stmt 0 view .LVU28 121 0062 03FA09F5 lsl r5, r3, r9 122 .LVL6: 123 .loc 1 170 3 is_stmt 1 view .LVU29 124 .loc 1 170 6 is_stmt 0 view .LVU30 125 0066 1ED1 bne .L8 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)); 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)); 126 .loc 1 175 28 view .LVU31 127 0068 7E01 lsls r6, r7, #5 128 .LVL7: 129 .L9: 176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 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) 180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline; 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 **** { 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; 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)); 193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 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) 197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline; 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 **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 7 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; 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) 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)); 130 .loc 1 222 3 is_stmt 1 view .LVU32 131 .loc 1 222 11 is_stmt 0 view .LVU33 132 006a 06F18043 add r3, r6, #1073741824 133 006e 03F58233 add r3, r3, #66560 134 .LVL8: 223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 135 .loc 1 223 3 is_stmt 1 view .LVU34 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) 136 .loc 1 226 26 is_stmt 0 view .LVU35 137 0072 6168 ldr r1, [r4, #4] 223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 138 .loc 1 223 10 view .LVU36 139 0074 1A68 ldr r2, [r3] 140 .LVL9: 141 .loc 1 226 3 is_stmt 1 view .LVU37 142 .loc 1 226 6 is_stmt 0 view .LVU38 143 0076 C807 lsls r0, r1, #31 227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline; 144 .loc 1 228 5 is_stmt 1 view .LVU39 145 .loc 1 228 12 is_stmt 0 view .LVU40 146 0078 4CBF ite mi 147 007a 2A43 orrmi r2, r2, r5 148 .LVL10: 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; 149 .loc 1 232 5 is_stmt 1 view .LVU41 150 .loc 1 232 12 is_stmt 0 view .LVU42 151 007c AA43 bicpl r2, r2, r5 152 .LVL11: 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; 153 .loc 1 236 3 is_stmt 1 view .LVU43 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 8 154 .loc 1 236 12 is_stmt 0 view .LVU44 155 007e 1A60 str r2, [r3] 237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 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)); 156 .loc 1 239 3 is_stmt 1 view .LVU45 157 .loc 1 239 11 is_stmt 0 view .LVU46 158 0080 314B ldr r3, .L46+8 159 .LVL12: 240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 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) 160 .loc 1 243 26 view .LVU47 161 0082 6168 ldr r1, [r4, #4] 239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 162 .loc 1 239 11 view .LVU48 163 0084 F218 adds r2, r6, r3 164 .LVL13: 240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 165 .loc 1 240 3 is_stmt 1 view .LVU49 240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 166 .loc 1 240 10 is_stmt 0 view .LVU50 167 0086 F358 ldr r3, [r6, r3] 168 .LVL14: 169 .loc 1 243 3 is_stmt 1 view .LVU51 170 .loc 1 243 6 is_stmt 0 view .LVU52 171 0088 8907 lsls r1, r1, #30 244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= maskline; 172 .loc 1 245 5 is_stmt 1 view .LVU53 173 .loc 1 245 12 is_stmt 0 view .LVU54 174 008a 4CBF ite mi 175 008c 1D43 orrmi r5, r5, r3 176 .LVL15: 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; 177 .loc 1 249 5 is_stmt 1 view .LVU55 178 .loc 1 249 12 is_stmt 0 view .LVU56 179 008e 23EA0505 bicpl r5, r3, r5 180 .LVL16: 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; 181 .loc 1 253 3 is_stmt 1 view .LVU57 182 .loc 1 253 12 is_stmt 0 view .LVU58 183 0092 1560 str r5, [r2] 254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK; 184 .loc 1 255 3 is_stmt 1 view .LVU59 185 .loc 1 255 10 is_stmt 0 view .LVU60 186 0094 0020 movs r0, #0 256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 187 .loc 1 256 1 view .LVU61 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 9 188 0096 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc} 189 .LVL17: 190 .L4: 158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode)); 191 .loc 1 158 3 discriminator 8 view .LVU62 192 009a 2C4B ldr r3, .L46+12 193 009c 2C49 ldr r1, .L46+16 194 .LVL18: 158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode)); 195 .loc 1 158 3 discriminator 8 view .LVU63 196 009e 1340 ands r3, r3, r2 197 00a0 8B42 cmp r3, r1 198 00a2 C9D9 bls .L5 199 00a4 C4E7 b .L3 200 .LVL19: 201 .L8: 172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 202 .loc 1 172 5 is_stmt 1 view .LVU64 203 00a6 A268 ldr r2, [r4, #8] 204 00a8 32F00303 bics r3, r2, #3 205 00ac 37D1 bne .L43 206 .L10: 175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 207 .loc 1 175 5 view .LVU65 175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 208 .loc 1 175 28 is_stmt 0 view .LVU66 209 00ae 7E01 lsls r6, r7, #5 175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 210 .loc 1 175 13 view .LVU67 211 00b0 284B ldr r3, .L46+20 212 00b2 03EB4717 add r7, r3, r7, lsl #5 213 .LVL20: 176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 214 .loc 1 176 5 is_stmt 1 view .LVU68 176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 215 .loc 1 176 12 is_stmt 0 view .LVU69 216 00b6 F358 ldr r3, [r6, r3] 217 .LVL21: 179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 218 .loc 1 179 5 is_stmt 1 view .LVU70 179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 219 .loc 1 179 8 is_stmt 0 view .LVU71 220 00b8 D207 lsls r2, r2, #31 181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 221 .loc 1 181 7 is_stmt 1 view .LVU72 181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 222 .loc 1 181 14 is_stmt 0 view .LVU73 223 00ba 4CBF ite mi 224 00bc 2B43 orrmi r3, r3, r5 225 .LVL22: 185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 226 .loc 1 185 7 is_stmt 1 view .LVU74 185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 227 .loc 1 185 14 is_stmt 0 view .LVU75 228 00be AB43 bicpl r3, r3, r5 229 .LVL23: 189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 10 230 .loc 1 189 5 is_stmt 1 view .LVU76 189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 231 .loc 1 189 14 is_stmt 0 view .LVU77 232 00c0 3B60 str r3, [r7] 192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 233 .loc 1 192 5 is_stmt 1 view .LVU78 192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 234 .loc 1 192 13 is_stmt 0 view .LVU79 235 00c2 254B ldr r3, .L46+24 236 .LVL24: 196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 237 .loc 1 196 31 view .LVU80 238 00c4 A168 ldr r1, [r4, #8] 193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 239 .loc 1 193 12 view .LVU81 240 00c6 F258 ldr r2, [r6, r3] 241 .LVL25: 196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 242 .loc 1 196 8 view .LVU82 243 00c8 8F07 lsls r7, r1, #30 244 .LVL26: 192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 245 .loc 1 192 13 view .LVU83 246 00ca 3344 add r3, r3, r6 247 .LVL27: 193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 248 .loc 1 193 5 is_stmt 1 view .LVU84 196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 249 .loc 1 196 5 view .LVU85 198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 250 .loc 1 198 7 view .LVU86 198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 251 .loc 1 198 14 is_stmt 0 view .LVU87 252 00cc 4CBF ite mi 253 00ce 2A43 orrmi r2, r2, r5 254 .LVL28: 202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 255 .loc 1 202 7 is_stmt 1 view .LVU88 202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 256 .loc 1 202 14 is_stmt 0 view .LVU89 257 00d0 AA43 bicpl r2, r2, r5 258 .LVL29: 206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 259 .loc 1 206 5 is_stmt 1 view .LVU90 206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 260 .loc 1 206 14 is_stmt 0 view .LVU91 261 00d2 1A60 str r2, [r3] 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 262 .loc 1 209 5 is_stmt 1 view .LVU92 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 263 .loc 1 209 28 is_stmt 0 view .LVU93 264 00d4 2368 ldr r3, [r4] 265 .LVL30: 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 266 .loc 1 209 28 view .LVU94 267 00d6 03F0C063 and r3, r3, #100663296 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 11 268 .loc 1 209 8 view .LVU95 269 00da B3F1C06F cmp r3, #100663296 270 00de C4D1 bne .L9 211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos)); 271 .loc 1 211 7 is_stmt 1 view .LVU96 272 00e0 E368 ldr r3, [r4, #12] 273 00e2 052B cmp r3, #5 274 00e4 21D8 bhi .L44 275 .LVL31: 276 .L15: 212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 277 .loc 1 212 7 view .LVU97 278 00e6 18F0100F tst r8, #16 279 00ea 23D1 bne .L45 280 .L16: 214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 281 .loc 1 214 7 view .LVU98 282 00ec 09F01C02 and r2, r9, #28 283 00f0 02F18042 add r2, r2, #1073741824 284 00f4 02F58032 add r2, r2, #65536 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 285 .loc 1 216 39 is_stmt 0 view .LVU99 286 00f8 E168 ldr r1, [r4, #12] 214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 287 .loc 1 214 14 view .LVU100 288 00fa 9068 ldr r0, [r2, #8] 289 .LVL32: 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 290 .loc 1 215 7 is_stmt 1 view .LVU101 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 291 .loc 1 215 80 is_stmt 0 view .LVU102 292 00fc 08F00303 and r3, r8, #3 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 293 .loc 1 215 69 view .LVU103 294 0100 9B00 lsls r3, r3, #2 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 295 .loc 1 215 40 view .LVU104 296 0102 0F27 movs r7, #15 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 297 .loc 1 216 39 view .LVU105 298 0104 9940 lsls r1, r1, r3 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 299 .loc 1 215 40 view .LVU106 300 0106 07FA03F3 lsl r3, r7, r3 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 301 .loc 1 215 14 view .LVU107 302 010a 20EA0303 bic r3, r0, r3 303 .LVL33: 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 304 .loc 1 216 7 is_stmt 1 view .LVU108 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 305 .loc 1 216 14 is_stmt 0 view .LVU109 306 010e 1943 orrs r1, r1, r3 307 .LVL34: 217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 308 .loc 1 217 7 is_stmt 1 view .LVU110 217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 12 309 .loc 1 217 37 is_stmt 0 view .LVU111 310 0110 9160 str r1, [r2, #8] 311 0112 AAE7 b .L9 312 .LVL35: 313 .L21: 314 .LCFI1: 315 .cfi_def_cfa_offset 0 316 .cfi_restore 3 317 .cfi_restore 4 318 .cfi_restore 5 319 .cfi_restore 6 320 .cfi_restore 7 321 .cfi_restore 8 322 .cfi_restore 9 323 .cfi_restore 14 154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 324 .loc 1 154 12 view .LVU112 325 0114 0120 movs r0, #1 326 .LVL36: 327 .loc 1 256 1 view .LVU113 328 0116 7047 bx lr 329 .LVL37: 330 .L22: 331 .LCFI2: 332 .cfi_def_cfa_offset 32 333 .cfi_offset 3, -32 334 .cfi_offset 4, -28 335 .cfi_offset 5, -24 336 .cfi_offset 6, -20 337 .cfi_offset 7, -16 338 .cfi_offset 8, -12 339 .cfi_offset 9, -8 340 .cfi_offset 14, -4 154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 341 .loc 1 154 12 view .LVU114 342 0118 0120 movs r0, #1 343 .LVL38: 344 .loc 1 256 1 view .LVU115 345 011a BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc} 346 .LVL39: 347 .L43: 172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 348 .loc 1 172 5 discriminator 1 view .LVU116 349 011e 0948 ldr r0, .L46+4 350 0120 AC21 movs r1, #172 351 0122 FFF7FEFF bl assert_failed 352 .LVL40: 179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 353 .loc 1 179 21 discriminator 1 view .LVU117 354 0126 A268 ldr r2, [r4, #8] 355 0128 C1E7 b .L10 356 .LVL41: 357 .L44: 211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos)); 358 .loc 1 211 7 discriminator 1 view .LVU118 359 012a 0648 ldr r0, .L46+4 360 012c D321 movs r1, #211 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 13 361 012e FFF7FEFF bl assert_failed 362 .LVL42: 211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos)); 363 .loc 1 211 7 discriminator 1 view .LVU119 364 0132 D8E7 b .L15 365 .L45: 212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 366 .loc 1 212 7 discriminator 1 view .LVU120 367 0134 0348 ldr r0, .L46+4 368 0136 D421 movs r1, #212 369 0138 FFF7FEFF bl assert_failed 370 .LVL43: 371 013c D6E7 b .L16 372 .L47: 373 013e 00BF .align 2 374 .L46: 375 0140 E0FFFEF8 .word -117506080 376 0144 00000000 .word .LC0 377 0148 04040140 .word 1073808388 378 014c 1F000100 .word 65567 379 0150 03000100 .word 65539 380 0154 08040140 .word 1073808392 381 0158 0C040140 .word 1073808396 382 .cfi_endproc 383 .LFE130: 385 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits 386 .align 1 387 .p2align 2,,3 388 .global HAL_EXTI_GetConfigLine 389 .syntax unified 390 .thumb 391 .thumb_func 393 HAL_EXTI_GetConfigLine: 394 .LVL44: 395 .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 **** { 396 .loc 1 265 1 is_stmt 1 view -0 397 .cfi_startproc 398 @ args = 0, pretend = 0, frame = 0 399 @ frame_needed = 0, uses_anonymous_args = 0 266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 400 .loc 1 266 3 view .LVU122 267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval; 401 .loc 1 267 3 view .LVU123 268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos; 402 .loc 1 268 3 view .LVU124 269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 403 .loc 1 269 3 view .LVU125 270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 14 404 .loc 1 270 3 view .LVU126 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)) 405 .loc 1 273 3 view .LVU127 406 .loc 1 273 6 is_stmt 0 view .LVU128 407 0000 0028 cmp r0, #0 408 0002 62D0 beq .L59 265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 409 .loc 1 265 1 discriminator 1 view .LVU129 410 0004 70B5 push {r4, r5, r6, lr} 411 .LCFI3: 412 .cfi_def_cfa_offset 16 413 .cfi_offset 4, -16 414 .cfi_offset 5, -12 415 .cfi_offset 6, -8 416 .cfi_offset 14, -4 417 0006 0C46 mov r4, r1 418 .loc 1 273 23 discriminator 1 view .LVU130 419 0008 0029 cmp r1, #0 420 000a 60D0 beq .L60 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)); 421 .loc 1 279 3 is_stmt 1 view .LVU131 422 000c 0568 ldr r5, [r0] 423 000e 344B ldr r3, .L83 424 0010 2B40 ands r3, r3, r5 425 0012 0646 mov r6, r0 426 0014 4BB9 cbnz r3, .L50 427 .loc 1 279 3 is_stmt 0 discriminator 2 view .LVU132 428 0016 05F0E063 and r3, r5, #117440512 429 001a B3F1807F cmp r3, #16777216 430 001e 3DD0 beq .L51 431 .loc 1 279 3 discriminator 3 view .LVU133 432 0020 05F04073 and r3, r5, #50331648 433 0024 B3F1007F cmp r3, #33554432 434 0028 38D0 beq .L51 435 .L50: 436 .loc 1 279 3 discriminator 9 view .LVU134 437 002a 2E48 ldr r0, .L83+4 438 .LVL45: 439 .loc 1 279 3 discriminator 9 view .LVU135 440 002c 40F21711 movw r1, #279 441 .LVL46: 442 .loc 1 279 3 discriminator 9 view .LVU136 443 0030 FFF7FEFF bl assert_failed 444 .LVL47: 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; 445 .loc 1 282 28 discriminator 9 view .LVU137 446 0034 3568 ldr r5, [r6] 447 .L52: ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 15 448 .loc 1 282 3 is_stmt 1 view .LVU138 449 .loc 1 282 21 is_stmt 0 view .LVU139 450 0036 2560 str r5, [r4] 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); 451 .loc 1 285 3 is_stmt 1 view .LVU140 452 .LVL48: 286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 453 .loc 1 286 3 view .LVU141 285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK); 454 .loc 1 285 10 is_stmt 0 view .LVU142 455 0038 C5F30040 ubfx r0, r5, #16, #1 287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 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)); 456 .loc 1 290 25 view .LVU143 457 003c 4001 lsls r0, r0, #5 458 .loc 1 290 11 view .LVU144 459 003e 00F18043 add r3, r0, #1073741824 460 0042 03F58233 add r3, r3, #66560 286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 461 .loc 1 286 11 view .LVU145 462 0046 05F01F06 and r6, r5, #31 463 .LVL49: 287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 464 .loc 1 287 3 is_stmt 1 view .LVU146 291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 465 .loc 1 291 10 is_stmt 0 view .LVU147 466 004a 1A68 ldr r2, [r3] 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 */ 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if ((regval & maskline) != 0x00u) 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; 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)); 467 .loc 1 304 11 view .LVU148 468 004c 2649 ldr r1, .L83+8 287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 469 .loc 1 287 12 view .LVU149 470 004e 0123 movs r3, #1 471 0050 B340 lsls r3, r3, r6 472 .LVL50: 290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 473 .loc 1 290 3 is_stmt 1 view .LVU150 291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 474 .loc 1 291 3 view .LVU151 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 475 .loc 1 294 3 view .LVU152 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 16 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 476 .loc 1 294 6 is_stmt 0 view .LVU153 477 0052 1342 tst r3, r2 478 0054 14BF ite ne 479 0056 0122 movne r2, #1 480 .LVL51: 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 481 .loc 1 294 6 view .LVU154 482 0058 0022 moveq r2, #0 483 005a 6260 str r2, [r4, #4] 484 .loc 1 304 3 is_stmt 1 view .LVU155 485 .LVL52: 305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 486 .loc 1 305 3 view .LVU156 487 .loc 1 305 10 is_stmt 0 view .LVU157 488 005c 4158 ldr r1, [r0, r1] 489 .LVL53: 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) 490 .loc 1 308 3 is_stmt 1 view .LVU158 491 .loc 1 308 6 is_stmt 0 view .LVU159 492 005e 0B42 tst r3, r1 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; 493 .loc 1 310 5 is_stmt 1 view .LVU160 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; 494 .loc 1 314 3 view .LVU161 310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 495 .loc 1 310 23 is_stmt 0 view .LVU162 496 0060 1CBF itt ne 497 0062 42F00202 orrne r2, r2, #2 498 0066 6260 strne r2, [r4, #4] 499 .loc 1 314 24 view .LVU163 500 0068 0022 movs r2, #0 315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u; 501 .loc 1 315 24 view .LVU164 502 006a C4E90222 strd r2, r2, [r4, #8] 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) 503 .loc 1 318 3 is_stmt 1 view .LVU165 504 .loc 1 318 6 is_stmt 0 view .LVU166 505 006e AA01 lsls r2, r5, #6 506 0070 12D5 bpl .L80 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)); 507 .loc 1 320 5 is_stmt 1 view .LVU167 508 .loc 1 320 13 is_stmt 0 view .LVU168 509 0072 1E4A ldr r2, .L83+12 510 .LVL54: 321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 511 .loc 1 321 5 is_stmt 1 view .LVU169 512 .loc 1 321 12 is_stmt 0 view .LVU170 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 17 513 0074 8258 ldr r2, [r0, r2] 514 .LVL55: 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) 515 .loc 1 324 5 is_stmt 1 view .LVU171 516 .loc 1 324 8 is_stmt 0 view .LVU172 517 0076 1342 tst r3, r2 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; 518 .loc 1 326 7 is_stmt 1 view .LVU173 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)); 519 .loc 1 330 5 view .LVU174 326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 520 .loc 1 326 28 is_stmt 0 view .LVU175 521 0078 1CBF itt ne 522 007a 0122 movne r2, #1 523 .LVL56: 326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 524 .loc 1 326 28 view .LVU176 525 007c A260 strne r2, [r4, #8] 526 .loc 1 330 13 view .LVU177 527 007e 1C4A ldr r2, .L83+16 528 .LVL57: 331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = *regaddr; 529 .loc 1 331 5 is_stmt 1 view .LVU178 530 .loc 1 331 12 is_stmt 0 view .LVU179 531 0080 8258 ldr r2, [r0, r2] 532 .LVL58: 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) 533 .loc 1 334 5 is_stmt 1 view .LVU180 534 .loc 1 334 8 is_stmt 0 view .LVU181 535 0082 1342 tst r3, r2 536 0084 03D0 beq .L56 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; 537 .loc 1 336 7 is_stmt 1 view .LVU182 538 .loc 1 336 28 is_stmt 0 view .LVU183 539 0086 A368 ldr r3, [r4, #8] 540 .LVL59: 541 .loc 1 336 28 view .LVU184 542 0088 43F00203 orr r3, r3, #2 543 008c A360 str r3, [r4, #8] 544 .L56: 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) 545 .loc 1 340 5 is_stmt 1 view .LVU185 546 .loc 1 340 28 is_stmt 0 view .LVU186 547 008e 05F0C063 and r3, r5, #100663296 548 .loc 1 340 8 view .LVU187 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 18 549 0092 B3F1C06F cmp r3, #100663296 550 0096 07D0 beq .L81 551 .LVL60: 552 .L80: 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; 553 .loc 1 349 10 view .LVU188 554 0098 0020 movs r0, #0 555 .LVL61: 556 .L49: 350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 557 .loc 1 350 1 view .LVU189 558 009a 70BD pop {r4, r5, r6, pc} 559 .LVL62: 560 .L51: 279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 561 .loc 1 279 3 discriminator 8 view .LVU190 562 009c 154B ldr r3, .L83+20 563 009e 164A ldr r2, .L83+24 564 00a0 2B40 ands r3, r3, r5 565 00a2 9342 cmp r3, r2 566 00a4 C7D9 bls .L52 567 00a6 C0E7 b .L50 568 .LVL63: 569 .L81: 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 570 .loc 1 342 7 is_stmt 1 view .LVU191 571 00a8 EB06 lsls r3, r5, #27 572 00aa 12D4 bmi .L82 573 .LVL64: 574 .L58: 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX 575 .loc 1 344 7 view .LVU192 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX 576 .loc 1 344 39 is_stmt 0 view .LVU193 577 00ac B608 lsrs r6, r6, #2 578 .LVL65: 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX 579 .loc 1 344 14 view .LVU194 580 00ae 134B ldr r3, .L83+28 581 00b0 0236 adds r6, r6, #2 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 582 .loc 1 345 78 view .LVU195 583 00b2 05F00305 and r5, r5, #3 584 .LVL66: 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX 585 .loc 1 344 14 view .LVU196 586 00b6 53F82630 ldr r3, [r3, r6, lsl #2] 587 .LVL67: 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 19 588 .loc 1 345 7 is_stmt 1 view .LVU197 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 589 .loc 1 345 67 is_stmt 0 view .LVU198 590 00ba AD00 lsls r5, r5, #2 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 591 .loc 1 345 38 view .LVU199 592 00bc 23FA05F5 lsr r5, r3, r5 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 593 .loc 1 345 89 view .LVU200 594 00c0 05F00F05 and r5, r5, #15 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 595 .loc 1 345 28 view .LVU201 596 00c4 E560 str r5, [r4, #12] 349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 597 .loc 1 349 10 view .LVU202 598 00c6 0020 movs r0, #0 599 00c8 E7E7 b .L49 600 .LVL68: 601 .L59: 602 .LCFI4: 603 .cfi_def_cfa_offset 0 604 .cfi_restore 4 605 .cfi_restore 5 606 .cfi_restore 6 607 .cfi_restore 14 275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 608 .loc 1 275 12 view .LVU203 609 00ca 0120 movs r0, #1 610 .LVL69: 611 .loc 1 350 1 view .LVU204 612 00cc 7047 bx lr 613 .LVL70: 614 .L60: 615 .LCFI5: 616 .cfi_def_cfa_offset 16 617 .cfi_offset 4, -16 618 .cfi_offset 5, -12 619 .cfi_offset 6, -8 620 .cfi_offset 14, -4 275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 621 .loc 1 275 12 view .LVU205 622 00ce 0120 movs r0, #1 623 .LVL71: 624 .loc 1 350 1 view .LVU206 625 00d0 70BD pop {r4, r5, r6, pc} 626 .LVL72: 627 .L82: 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 628 .loc 1 342 7 discriminator 1 view .LVU207 629 00d2 0448 ldr r0, .L83+4 630 .LVL73: 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 631 .loc 1 342 7 discriminator 1 view .LVU208 632 00d4 4FF4AB71 mov r1, #342 633 00d8 FFF7FEFF bl assert_failed 634 .LVL74: 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 20 635 .loc 1 342 7 discriminator 1 view .LVU209 636 00dc E6E7 b .L58 637 .L84: 638 00de 00BF .align 2 639 .L83: 640 00e0 E0FFFEF8 .word -117506080 641 00e4 00000000 .word .LC0 642 00e8 04040140 .word 1073808388 643 00ec 08040140 .word 1073808392 644 00f0 0C040140 .word 1073808396 645 00f4 1F000100 .word 65567 646 00f8 03000100 .word 65539 647 00fc 00000140 .word 1073807360 648 .cfi_endproc 649 .LFE131: 651 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits 652 .align 1 653 .p2align 2,,3 654 .global HAL_EXTI_ClearConfigLine 655 .syntax unified 656 .thumb 657 .thumb_func 659 HAL_EXTI_ClearConfigLine: 660 .LVL75: 661 .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 **** { 662 .loc 1 358 1 is_stmt 1 view -0 663 .cfi_startproc 664 @ args = 0, pretend = 0, frame = 0 665 @ frame_needed = 0, uses_anonymous_args = 0 359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 666 .loc 1 359 3 view .LVU211 360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval; 667 .loc 1 360 3 view .LVU212 361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos; 668 .loc 1 361 3 view .LVU213 362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 669 .loc 1 362 3 view .LVU214 363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 670 .loc 1 363 3 view .LVU215 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) 671 .loc 1 366 3 view .LVU216 672 .loc 1 366 6 is_stmt 0 view .LVU217 673 0000 0028 cmp r0, #0 674 0002 5AD0 beq .L93 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 **** } ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 21 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)); 675 .loc 1 372 3 is_stmt 1 view .LVU218 358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 676 .loc 1 358 1 is_stmt 0 view .LVU219 677 0004 70B5 push {r4, r5, r6, lr} 678 .LCFI6: 679 .cfi_def_cfa_offset 16 680 .cfi_offset 4, -16 681 .cfi_offset 5, -12 682 .cfi_offset 6, -8 683 .cfi_offset 14, -4 684 .loc 1 372 3 view .LVU220 685 0006 314B ldr r3, .L107 686 0008 0568 ldr r5, [r0] 687 000a 2B40 ands r3, r3, r5 688 000c 0446 mov r4, r0 689 000e 4BB9 cbnz r3, .L87 690 .loc 1 372 3 discriminator 2 view .LVU221 691 0010 05F0E063 and r3, r5, #117440512 692 0014 B3F1807F cmp r3, #16777216 693 0018 35D0 beq .L88 694 .loc 1 372 3 discriminator 3 view .LVU222 695 001a 05F04073 and r3, r5, #50331648 696 001e B3F1007F cmp r3, #33554432 697 0022 30D0 beq .L88 698 .L87: 699 .loc 1 372 3 discriminator 9 view .LVU223 700 0024 2A48 ldr r0, .L107+4 701 .LVL76: 702 .loc 1 372 3 discriminator 9 view .LVU224 703 0026 4FF4BA71 mov r1, #372 704 002a FFF7FEFF bl assert_failed 705 .LVL77: 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); 706 .loc 1 375 19 discriminator 9 view .LVU225 707 002e 2568 ldr r5, [r4] 708 .L89: 709 .loc 1 375 3 is_stmt 1 view .LVU226 710 .LVL78: 376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK); 711 .loc 1 376 3 view .LVU227 375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK); 712 .loc 1 375 10 is_stmt 0 view .LVU228 713 0030 C5F30043 ubfx r3, r5, #16, #1 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 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)); 714 .loc 1 380 25 view .LVU229 715 0034 5B01 lsls r3, r3, #5 716 .loc 1 380 11 view .LVU230 717 0036 03F18041 add r1, r3, #1073741824 718 003a 01F58231 add r1, r1, #66560 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 22 376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 719 .loc 1 376 11 view .LVU231 720 003e 05F01F06 and r6, r5, #31 721 .LVL79: 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 722 .loc 1 377 3 is_stmt 1 view .LVU232 723 .loc 1 380 3 view .LVU233 381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 724 .loc 1 381 3 view .LVU234 725 .loc 1 381 13 is_stmt 0 view .LVU235 726 0042 0868 ldr r0, [r1] 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 727 .loc 1 377 12 view .LVU236 728 0044 0122 movs r2, #1 729 0046 B240 lsls r2, r2, r6 730 .LVL80: 731 .loc 1 381 10 view .LVU237 732 0048 20EA0200 bic r0, r0, r2 733 .LVL81: 382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 734 .loc 1 382 3 is_stmt 1 view .LVU238 735 .loc 1 382 12 is_stmt 0 view .LVU239 736 004c 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)); 737 .loc 1 385 3 is_stmt 1 view .LVU240 738 .loc 1 385 11 is_stmt 0 view .LVU241 739 004e 2148 ldr r0, .L107+8 740 .LVL82: 386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 741 .loc 1 386 3 is_stmt 1 view .LVU242 742 .loc 1 386 13 is_stmt 0 view .LVU243 743 0050 1958 ldr r1, [r3, r0] 744 .LVL83: 381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 745 .loc 1 381 24 view .LVU244 746 0052 6FEA020C mvn ip, r2 747 .loc 1 386 10 view .LVU245 748 0056 21EA0202 bic r2, r1, r2 749 .LVL84: 387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 750 .loc 1 387 3 is_stmt 1 view .LVU246 751 .loc 1 387 12 is_stmt 0 view .LVU247 752 005a 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) 753 .loc 1 390 3 is_stmt 1 view .LVU248 754 .loc 1 390 20 is_stmt 0 view .LVU249 755 005c 2268 ldr r2, [r4] 756 .LVL85: 757 .loc 1 390 6 view .LVU250 758 005e 9201 lsls r2, r2, #6 759 0060 0FD5 bpl .L104 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)); ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 23 760 .loc 1 392 5 is_stmt 1 view .LVU251 761 .loc 1 392 13 is_stmt 0 view .LVU252 762 0062 1D48 ldr r0, .L107+12 763 .LVL86: 393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 764 .loc 1 393 5 is_stmt 1 view .LVU253 394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 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)); 765 .loc 1 396 13 is_stmt 0 view .LVU254 766 0064 1D49 ldr r1, .L107+16 393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 767 .loc 1 393 15 view .LVU255 768 0066 1A58 ldr r2, [r3, r0] 393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 769 .loc 1 393 12 view .LVU256 770 0068 0CEA0202 and r2, ip, r2 771 .LVL87: 394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 772 .loc 1 394 5 is_stmt 1 view .LVU257 394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 773 .loc 1 394 14 is_stmt 0 view .LVU258 774 006c 1A50 str r2, [r3, r0] 775 .loc 1 396 5 is_stmt 1 view .LVU259 776 .LVL88: 397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & ~maskline); 777 .loc 1 397 5 view .LVU260 778 .loc 1 397 15 is_stmt 0 view .LVU261 779 006e 5A58 ldr r2, [r3, r1] 780 .LVL89: 781 .loc 1 397 12 view .LVU262 782 0070 0CEA0202 and r2, ip, r2 783 .LVL90: 398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = regval; 784 .loc 1 398 5 is_stmt 1 view .LVU263 785 .loc 1 398 14 is_stmt 0 view .LVU264 786 0074 5A50 str r2, [r3, r1] 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) 787 .loc 1 401 5 is_stmt 1 view .LVU265 788 .loc 1 401 22 is_stmt 0 view .LVU266 789 0076 2368 ldr r3, [r4] 790 .LVL91: 791 .loc 1 401 22 view .LVU267 792 0078 03F0C063 and r3, r3, #100663296 793 .loc 1 401 8 view .LVU268 794 007c B3F1C06F cmp r3, #100663296 795 0080 07D0 beq .L105 796 .LVL92: 797 .L104: 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; ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 24 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; 798 .loc 1 411 10 view .LVU269 799 0082 0020 movs r0, #0 412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 800 .loc 1 412 1 view .LVU270 801 0084 70BD pop {r4, r5, r6, pc} 802 .LVL93: 803 .L88: 372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 804 .loc 1 372 3 discriminator 8 view .LVU271 805 0086 164B ldr r3, .L107+20 806 0088 164A ldr r2, .L107+24 807 008a 2B40 ands r3, r3, r5 808 008c 9342 cmp r3, r2 809 008e CFD9 bls .L89 810 0090 C8E7 b .L87 811 .LVL94: 812 .L105: 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 813 .loc 1 403 7 is_stmt 1 view .LVU272 814 0092 EB06 lsls r3, r5, #27 815 0094 13D4 bmi .L106 816 .LVL95: 817 .L92: 405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 818 .loc 1 405 7 view .LVU273 819 0096 06F01C06 and r6, r6, #28 820 .LVL96: 405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 821 .loc 1 405 7 is_stmt 0 view .LVU274 822 009a 06F18046 add r6, r6, #1073741824 823 009e 06F58036 add r6, r6, #65536 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 824 .loc 1 406 80 view .LVU275 825 00a2 05F00305 and r5, r5, #3 826 .LVL97: 405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); 827 .loc 1 405 14 view .LVU276 828 00a6 B368 ldr r3, [r6, #8] 829 .LVL98: 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 830 .loc 1 406 7 is_stmt 1 view .LVU277 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 831 .loc 1 406 40 is_stmt 0 view .LVU278 832 00a8 0F22 movs r2, #15 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 833 .loc 1 406 69 view .LVU279 834 00aa AD00 lsls r5, r5, #2 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 835 .loc 1 406 40 view .LVU280 836 00ac 02FA05F5 lsl r5, r2, r5 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval; 837 .loc 1 406 14 view .LVU281 838 00b0 23EA0505 bic r5, r3, r5 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 25 839 .LVL99: 407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 840 .loc 1 407 7 is_stmt 1 view .LVU282 407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 841 .loc 1 407 37 is_stmt 0 view .LVU283 842 00b4 B560 str r5, [r6, #8] 411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 843 .loc 1 411 10 view .LVU284 844 00b6 0020 movs r0, #0 845 .loc 1 412 1 view .LVU285 846 00b8 70BD pop {r4, r5, r6, pc} 847 .LVL100: 848 .L93: 849 .LCFI7: 850 .cfi_def_cfa_offset 0 851 .cfi_restore 4 852 .cfi_restore 5 853 .cfi_restore 6 854 .cfi_restore 14 368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 855 .loc 1 368 12 view .LVU286 856 00ba 0120 movs r0, #1 857 .LVL101: 858 .loc 1 412 1 view .LVU287 859 00bc 7047 bx lr 860 .LVL102: 861 .L106: 862 .LCFI8: 863 .cfi_def_cfa_offset 16 864 .cfi_offset 4, -16 865 .cfi_offset 5, -12 866 .cfi_offset 6, -8 867 .cfi_offset 14, -4 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 868 .loc 1 403 7 discriminator 1 view .LVU288 869 00be 0448 ldr r0, .L107+4 870 00c0 40F29311 movw r1, #403 871 .LVL103: 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 872 .loc 1 403 7 discriminator 1 view .LVU289 873 00c4 FFF7FEFF bl assert_failed 874 .LVL104: 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 875 .loc 1 403 7 discriminator 1 view .LVU290 876 00c8 E5E7 b .L92 877 .L108: 878 00ca 00BF .align 2 879 .L107: 880 00cc E0FFFEF8 .word -117506080 881 00d0 00000000 .word .LC0 882 00d4 04040140 .word 1073808388 883 00d8 08040140 .word 1073808392 884 00dc 0C040140 .word 1073808396 885 00e0 1F000100 .word 65567 886 00e4 03000100 .word 65539 887 .cfi_endproc 888 .LFE132: ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 26 890 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits 891 .align 1 892 .p2align 2,,3 893 .global HAL_EXTI_RegisterCallback 894 .syntax unified 895 .thumb 896 .thumb_func 898 HAL_EXTI_RegisterCallback: 899 .LVL105: 900 .LFB133: 413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 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 **** { 901 .loc 1 423 1 is_stmt 1 view -0 902 .cfi_startproc 903 @ args = 0, pretend = 0, frame = 0 904 @ frame_needed = 0, uses_anonymous_args = 0 905 @ link register save eliminated. 424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK; 906 .loc 1 424 3 view .LVU292 425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** switch (CallbackID) 907 .loc 1 426 3 view .LVU293 908 0000 11B9 cbnz r1, .L111 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; 909 .loc 1 429 7 view .LVU294 910 .loc 1 429 30 is_stmt 0 view .LVU295 911 0002 4260 str r2, [r0, #4] 430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** break; 912 .loc 1 430 7 is_stmt 1 view .LVU296 424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 913 .loc 1 424 21 is_stmt 0 view .LVU297 914 0004 0846 mov r0, r1 915 .LVL106: 916 .loc 1 430 7 view .LVU298 917 0006 7047 bx lr 918 .LVL107: 919 .L111: 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; 920 .loc 1 433 14 view .LVU299 921 0008 0120 movs r0, #1 922 .LVL108: 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 **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 27 437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return status; 923 .loc 1 437 3 is_stmt 1 view .LVU300 438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 924 .loc 1 438 1 is_stmt 0 view .LVU301 925 000a 7047 bx lr 926 .cfi_endproc 927 .LFE133: 929 .section .text.HAL_EXTI_GetHandle,"ax",%progbits 930 .align 1 931 .p2align 2,,3 932 .global HAL_EXTI_GetHandle 933 .syntax unified 934 .thumb 935 .thumb_func 937 HAL_EXTI_GetHandle: 938 .LVL109: 939 .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 **** { 940 .loc 1 448 1 is_stmt 1 view -0 941 .cfi_startproc 942 @ args = 0, pretend = 0, frame = 0 943 @ frame_needed = 0, uses_anonymous_args = 0 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)); 944 .loc 1 450 3 view .LVU303 448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check the parameters */ 945 .loc 1 448 1 is_stmt 0 view .LVU304 946 0000 38B5 push {r3, r4, r5, lr} 947 .LCFI9: 948 .cfi_def_cfa_offset 16 949 .cfi_offset 3, -16 950 .cfi_offset 4, -12 951 .cfi_offset 5, -8 952 .cfi_offset 14, -4 953 .loc 1 450 3 view .LVU305 954 0002 124B ldr r3, .L122 955 0004 0B40 ands r3, r3, r1 448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** /* Check the parameters */ 956 .loc 1 448 1 view .LVU306 957 0006 0C46 mov r4, r1 958 0008 0546 mov r5, r0 959 .loc 1 450 3 view .LVU307 960 000a 4BB9 cbnz r3, .L113 961 .loc 1 450 3 discriminator 2 view .LVU308 962 000c 01F0E063 and r3, r1, #117440512 963 0010 B3F1807F cmp r3, #16777216 964 0014 0DD0 beq .L114 965 .loc 1 450 3 discriminator 3 view .LVU309 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 28 966 0016 01F04073 and r3, r1, #50331648 967 001a B3F1007F cmp r3, #33554432 968 001e 08D0 beq .L114 969 .L113: 970 .loc 1 450 3 discriminator 9 view .LVU310 971 0020 0B48 ldr r0, .L122+4 972 .LVL110: 973 .loc 1 450 3 discriminator 9 view .LVU311 974 0022 4FF4E171 mov r1, #450 975 .LVL111: 976 .loc 1 450 3 discriminator 9 view .LVU312 977 0026 FFF7FEFF bl assert_failed 978 .LVL112: 979 .L115: 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) 980 .loc 1 453 3 is_stmt 1 view .LVU313 981 .loc 1 453 6 is_stmt 0 view .LVU314 982 002a 6DB1 cbz r5, .L117 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; 983 .loc 1 460 5 is_stmt 1 view .LVU315 984 .loc 1 460 17 is_stmt 0 view .LVU316 985 002c 2C60 str r4, [r5] 461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return HAL_OK; 986 .loc 1 462 5 is_stmt 1 view .LVU317 987 .loc 1 462 12 is_stmt 0 view .LVU318 988 002e 0020 movs r0, #0 463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 989 .loc 1 464 1 view .LVU319 990 0030 38BD pop {r3, r4, r5, pc} 991 .LVL113: 992 .L114: 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 993 .loc 1 450 3 discriminator 8 view .LVU320 994 0032 084B ldr r3, .L122+8 995 0034 084A ldr r2, .L122+12 996 0036 2340 ands r3, r3, r4 997 0038 9342 cmp r3, r2 998 003a F6D9 bls .L115 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 999 .loc 1 450 3 view .LVU321 1000 003c 0448 ldr r0, .L122+4 1001 .LVL114: 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1002 .loc 1 450 3 view .LVU322 1003 003e 4FF4E171 mov r1, #450 1004 .LVL115: 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 29 1005 .loc 1 450 3 view .LVU323 1006 0042 FFF7FEFF bl assert_failed 1007 .LVL116: 1008 0046 F0E7 b .L115 1009 .L117: 455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 1010 .loc 1 455 12 view .LVU324 1011 0048 0120 movs r0, #1 1012 .loc 1 464 1 view .LVU325 1013 004a 38BD pop {r3, r4, r5, pc} 1014 .LVL117: 1015 .L123: 1016 .loc 1 464 1 view .LVU326 1017 .align 2 1018 .L122: 1019 004c E0FFFEF8 .word -117506080 1020 0050 00000000 .word .LC0 1021 0054 1F000100 .word 65567 1022 0058 03000100 .word 65539 1023 .cfi_endproc 1024 .LFE134: 1026 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits 1027 .align 1 1028 .p2align 2,,3 1029 .global HAL_EXTI_IRQHandler 1030 .syntax unified 1031 .thumb 1032 .thumb_func 1034 HAL_EXTI_IRQHandler: 1035 .LVL118: 1036 .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 **** { 1037 .loc 1 488 1 is_stmt 1 view -0 1038 .cfi_startproc ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 30 1039 @ args = 0, pretend = 0, frame = 0 1040 @ frame_needed = 0, uses_anonymous_args = 0 1041 @ link register save eliminated. 489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1042 .loc 1 489 3 view .LVU328 490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval; 1043 .loc 1 490 3 view .LVU329 491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 1044 .loc 1 491 3 view .LVU330 492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 1045 .loc 1 492 3 view .LVU331 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); 1046 .loc 1 495 3 view .LVU332 1047 .loc 1 495 19 is_stmt 0 view .LVU333 1048 0000 0368 ldr r3, [r0] 1049 .LVL119: 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1050 .loc 1 496 3 is_stmt 1 view .LVU334 495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1051 .loc 1 495 10 is_stmt 0 view .LVU335 1052 0002 C3F30041 ubfx r1, r3, #16, #1 488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1053 .loc 1 488 1 view .LVU336 1054 0006 10B4 push {r4} 1055 .LCFI10: 1056 .cfi_def_cfa_offset 4 1057 .cfi_offset 4, -4 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)); 1058 .loc 1 499 24 view .LVU337 1059 0008 4901 lsls r1, r1, #5 1060 .loc 1 499 11 view .LVU338 1061 000a 094C ldr r4, .L132 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1062 .loc 1 496 12 view .LVU339 1063 000c 0122 movs r2, #1 500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & maskline); 1064 .loc 1 500 13 view .LVU340 1065 000e 0959 ldr r1, [r1, r4] 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1066 .loc 1 496 35 view .LVU341 1067 0010 03F01F03 and r3, r3, #31 1068 .LVL120: 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1069 .loc 1 496 12 view .LVU342 1070 0014 02FA03F3 lsl r3, r2, r3 1071 .LVL121: 499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** regval = (*regaddr & maskline); 1072 .loc 1 499 3 is_stmt 1 view .LVU343 1073 .loc 1 500 3 view .LVU344 501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** if (regval != 0x00u) 1074 .loc 1 502 3 view .LVU345 1075 .loc 1 502 6 is_stmt 0 view .LVU346 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 31 1076 0018 1942 tst r1, r3 1077 001a 06D0 beq .L124 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; 1078 .loc 1 505 5 is_stmt 1 view .LVU347 1079 .loc 1 505 14 is_stmt 0 view .LVU348 1080 001c 0549 ldr r1, .L132+4 1081 .LVL122: 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) 1082 .loc 1 508 14 view .LVU349 1083 001e 4268 ldr r2, [r0, #4] 505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1084 .loc 1 505 14 view .LVU350 1085 0020 4B61 str r3, [r1, #20] 1086 .LVL123: 1087 .loc 1 508 5 is_stmt 1 view .LVU351 1088 .loc 1 508 8 is_stmt 0 view .LVU352 1089 0022 12B1 cbz r2, .L124 509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** { 510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** hexti->PendingCallback(); 1090 .loc 1 510 7 is_stmt 1 view .LVU353 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 **** } 1091 .loc 1 513 1 is_stmt 0 view .LVU354 1092 0024 5DF8044B ldr r4, [sp], #4 1093 .LCFI11: 1094 .cfi_remember_state 1095 .cfi_restore 4 1096 .cfi_def_cfa_offset 0 510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 1097 .loc 1 510 7 view .LVU355 1098 0028 1047 bx r2 @ indirect register sibling call 1099 .LVL124: 1100 .L124: 1101 .LCFI12: 1102 .cfi_restore_state 1103 .loc 1 513 1 view .LVU356 1104 002a 5DF8044B ldr r4, [sp], #4 1105 .LCFI13: 1106 .cfi_restore 4 1107 .cfi_def_cfa_offset 0 1108 002e 7047 bx lr 1109 .L133: 1110 .align 2 1111 .L132: 1112 0030 14040140 .word 1073808404 1113 0034 00040140 .word 1073808384 1114 .cfi_endproc 1115 .LFE135: 1117 .section .text.HAL_EXTI_GetPending,"ax",%progbits 1118 .align 1 1119 .p2align 2,,3 1120 .global HAL_EXTI_GetPending ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 32 1121 .syntax unified 1122 .thumb 1123 .thumb_func 1125 HAL_EXTI_GetPending: 1126 .LVL125: 1127 .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 **** { 1128 .loc 1 525 1 is_stmt 1 view -0 1129 .cfi_startproc 1130 @ args = 0, pretend = 0, frame = 0 1131 @ frame_needed = 0, uses_anonymous_args = 0 526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1132 .loc 1 526 3 view .LVU358 527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t regval; 1133 .loc 1 527 3 view .LVU359 528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t linepos; 1134 .loc 1 528 3 view .LVU360 529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 1135 .loc 1 529 3 view .LVU361 530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 1136 .loc 1 530 3 view .LVU362 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)); 1137 .loc 1 533 3 view .LVU363 525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1138 .loc 1 525 1 is_stmt 0 view .LVU364 1139 0000 38B5 push {r3, r4, r5, lr} 1140 .LCFI14: 1141 .cfi_def_cfa_offset 16 1142 .cfi_offset 3, -16 1143 .cfi_offset 4, -12 1144 .cfi_offset 5, -8 1145 .cfi_offset 14, -4 1146 .loc 1 533 3 view .LVU365 1147 0002 1C4A ldr r2, .L149 1148 0004 0368 ldr r3, [r0] 1149 0006 1A40 ands r2, r2, r3 525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1150 .loc 1 525 1 view .LVU366 1151 0008 0446 mov r4, r0 1152 000a 0D46 mov r5, r1 1153 .loc 1 533 3 view .LVU367 1154 000c 4AB9 cbnz r2, .L135 1155 .loc 1 533 3 discriminator 2 view .LVU368 1156 000e 03F0E062 and r2, r3, #117440512 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 33 1157 0012 B2F1807F cmp r2, #16777216 1158 0016 20D0 beq .L136 1159 .loc 1 533 3 discriminator 3 view .LVU369 1160 0018 03F04072 and r2, r3, #50331648 1161 001c B2F1007F cmp r2, #33554432 1162 0020 1BD0 beq .L136 1163 .LVL126: 1164 .L135: 1165 .loc 1 533 3 discriminator 9 view .LVU370 1166 0022 1548 ldr r0, .L149+4 1167 .LVL127: 1168 .loc 1 533 3 discriminator 9 view .LVU371 1169 0024 40F21521 movw r1, #533 1170 0028 FFF7FEFF bl assert_failed 1171 .LVL128: 534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1172 .loc 1 534 3 is_stmt 1 discriminator 9 view .LVU372 1173 002c 2368 ldr r3, [r4] 1174 002e 9B01 lsls r3, r3, #6 1175 0030 1AD5 bpl .L148 1176 .L138: 535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1177 .loc 1 535 3 view .LVU373 1178 0032 032D cmp r5, #3 1179 0034 04D0 beq .L139 1180 .loc 1 535 3 is_stmt 0 discriminator 1 view .LVU374 1181 0036 1048 ldr r0, .L149+4 1182 0038 40F21721 movw r1, #535 1183 003c FFF7FEFF bl assert_failed 1184 .LVL129: 1185 .L139: 536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 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); 1186 .loc 1 538 3 is_stmt 1 view .LVU375 1187 .loc 1 538 19 is_stmt 0 view .LVU376 1188 0040 2368 ldr r3, [r4] 1189 .LVL130: 539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK); 1190 .loc 1 539 3 is_stmt 1 view .LVU377 540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 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)); 1191 .loc 1 543 11 is_stmt 0 view .LVU378 1192 0042 0E49 ldr r1, .L149+8 538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK); 1193 .loc 1 538 10 view .LVU379 1194 0044 C3F30042 ubfx r2, r3, #16, #1 1195 .loc 1 543 24 view .LVU380 1196 0048 5201 lsls r2, r2, #5 539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK); 1197 .loc 1 539 11 view .LVU381 1198 004a 03F01F03 and r3, r3, #31 1199 .LVL131: 540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << linepos); 1200 .loc 1 540 3 is_stmt 1 view .LVU382 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 34 1201 .loc 1 543 3 view .LVU383 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); 1202 .loc 1 545 3 view .LVU384 1203 .loc 1 545 14 is_stmt 0 view .LVU385 1204 004e 5258 ldr r2, [r2, r1] 1205 .LVL132: 546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return regval; 1206 .loc 1 546 3 is_stmt 1 view .LVU386 540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1207 .loc 1 540 12 is_stmt 0 view .LVU387 1208 0050 0120 movs r0, #1 1209 0052 9840 lsls r0, r0, r3 1210 .LVL133: 545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** return regval; 1211 .loc 1 545 23 view .LVU388 1212 0054 1040 ands r0, r0, r2 1213 .LVL134: 547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 1214 .loc 1 547 1 view .LVU389 1215 0056 D840 lsrs r0, r0, r3 1216 .LVL135: 1217 .loc 1 547 1 view .LVU390 1218 0058 38BD pop {r3, r4, r5, pc} 1219 .LVL136: 1220 .L136: 533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1221 .loc 1 533 3 discriminator 8 view .LVU391 1222 005a 094A ldr r2, .L149+12 1223 005c 0949 ldr r1, .L149+16 1224 .LVL137: 533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1225 .loc 1 533 3 discriminator 8 view .LVU392 1226 005e 1A40 ands r2, r2, r3 1227 0060 8A42 cmp r2, r1 1228 0062 DED8 bhi .L135 534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1229 .loc 1 534 3 is_stmt 1 view .LVU393 1230 0064 9B01 lsls r3, r3, #6 1231 0066 E4D4 bmi .L138 1232 .LVL138: 1233 .L148: 534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1234 .loc 1 534 3 is_stmt 0 discriminator 1 view .LVU394 1235 0068 0348 ldr r0, .L149+4 1236 006a 40F21621 movw r1, #534 1237 006e FFF7FEFF bl assert_failed 1238 .LVL139: 1239 0072 DEE7 b .L138 1240 .L150: 1241 .align 2 1242 .L149: 1243 0074 E0FFFEF8 .word -117506080 1244 0078 00000000 .word .LC0 1245 007c 14040140 .word 1073808404 1246 0080 1F000100 .word 65567 1247 0084 03000100 .word 65539 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 35 1248 .cfi_endproc 1249 .LFE136: 1251 .section .text.HAL_EXTI_ClearPending,"ax",%progbits 1252 .align 1 1253 .p2align 2,,3 1254 .global HAL_EXTI_ClearPending 1255 .syntax unified 1256 .thumb 1257 .thumb_func 1259 HAL_EXTI_ClearPending: 1260 .LVL140: 1261 .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 **** { 1262 .loc 1 559 1 is_stmt 1 view -0 1263 .cfi_startproc 1264 @ args = 0, pretend = 0, frame = 0 1265 @ frame_needed = 0, uses_anonymous_args = 0 560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1266 .loc 1 560 3 view .LVU396 561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 1267 .loc 1 561 3 view .LVU397 562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 1268 .loc 1 562 3 view .LVU398 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)); 1269 .loc 1 565 3 view .LVU399 559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1270 .loc 1 559 1 is_stmt 0 view .LVU400 1271 0000 38B5 push {r3, r4, r5, lr} 1272 .LCFI15: 1273 .cfi_def_cfa_offset 16 1274 .cfi_offset 3, -16 1275 .cfi_offset 4, -12 1276 .cfi_offset 5, -8 1277 .cfi_offset 14, -4 1278 .loc 1 565 3 view .LVU401 1279 0002 1C4A ldr r2, .L166 1280 0004 0368 ldr r3, [r0] 1281 0006 1A40 ands r2, r2, r3 559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1282 .loc 1 559 1 view .LVU402 1283 0008 0446 mov r4, r0 1284 000a 0D46 mov r5, r1 1285 .loc 1 565 3 view .LVU403 1286 000c 4AB9 cbnz r2, .L152 ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 36 1287 .loc 1 565 3 discriminator 2 view .LVU404 1288 000e 03F0E062 and r2, r3, #117440512 1289 0012 B2F1807F cmp r2, #16777216 1290 0016 1FD0 beq .L153 1291 .loc 1 565 3 discriminator 3 view .LVU405 1292 0018 03F04072 and r2, r3, #50331648 1293 001c B2F1007F cmp r2, #33554432 1294 0020 1AD0 beq .L153 1295 .LVL141: 1296 .L152: 1297 .loc 1 565 3 discriminator 9 view .LVU406 1298 0022 1548 ldr r0, .L166+4 1299 .LVL142: 1300 .loc 1 565 3 discriminator 9 view .LVU407 1301 0024 40F23521 movw r1, #565 1302 0028 FFF7FEFF bl assert_failed 1303 .LVL143: 566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1304 .loc 1 566 3 is_stmt 1 discriminator 9 view .LVU408 1305 002c 2368 ldr r3, [r4] 1306 002e 9B01 lsls r3, r3, #6 1307 0030 19D5 bpl .L165 1308 .L155: 567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1309 .loc 1 567 3 view .LVU409 1310 0032 032D cmp r5, #3 1311 0034 04D0 beq .L156 1312 .loc 1 567 3 is_stmt 0 discriminator 1 view .LVU410 1313 0036 1048 ldr r0, .L166+4 1314 0038 40F23721 movw r1, #567 1315 003c FFF7FEFF bl assert_failed 1316 .LVL144: 1317 .L156: 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); 1318 .loc 1 570 3 is_stmt 1 view .LVU411 1319 .loc 1 570 19 is_stmt 0 view .LVU412 1320 0040 2368 ldr r3, [r4] 1321 .LVL145: 571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1322 .loc 1 571 3 is_stmt 1 view .LVU413 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)); 1323 .loc 1 574 11 is_stmt 0 view .LVU414 1324 0042 0E48 ldr r0, .L166+8 570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1325 .loc 1 570 10 view .LVU415 1326 0044 C3F30042 ubfx r2, r3, #16, #1 571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1327 .loc 1 571 12 view .LVU416 1328 0048 0121 movs r1, #1 571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1329 .loc 1 571 35 view .LVU417 1330 004a 03F01F03 and r3, r3, #31 1331 .LVL146: ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 37 1332 .loc 1 574 24 view .LVU418 1333 004e 5201 lsls r2, r2, #5 571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1334 .loc 1 571 12 view .LVU419 1335 0050 01FA03F3 lsl r3, r1, r3 1336 .LVL147: 1337 .loc 1 574 3 is_stmt 1 view .LVU420 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; 1338 .loc 1 577 3 view .LVU421 1339 .loc 1 577 12 is_stmt 0 view .LVU422 1340 0054 1350 str r3, [r2, r0] 1341 .LVL148: 578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 1342 .loc 1 578 1 view .LVU423 1343 0056 38BD pop {r3, r4, r5, pc} 1344 .LVL149: 1345 .L153: 565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1346 .loc 1 565 3 discriminator 8 view .LVU424 1347 0058 094A ldr r2, .L166+12 1348 005a 0A49 ldr r1, .L166+16 1349 .LVL150: 565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1350 .loc 1 565 3 discriminator 8 view .LVU425 1351 005c 1A40 ands r2, r2, r3 1352 005e 8A42 cmp r2, r1 1353 0060 DFD8 bhi .L152 566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1354 .loc 1 566 3 is_stmt 1 view .LVU426 1355 0062 9B01 lsls r3, r3, #6 1356 0064 E5D4 bmi .L155 1357 .LVL151: 1358 .L165: 566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge)); 1359 .loc 1 566 3 is_stmt 0 discriminator 1 view .LVU427 1360 0066 0448 ldr r0, .L166+4 1361 0068 40F23621 movw r1, #566 1362 006c FFF7FEFF bl assert_failed 1363 .LVL152: 1364 0070 DFE7 b .L155 1365 .L167: 1366 0072 00BF .align 2 1367 .L166: 1368 0074 E0FFFEF8 .word -117506080 1369 0078 00000000 .word .LC0 1370 007c 14040140 .word 1073808404 1371 0080 1F000100 .word 65567 1372 0084 03000100 .word 65539 1373 .cfi_endproc 1374 .LFE137: 1376 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits 1377 .align 1 1378 .p2align 2,,3 1379 .global HAL_EXTI_GenerateSWI 1380 .syntax unified ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 38 1381 .thumb 1382 .thumb_func 1384 HAL_EXTI_GenerateSWI: 1385 .LVL153: 1386 .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 **** { 1387 .loc 1 586 1 is_stmt 1 view -0 1388 .cfi_startproc 1389 @ args = 0, pretend = 0, frame = 0 1390 @ frame_needed = 0, uses_anonymous_args = 0 587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1391 .loc 1 587 3 view .LVU429 588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t maskline; 1392 .loc 1 588 3 view .LVU430 589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** uint32_t offset; 1393 .loc 1 589 3 view .LVU431 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)); 1394 .loc 1 592 3 view .LVU432 1395 0000 184A ldr r2, .L179 1396 0002 0368 ldr r3, [r0] 1397 0004 1A40 ands r2, r2, r3 586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1398 .loc 1 586 1 is_stmt 0 view .LVU433 1399 0006 10B5 push {r4, lr} 1400 .LCFI16: 1401 .cfi_def_cfa_offset 8 1402 .cfi_offset 4, -8 1403 .cfi_offset 14, -4 586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** __IO uint32_t *regaddr; 1404 .loc 1 586 1 view .LVU434 1405 0008 0446 mov r4, r0 1406 .loc 1 592 3 view .LVU435 1407 000a 4AB9 cbnz r2, .L169 1408 .loc 1 592 3 discriminator 2 view .LVU436 1409 000c 03F0E062 and r2, r3, #117440512 1410 0010 B2F1807F cmp r2, #16777216 1411 0014 17D0 beq .L170 1412 .loc 1 592 3 discriminator 3 view .LVU437 1413 0016 03F04072 and r2, r3, #50331648 1414 001a B2F1007F cmp r2, #33554432 1415 001e 12D0 beq .L170 1416 .L169: 1417 .loc 1 592 3 discriminator 9 view .LVU438 1418 0020 1148 ldr r0, .L179+4 1419 .LVL154: 1420 .loc 1 592 3 discriminator 9 view .LVU439 1421 0022 4FF41471 mov r1, #592 1422 0026 FFF7FEFF bl assert_failed ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 39 1423 .LVL155: 593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1424 .loc 1 593 3 is_stmt 1 discriminator 9 view .LVU440 1425 002a 2368 ldr r3, [r4] 1426 002c 9A01 lsls r2, r3, #6 1427 002e 11D5 bpl .L178 1428 .L172: 594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 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); 1429 .loc 1 596 3 view .LVU441 1430 .LVL156: 597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1431 .loc 1 597 3 view .LVU442 596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1432 .loc 1 596 10 is_stmt 0 view .LVU443 1433 0030 C3F30042 ubfx r2, r3, #16, #1 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)); 1434 .loc 1 599 11 view .LVU444 1435 0034 0D48 ldr r0, .L179+8 597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1436 .loc 1 597 35 view .LVU445 1437 0036 03F01F03 and r3, r3, #31 1438 .LVL157: 597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1439 .loc 1 597 12 view .LVU446 1440 003a 0121 movs r1, #1 1441 .loc 1 599 27 view .LVU447 1442 003c 5201 lsls r2, r2, #5 597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1443 .loc 1 597 12 view .LVU448 1444 003e 01FA03F3 lsl r3, r1, r3 1445 .LVL158: 1446 .loc 1 599 3 is_stmt 1 view .LVU449 600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** *regaddr = maskline; 1447 .loc 1 600 3 view .LVU450 1448 .loc 1 600 12 is_stmt 0 view .LVU451 1449 0042 1350 str r3, [r2, r0] 601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** } 1450 .loc 1 601 1 view .LVU452 1451 0044 10BD pop {r4, pc} 1452 .LVL159: 1453 .L170: 592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); 1454 .loc 1 592 3 discriminator 8 view .LVU453 1455 0046 0A4A ldr r2, .L179+12 1456 0048 0A49 ldr r1, .L179+16 1457 004a 1A40 ands r2, r2, r3 1458 004c 8A42 cmp r2, r1 1459 004e E7D8 bhi .L169 593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1460 .loc 1 593 3 is_stmt 1 view .LVU454 1461 0050 9A01 lsls r2, r3, #6 1462 0052 EDD4 bmi .L172 1463 .LVL160: 1464 .L178: ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 40 593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** 1465 .loc 1 593 3 is_stmt 0 discriminator 1 view .LVU455 1466 0054 0448 ldr r0, .L179+4 1467 0056 40F25121 movw r1, #593 1468 005a FFF7FEFF bl assert_failed 1469 .LVL161: 596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); 1470 .loc 1 596 19 discriminator 1 view .LVU456 1471 005e 2368 ldr r3, [r4] 1472 0060 E6E7 b .L172 1473 .L180: 1474 0062 00BF .align 2 1475 .L179: 1476 0064 E0FFFEF8 .word -117506080 1477 0068 00000000 .word .LC0 1478 006c 10040140 .word 1073808400 1479 0070 1F000100 .word 65567 1480 0074 03000100 .word 65539 1481 .cfi_endproc 1482 .LFE138: 1484 .text 1485 .Letext0: 1486 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h" 1487 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h" 1488 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h" 1489 .file 5 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h" 1490 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_exti.h" 1491 .file 7 "Core/Inc/stm32f3xx_hal_conf.h" ARM GAS C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s page 41 DEFINED SYMBOLS *ABS*:00000000 stm32f3xx_hal_exti.c C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:20 .rodata.HAL_EXTI_SetConfigLine.str1.4:00000000 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:25 .text.HAL_EXTI_SetConfigLine:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:32 .text.HAL_EXTI_SetConfigLine:00000000 HAL_EXTI_SetConfigLine C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:375 .text.HAL_EXTI_SetConfigLine:00000140 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:386 .text.HAL_EXTI_GetConfigLine:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:393 .text.HAL_EXTI_GetConfigLine:00000000 HAL_EXTI_GetConfigLine C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:640 .text.HAL_EXTI_GetConfigLine:000000e0 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:652 .text.HAL_EXTI_ClearConfigLine:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:659 .text.HAL_EXTI_ClearConfigLine:00000000 HAL_EXTI_ClearConfigLine C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:880 .text.HAL_EXTI_ClearConfigLine:000000cc $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:891 .text.HAL_EXTI_RegisterCallback:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:898 .text.HAL_EXTI_RegisterCallback:00000000 HAL_EXTI_RegisterCallback C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:930 .text.HAL_EXTI_GetHandle:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:937 .text.HAL_EXTI_GetHandle:00000000 HAL_EXTI_GetHandle C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1019 .text.HAL_EXTI_GetHandle:0000004c $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1027 .text.HAL_EXTI_IRQHandler:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1034 .text.HAL_EXTI_IRQHandler:00000000 HAL_EXTI_IRQHandler C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1112 .text.HAL_EXTI_IRQHandler:00000030 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1118 .text.HAL_EXTI_GetPending:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1125 .text.HAL_EXTI_GetPending:00000000 HAL_EXTI_GetPending C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1243 .text.HAL_EXTI_GetPending:00000074 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1252 .text.HAL_EXTI_ClearPending:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1259 .text.HAL_EXTI_ClearPending:00000000 HAL_EXTI_ClearPending C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1368 .text.HAL_EXTI_ClearPending:00000074 $d C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1377 .text.HAL_EXTI_GenerateSWI:00000000 $t C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1384 .text.HAL_EXTI_GenerateSWI:00000000 HAL_EXTI_GenerateSWI C:\Users\zl835\AppData\Local\Temp\ccBTHjeR.s:1476 .text.HAL_EXTI_GenerateSWI:00000064 $d UNDEFINED SYMBOLS assert_failed