⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fft256c.asm

📁 同样是浮点型的fft算法一样为vc开发的
💻 ASM
📖 第 1 页 / 共 4 页
字号:
           STW     .D2T2   B11,*SP--(96)     ; |49| 
	.dwcfa	0x0e, 96
	.dwcfa	0x80, 27, 0
           STW     .D2T2   B9,*+SP(92)       ; |49| 
	.dwcfa	0x80, 25, 1
           STW     .D2T2   B8,*+SP(88)       ; |49| 
	.dwcfa	0x80, 24, 2
           STW     .D2T2   B7,*+SP(84)       ; |49| 
	.dwcfa	0x80, 23, 3
           STW     .D2T2   B6,*+SP(80)       ; |49| 
	.dwcfa	0x80, 22, 4
           STW     .D2T2   B5,*+SP(76)       ; |49| 
	.dwcfa	0x80, 21, 5
           STW     .D2T2   B4,*+SP(72)       ; |49| 
	.dwcfa	0x80, 20, 6
           STW     .D2T2   B3,*+SP(68)       ; |49| 
	.dwcfa	0x80, 19, 7
           STW     .D2T2   B2,*+SP(64)       ; |49| 
	.dwcfa	0x80, 18, 8
           STW     .D2T2   B1,*+SP(60)       ; |49| 
	.dwcfa	0x80, 17, 9
           STW     .D2T2   B0,*+SP(56)       ; |49| 
	.dwcfa	0x80, 16, 10
           STW     .D2T2   B10,*+SP(52)      ; |49| 
	.dwcfa	0x80, 26, 11
           STW     .D2T1   A9,*+SP(48)       ; |49| 
	.dwcfa	0x80, 9, 12
           STW     .D2T1   A7,*+SP(44)       ; |49| 
	.dwcfa	0x80, 7, 13
           STW     .D2T1   A6,*+SP(40)       ; |49| 
	.dwcfa	0x80, 6, 14
           STW     .D2T1   A5,*+SP(36)       ; |49| 
	.dwcfa	0x80, 5, 15
           STW     .D2T1   A4,*+SP(32)       ; |49| 
	.dwcfa	0x80, 4, 16
           STW     .D2T1   A3,*+SP(28)       ; |49| 
	.dwcfa	0x80, 3, 17
           STW     .D2T1   A2,*+SP(24)       ; |49| 
	.dwcfa	0x80, 2, 18
           STW     .D2T1   A1,*+SP(20)       ; |49| 
	.dwcfa	0x80, 1, 19
           STW     .D2T1   A0,*+SP(16)       ; |49| 
	.dwcfa	0x80, 0, 20
           STW     .D2T1   A8,*+SP(12)       ; |49| 
	.dwcfa	0x80, 8, 21
	.dwpsn	"FFT256c.c",50,3
           LDH     .D2T2   *+DP(_buffercount),B4 ; |50| 
           MVKL    .S1     _iobuffer,A3      ; |50| 
           MVKH    .S1     _iobuffer,A3      ; |50| 
           MV      .L2X    A3,B10            ; |50| 
           MVKL    .S2     RL5,B3            ; |50| 
           LDW     .D2T2   *+B10[B4],B4      ; |50| 
           MVKH    .S2     RL5,B3            ; |50| 
           NOP             1
           CALL    .S1     _output_sample    ; |50| 
           NOP             1
           SPTRUNC .L1X    B4,A4             ; |50| 
           NOP             3
RL5:       ; CALL OCCURS {_output_sample}    ; |50| 
;** --------------------------------------------------------------------------*
	.dwpsn	"FFT256c.c",51,3
           CALL    .S1     _input_sample     ; |51| 
           LDH     .D2T2   *+DP(_buffercount),B11 ; |51| 
           MVKL    .S2     RL6,B3            ; |51| 
           MVKH    .S2     RL6,B3            ; |51| 
           NOP             2
