Commit Graph
36 Commits
Author SHA1 Message Date
TermiNexus 9a758a8f6c fix(includes): atof 改为正确舍入,对齐 sprintf 返回类型,补充 asm 约束说明
N4  string.vp:atof 重写为「u64 尾数 + 精确十进制幂 + 双 double(Dekker) 缩放」,
    正规数范围正确舍入(Python 原型 20 万组对拍 bit-exact),次正规回退逐步
    缩放;修十进制浮点字面量偏差(DBL_MAX 原 −6 ULP、e/ln2 各 ±1 ULP)
N13 viperlib.vp:export sprintf 返回 t.CVoid → t.CInt 并 return vsnprintf(...),
    与 CRT 及 includes/stdio.vp 的 extern declare 对齐(消除同符号签名冲突)
N10 asm.vp:为 pushall/popall/cpu_switch_context 补充约束说明(不改 clobber)
2026-09-11 17:40:26 +08:00
TermiNexus 52af24e85d fix(includes): asm 内联汇编输出占位符/clobber、vipermath 位重解释、string.split 容量参数
- asm.vp: inb/inw/inl 模板引用输出占位符 \ 并补 ~{rax}(原取硬编码 eax 且静默破坏 EAX,对齐 mm.vp cmos_read 模式)

- vipermath.vp: isnan/isinf 改 c.Load 位重解释(原 fptosi 位模式丢失导致恒返回 0)

