小编Ara*_*ane的帖子

Notepad ++使用regex为Styler配置定义的新关键字

如果我想在Styler配置中为"c"语言添加新关键字,并且我有自定义数据类型.例如:

uint_8 a;
uint_16 b;
uint_32 c;
uint_12bla bla;*
Run Code Online (Sandbox Code Playgroud)

有可能以某种方式添加关键字,而不是明确地添加每个关键字,作为正则表达式,(uint_\d +\w*)

大多数都是受益的,因为我有数以千计的内在函数从命名格式开始,我想强调所有这些内容.例如:

vector_intrinsic_add(a,b);
vector_intrinsic_mul(a,b);
vector_intrinsic_shit_right(a,b);
vector_intrinsic_shift_left(a,b);
vector_intrinsic_fill_zero(a);
vector_intrinsic_do_bla(a,b);
Run Code Online (Sandbox Code Playgroud)

regex syntax-highlighting scintilla notepad++ keyword

5
推荐指数
1
解决办法
6681
查看次数

带附加信息的Git日志装饰图

那么git log命令,

git log --graph --decorate --pretty=oneline --abbrev-commit
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

向我展示了真正的图形.请注意,上面的git命令将自动漂亮的颜色应用于"(refs/heads /,refs/tags /和refs/remotes /)"部分.

我希望我可以附加现有的格式:

*<abbrevated commit> (refs/heads/, refs/tags/ and refs/remotes/) <commit message>
Run Code Online (Sandbox Code Playgroud)

追加到底

<relative date> <Vorname nachname>
Run Code Online (Sandbox Code Playgroud)

终于看起来像了

*<abbrevated commit> (refs/heads/, refs/tags/ and refs/remotes/)* <commit message> <relative date> <Vorname nachname>
Run Code Online (Sandbox Code Playgroud)

我试过这个命令:

git log --graph\n--pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'\n--abbrev-commit --date=relative
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 这给了我相同的内容,但现在自动颜色不适用于%d参数.现在,如果我不用黄色强制,则应用"重置"颜色.

在简单我想如下(编辑图像显示演示) 在此输入图像描述 请提出你的建议.

git

3
推荐指数
1
解决办法
476
查看次数

用perl调用dos执行perl脚本有什么不同?

为什么这样的行为呢?

test2color.pl 包含:

#! perl -slw
use strict;
use Win32::Console::ANSI;
use Term::ANSIColor qw(:constants);

print BLACK, ON_WHITE, "black on white\n";
print WHITE, ON_BLACK, "white on black\n";
print GREEN, ON_CYAN, BLINK, "garish!\n";
print RESET;
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述

perl perl-module win32ole ansi-colors

1
推荐指数
1
解决办法
176
查看次数

使用__builtin_expect的ARM的静态分支预测不起作用!!?

我在Cortex-R4中运行的C代码中进行优化.首先,当我在条件检查中指出"__builtin_expect"时,我没有看到汇编代码输出有任何变化.似乎编译器生成了不必要的跳转.

我的C代码:

           bit ++; (Likely)

if(__builtin_expect(bit >= 32),0) 
{ 
  bit -=32; // unlikely code
  xxxxxx;   // unlikely code
  xxxxxx;   // unlikely code
  xxxxxx;   // unlikely code
} 

bit = bit*2 // something  (Likely)
return bit; 
Run Code Online (Sandbox Code Playgroud)

----生成的ASM代码--------(位=> r0)

                      ADD   r2,r2,#1 
                      CMP   r0,#0x20 
                      BCC  NoDecrement 
                      SUB   r0,r0,#0x20 
                      XXXXXXXXX 
                      XXXXXXXXX 
                      XXXXXXXXX 
NoDecrement LSL   r0,r0,#1 
                          BX  lr 
Run Code Online (Sandbox Code Playgroud)

----我期望的ASM代码--------

                          ADD   r2,r2,#1 
                          CMP   r0,#0x20 
                          BHE   Decrement 
JumbBack       LSL   r0,r0,#1 
                          BX  lr 
Decrement      SUB   r0,r0,#0x20 
                          XXXXXXXXX 
                          XXXXXXXXX 
                          XXXXXXXXX 
                          B JumbBack
Run Code Online (Sandbox Code Playgroud)

假设这段C代码在循环中运行,那么每次都必须跳转(因为if条件只传递一次).是否有任何其他编译器设置实际上,按预期生成代码.. ??

optimization performance arm branch-prediction

0
推荐指数
1
解决办法
1215
查看次数