RL6:       ; CALL OCCURS {_input_sample}     ; |51| 
;** --------------------------------------------------------------------------*
           INTSP   .L1     A4,A3             ; |51| 
           ADD     .L2     1,B11,B4          ; |51| 
           EXT     .S2     B4,16,16,B5       ; |51| 
           NOP             1
           STW     .D2T1   A3,*+B10[B11]     ; |51| 
           STH     .D2T2   B4,*+DP(_buffercount) ; |51| 
	.dwpsn	"FFT256c.c",52,3
           MVK     .S2     256,B4            ; |52| 
           CMPLT   .L2     B5,B4,B0          ; |52| 
	.dwpsn	"FFT256c.c",54,2
   [!B0]   ZERO    .L2     B4                ; |54| 
   [!B0]   STH     .D2T2   B4,*+DP(_buffercount) ; |54| 
	.dwpsn	"FFT256c.c",55,2
   [!B0]   MVK     .S2     1,B4              ; |55| 
   [!B0]   STH     .D2T2   B4,*+DP(_flag)    ; |55| 
	.dwpsn	"FFT256c.c",57,1
           LDDW    .D2T2   *+SP(88),B9:B8    ; |57| 
	.dwcfa	0xc0, 24
	.dwcfa	0xc0, 25
           LDDW    .D2T2   *+SP(80),B7:B6    ; |57| 
	.dwcfa	0xc0, 22
	.dwcfa	0xc0, 23
           LDDW    .D2T2   *+SP(72),B5:B4    ; |57| 
	.dwcfa	0xc0, 20
	.dwcfa	0xc0, 21
           LDDW    .D2T2   *+SP(64),B3:B2    ; |57| 
	.dwcfa	0xc0, 18
	.dwcfa	0xc0, 19
           LDDW    .D2T2   *+SP(56),B1:B0    ; |57| 
	.dwcfa	0xc0, 16
	.dwcfa	0xc0, 17
           LDW     .D2T2   *+SP(52),B10      ; |57| 
	.dwcfa	0xc0, 26
           LDW     .D2T1   *+SP(48),A9       ; |57| 
	.dwcfa	0xc0, 9
           LDDW    .D2T1   *+SP(40),A7:A6    ; |57| 
	.dwcfa	0xc0, 6
	.dwcfa	0xc0, 7
           LDDW    .D2T1   *+SP(32),A5:A4    ; |57| 
	.dwcfa	0xc0, 4
	.dwcfa	0xc0, 5
           LDDW    .D2T1   *+SP(24),A3:A2    ; |57| 
	.dwcfa	0xc0, 2
	.dwcfa	0xc0, 3
           LDDW    .D2T1   *+SP(16),A1:A0    ; |57| 
	.dwcfa	0xc0, 0
	.dwcfa	0xc0, 1
           LDW     .D2T1   *+SP(12),A8       ; |57| 
	.dwcfa	0xc0, 8
           LDW     .D2T2   *++SP(96),B11     ; |57| 
	.dwcfa	0xc0, 27
	.dwcfa	0x0e, 0
           RET     .S2     IRP               ; |57| 
           NOP             5
           ; BRANCH OCCURS {IRP}             ; |57| 
	.dwattr DW$39, DW_AT_end_file("FFT256c.c")
	.dwattr DW$39, DW_AT_end_line(0x39)
	.dwattr DW$39, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$39

;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_sqrt
	.global	_sin
	.global	_cos
	.global	_FFT
	.global	_comm_intr
	.global	_output_sample
	.global	_input_sample

;******************************************************************************
;* TYPE INFORMATION                                                           *
;******************************************************************************

DW$T$22	.dwtag  DW_TAG_subroutine_type
	.dwattr DW$T$22, DW_AT_language(DW_LANG_C)
DW$40	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$21)
DW$41	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
	.dwendtag DW$T$22


DW$T$24	.dwtag  DW_TAG_subroutine_type
	.dwattr DW$T$24, DW_AT_language(DW_LANG_C)
DW$T$8	.dwtag  DW_TAG_base_type, DW_AT_name("short")
	.dwattr DW$T$8, DW_AT_encoding(DW_ATE_signed)
	.dwattr DW$T$8, DW_AT_byte_size(0x02)
DW$T$10	.dwtag  DW_TAG_base_type, DW_AT_name("int")
	.dwattr DW$T$10, DW_AT_encoding(DW_ATE_signed)
	.dwattr DW$T$10, DW_AT_byte_size(0x04)

DW$T$25	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$10)
	.dwattr DW$T$25, DW_AT_language(DW_LANG_C)

DW$T$27	.dwtag  DW_TAG_array_type, DW_AT_type(*DW$T$16)
	.dwattr DW$T$27, DW_AT_language(DW_LANG_C)
	.dwattr DW$T$27, DW_AT_byte_size(0x400)
DW$42	.dwtag  DW_TAG_subrange_type
	.dwattr DW$42, DW_AT_upper_bound(0xff)
	.dwendtag DW$T$27

DW$T$17	.dwtag  DW_TAG_base_type, DW_AT_name("double")
	.dwattr DW$T$17, DW_AT_encoding(DW_ATE_float)
	.dwattr DW$T$17, DW_AT_byte_size(0x08)

DW$T$29	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$17)
	.dwattr DW$T$29, DW_AT_language(DW_LANG_C)
DW$43	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$17)
	.dwendtag DW$T$29

DW$T$21	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$20)
	.dwattr DW$T$21, DW_AT_address_class(0x20)

DW$T$31	.dwtag  DW_TAG_array_type, DW_AT_type(*DW$T$20)
	.dwattr DW$T$31, DW_AT_language(DW_LANG_C)
	.dwattr DW$T$31, DW_AT_byte_size(0x800)
DW$44	.dwtag  DW_TAG_subrange_type
	.dwattr DW$44, DW_AT_upper_bound(0xff)
	.dwendtag DW$T$31