- string.vp: split 增加 cap 容量参数,token 数 <= cap-1,防止越界写
2026-09-11 14:26:47 +08:00
TermiNexus 728d090815 feat(vqt6/vipermath/vipersimd/w32/requests): 自绘 Canvas/Graph3D/ChartView 与 Qt6 Charts、新增 gzip 与 torch-lite 模块, 修包装类悬垂指针与中文路径/exp/大文件下载
- vqt6: 包装类统一补 __new__ 堆分配, 修"创建函数栈帧 alloca"被存进字段/跨帧返回后 _ptr 悬垂(传给 QLayout::addWidget 等即崩溃); 菜单类按依赖顺序前移, menuBar()/statusBar() 改返回裸指针; 接入 Qt6 Charts 并新增 _bridge_canvas(Canvas 手绘板 / Graph3D 软件 3D 网络图 / ChartView 折线图); 新增自绘 QRadioButton(圆环+内点, 过渡动画)、剪贴板、应用级字体族 API
- 新增模块: gzip.vp(RFC1952/1951 解码器)、torch/(torch-lite 稠密张量 + conv/pool 前反向)
- vipersimd: 新增 scalar_fma/add/mul/sqrt_array 未向量化对照内核(与对应 SIMD 版逐位一致)
- w32: 新增 UTF-8/UTF-16 路径转换, CreateFile/CreateDirectory 走 W 系列, 修中文路径被按 GBK 误读; read_all 参数 max_count -> buf_size 并文档化"容量含终止符"契约
- requests: https 响应缓冲按需翻倍扩容(上限 256MB), 修 MB 级正文(如 MNIST .gz)被 4KB 静默截断
- vipermath: 重写 exp 为范围归约 + 短泰勒, 修负值发散(x=-30 得 3.7e10)与 NaN 触发 2^31 次缩放导致的卡死
- builtins: 新增 sizet/uzt 别名; stdarg: va_arg 参数 CType -> CPtr
- chore: 删除 vendored jpeg change.log
2026-09-10 23:09:05 +08:00
TermiNexus 7d092f25b1 feat(vqt6/requests/vipersimd/vthreading): 气泡聊天与流式 https 阶段改动、vipersimd FMA 批量内核, 清理 vqt6 copy 与 requests.vp 2026-09-09 21:10:14 +08:00
TermiNexus 44e0e898d3 fix(llvmlite): _append_cstr 缓存一致性校验, 修复多模块轮流写同一 buf/池地址复用导致 FunctionPrint 追加落到 NUL 后(LLvmLiteTest Test5/9 模块函数丢失) 2026-09-09 21:10:06 +08:00
TermiNexus f53c2216aa '基线重置,修复了一些 bug,fix(llvmlite): build_alloca_at_entry 在已终止入口块后在 br 后追加 alloca 致非法 IR嵌套循环(如 LoopTest.test_nested_loop 内层 for)内联新建循环变量 alloca 时,入口块已以 br 终止,block_append_text 把 alloca 追加到终止指令之后,生成不可达指令,llc 报 "instruction expected to be numbered %N or greater"。改用 block_insert_text_before_terminator:未终止等同追加,已终止插到终止指令之前;编号乱序由 RenumberSSA 重排处理。' 2026-09-07 15:05:50 +08:00
TermiNexus 62bceb6930 debug(chain): Renumber block 野值打印扩展为邻域快照(Params/Blocks/容器指针)
[DBGCHAIN] block 野值时一并输出 func.Params(Head/Tail/Count)、Blocks 容器/Tail/Count、func 指针,便于定位写入源。用后移除。
2026-09-05 15:04:46 +08:00
TermiNexus 21b4246ea4 debug(chain): RenumberSSA 全链验证 + PrintModule param/Params 野值护栏扩展
[DBGCHAIN] 临时诊断追加:RenumberSSA 前校验 func.Blocks/Lines/line.Buf/Len 指针合理性;PrintModule 增加 Function.Params 与 param 指针护栏(含归属函数名打印)。用后移除。
2026-09-05 14:58:32 +08:00
TermiNexus 2992674783 feat(types): rowptr/REnum 迁移工作区快照 + GSList/PrintModule 临时 DBGCHAIN 护栏
把此前未提交的 rowptr 迁移整体入库(42 文件,含 ast/llvmlite/hashlib/json/zlib 等签名 rowptr 化)。临时诊断(用后移除):linkedlist.vp GSList[T].append 链完整性四检、__module.vp PrintModule Function.Params/param 指针野值护栏([DBGCHAIN] 前缀 + fflush + exit)。
2026-09-05 14:51:40 +08:00
TermiNexus e2dd0fb18f feat(vqt6): QCheckBox 勾选动画(底色过渡+对勾淡入) 2026-09-03 11:57:03 +08:00
TermiNexus d9620ce43d feat(vqt6): QCheckBox 改自绘子类(矢量框+对勾,按QPalette配色) 2026-09-03 11:55:15 +08:00
TermiNexus ceb601a2d3 fix(vqt6): 浅色调色板 BrightText 改深色(尝试修对勾可见性) 2026-09-03 11:46:05 +08:00
TermiNexus 80799671f7 feat(vqt6): 新增 QApplication 主题调色板切换(原生控件配色) 2026-09-03 11:42:27 +08:00
TermiNexus 4a26a97ce2 feat(vqt6): 新增 vqt6_asset_url_utf8(QUrl::fromLocalFile 生成资源 URL) 2026-09-03 11:30:53 +08:00
TermiNexus 6280172a39 revert(vqt6): 移除 vqt6_app_dir_utf8(复选框指示器方案回退) 2026-09-03 11:28:45 +08:00
TermiNexus b83563b422 feat(vqt6): 新增 vqt6_app_dir_utf8 取应用目录(供QSS资源url) 2026-09-03 11:25:12 +08:00
TermiNexus 2e72ef0359 feat(vqt6): 新增 QTreeWidget/QTreeWidgetItem 桥接与树统计助手 2026-09-03 11:01:59 +08:00
TermiNexus 90a58d05b1 feat(zipfile): 新增 ZIP 归档读写模块(ZipFile 读写,stored/deflate,CRC32 校验) 2026-09-03 09:35:11 +08:00
TermiNexus 1e5b840775 feat(openssl): 新增 OpenSSL 3.x FFI 层(摘要/EVP/PEM/X509/SSL/BIO,extern def 直连 libcrypto/libssl) 2026-09-02 16:19:12 +08:00
TermiNexus 9163a1106c feat(vqt6): 支持 Qt 样式表 QSS(深色主题)
- vqt6_qwidget_set_stylesheet_utf8:QSS 直传 FFI
- QWidget/QLabel 高层类新增 setStyleSheet 方法,支持深色主题与动态导航高亮
2026-09-02 09:26:14 +08:00
TermiNexus 2aff684cc4 feat(vqt6): 信号槽回调机制 + 高层包装类扩展
- 信号槽:vqt6_signal_register/trigger_slot 锁外回调,覆盖 QPushButton/QCheckBox/QRadioButton/QLineEdit/QComboBox/QSlider/QSpinBox/QProgressBar/QListWidget/QTabWidget/QAction/QTimer 共 13 个信号
- 高层包装:新增 QMainWindow/QDialog/QLineEdit/QCheckBox/QRadioButton/QComboBox/QSlider/QSpinBox/QProgressBar/QTextEdit/QPlainTextEdit/QListWidget/QTabWidget/QStackedWidget/QHBoxLayout/QVBoxLayout/QGridLayout/QMessageBox/QFileDialog/QTimer/QMenuBar/QMenu/QAction/QStatusBar/QColor/QFont 等 26 个类
- 便捷 FFI:vqt6_qlabel_set_text_utf8 / vqt6_qplaintextedit_append_utf8(Viper str 直传,避免 QString 手动管理)
- 修复:QApplication 构造需 int& 左值(dummy_argc);QCheckBox 用 checkStateChanged 避免弃用警告
2026-09-02 09:16:35 +08:00
TermiNexus 250be46051 fix(vqt6): Qt6 桥接层与包装类适配修复,Hello World 验证通过
- CMakeLists.txt: install 段按 BUILD_SHARED 条件包裹 static/shared 目标,避免引用未创建目标报错
- _bridge_gui.cpp: QColor::setRgba 改为单参 qRgba(Qt6 已删 4 参重载)
- _bridge_widgets.cpp: 移除已删除的 QDesktopWidget include;QApplication 空 argv 时提供虚拟 argv
- _bridge_network.cpp: LocalHostIPv4 改用 LocalHost;toInt(bool*) 修正;setRawHeader 空实现保符号
- __init__.vp: strndup 改直接使用 malloc 缓冲(Viper str=bytes=i8*),补 import stdlib
2026-09-02 08:53:23 +08:00
TermiNexus 630d2a60ec feat(fltk): 组织 Fl_Theme 主题库进 fltk——C++ 桥接导出 C API(fltk_theme.cpp)+ libfltk_theme.a + _cfl_theme.vp FFI + Fl.set_theme_dark/metro/set_border_radius 封装 2026-09-01 21:53:21 +08:00
TermiNexus a1989e3564 feat(fltk): Fl 全局补充风格切换 API(set_scheme 补 docstring/scheme_string/reload_scheme/set_background/set_background2/set_foreground);修复重复定义 set_scheme 导致的 LL 生成异常(;efine) 2026-09-01 21:31:11 +08:00
TermiNexus bddf6061e4 feat(fltk): 回调支持(set_callback/add_timeout/awake/菜单回调)+ 补齐控件类(Toggle/Round 按钮、Multiline/Secret/File 输入、Spinner/Clock/Nice_Slider、Pack/Tile/Flex、Menu_Button、Browser/Tree、Text_Editor/Terminal、File_Chooser/Help_Dialog、Input_Choice/Color_Chooser、PNG/JPEG/GIF 图片) 2026-09-01 21:23:18 +08:00
TermiNexus 983405dbf2 feat(fltk): 新增 FLTK 1.4 纯 extern FFI 绑定库(cfltk C API + gen_ffi 生成器 + Viper 包装类) 2026-09-01 21:07:59 +08:00
TermiNexus 61299a9b72 chore(fltk): 添加 .no_autobuild 标记,跳过 TPC 对完整 FLTK 源码树的自动编译 2026-09-01 20:16:35 +08:00
TermiNexus f76620199a feat(ast): lexer 支持 f-string 表达式块嵌套与同引号嵌套字符串(PEP 701) 2026-08-30 07:36:50 +08:00
TermiNexus 49445ea796 fix(ast): lexer 支持 \xNN 十六进制转义,修复 \x1b 被判为 CONST_STR 的问题 2026-08-30 07:36:28 +08:00
TermiNexus f087aa88e2 更新,可自举 2026-08-27 10:16:28 +08:00
TermiNexus d6d06b2f1a fix(asm): inb/inw/inl 显式 mov 到输出寄存器——加 CLOBBER_RAX 后 LLVM 不再把 value 绑 RAX,原写法读到 asm 前残留导致 waitReady err=8(status 0x50 被读成含 DF);按 mm.vp 模式 asm 内 mov {AsmOut}, eax 2026-08-27 01:16:53 +08:00
TermiNexus 4bcc66c571 fix(asm): inb/inw/inl 内联汇编补 CLOBBER_RAX——in al/ax/eax 修改 EAX 但未声明 clobber,调用方 EAX(循环计数/返回值/指针高32位)被静默破坏,导致 IDE 读取数据间歇性损坏(win 前2字节清零)、跨模块返回值丢失(fat32.read 返回64收到<64、spawn_elf 返回 pid 收到0、mm.malloc 返回值丢失) 2026-08-27 01:14:13 +08:00
TermiNexus 18642a9c23 debug(llvmlite): function_set_attrs 添加调用诊断,确认属性是否写入函数 2026-08-26 20:35:14 +08:00
TermiNexus 4ce6095359 修正 2026-08-22 09:25:46 +08:00
TermiNexus 5e768a9831 更新了库 2026-08-19 05:11:35 +08:00
TermiNexus 14ff9d109f 从 TransPyC 主项目中分离 VRTE 2026-08-17 11:01:35 +08:00