DW$T$16	.dwtag  DW_TAG_base_type, DW_AT_name("float")
	.dwattr DW$T$16, DW_AT_encoding(DW_ATE_float)
	.dwattr DW$T$16, DW_AT_byte_size(0x04)
DW$T$20	.dwtag  DW_TAG_typedef, DW_AT_name("COMPLEX"), DW_AT_type(*DW$T$19)
	.dwattr DW$T$20, DW_AT_language(DW_LANG_C)

DW$T$19	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$19, DW_AT_byte_size(0x08)
DW$45	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$16)
	.dwattr DW$45, DW_AT_name("real"), DW_AT_symbol_name("_real")
	.dwattr DW$45, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
	.dwattr DW$45, DW_AT_accessibility(DW_ACCESS_public)
DW$46	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$16)
	.dwattr DW$46, DW_AT_name("imag"), DW_AT_symbol_name("_imag")
	.dwattr DW$46, DW_AT_data_member_location[DW_OP_plus_uconst 0x4]
	.dwattr DW$46, DW_AT_accessibility(DW_ACCESS_public)
	.dwendtag DW$T$19


	.dwattr DW$39, DW_AT_external(0x01)
	.dwattr DW$20, DW_AT_external(0x01)
	.dwattr DW$20, DW_AT_type(*DW$T$10)
	.dwattr DW$CU, DW_AT_language(DW_LANG_C)

;***************************************************************
;* DWARF CIE ENTRIES                                           *
;***************************************************************

DW$CIE	.dwcie 1, 126
	.dwcfa	0x0c, 31, 0
	.dwcfa	0x07, 0
	.dwcfa	0x07, 1
	.dwcfa	0x07, 2
	.dwcfa	0x07, 3
	.dwcfa	0x07, 4
	.dwcfa	0x07, 5
	.dwcfa	0x07, 6
	.dwcfa	0x07, 7
	.dwcfa	0x07, 8
	.dwcfa	0x07, 9
	.dwcfa	0x08, 10
	.dwcfa	0x08, 11
	.dwcfa	0x08, 12
	.dwcfa	0x08, 13
	.dwcfa	0x08, 14
	.dwcfa	0x08, 15
	.dwcfa	0x07, 16
	.dwcfa	0x07, 17
	.dwcfa	0x07, 18
	.dwcfa	0x07, 19
	.dwcfa	0x07, 20
	.dwcfa	0x07, 21
	.dwcfa	0x07, 22
	.dwcfa	0x07, 23
	.dwcfa	0x07, 24
	.dwcfa	0x07, 25
	.dwcfa	0x08, 26
	.dwcfa	0x08, 27
	.dwcfa	0x08, 28
	.dwcfa	0x08, 29
	.dwcfa	0x08, 30
	.dwcfa	0x08, 31
	.dwcfa	0x08, 32
	.dwcfa	0x07, 33
	.dwcfa	0x07, 34
	.dwcfa	0x07, 35
	.dwcfa	0x07, 36
	.dwcfa	0x07, 37
	.dwcfa	0x07, 38
	.dwcfa	0x07, 39
	.dwcfa	0x07, 40
	.dwcfa	0x07, 41
	.dwcfa	0x07, 42
	.dwcfa	0x07, 43
	.dwcfa	0x07, 44
	.dwcfa	0x07, 45
	.dwcfa	0x07, 46
	.dwcfa	0x07, 47
	.dwcfa	0x07, 48
	.dwcfa	0x07, 49
	.dwcfa	0x07, 50
	.dwcfa	0x07, 51
	.dwcfa	0x07, 52
	.dwcfa	0x07, 53
	.dwcfa	0x07, 54
	.dwcfa	0x07, 55
	.dwcfa	0x07, 56
	.dwcfa	0x07, 57
	.dwcfa	0x07, 58
	.dwcfa	0x07, 59
	.dwcfa	0x07, 60
	.dwcfa	0x07, 61
	.dwcfa	0x07, 62
	.dwcfa	0x07, 63
	.dwcfa	0x07, 64
	.dwcfa	0x07, 65
	.dwcfa	0x07, 66
	.dwcfa	0x07, 67
	.dwcfa	0x07, 68
	.dwcfa	0x07, 69
	.dwcfa	0x07, 70
	.dwcfa	0x07, 71
	.dwcfa	0x07, 72
	.dwcfa	0x07, 73
	.dwcfa	0x07, 74
	.dwcfa	0x07, 75
	.dwcfa	0x07, 76
	.dwcfa	0x07, 77
	.dwcfa	0x07, 78
	.dwcfa	0x07, 79
	.dwcfa	0x07, 80
	.dwcfa	0x07, 81
	.dwcfa	0x07, 82
	.dwcfa	0x07, 83
	.dwcfa	0x07, 84
	.dwcfa	0x07, 85

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -